﻿/*----------------------------------------------------------------------------------------- General
*/

:root {
    --color-blue-ocean: #91DFF7;
    --sph-color-active: #0FBAED;
    --color-blue-secondary: #E7F8FD;
    --color-dark-blue: #283370;
    --color-card-atlas: #FAFAFA;
    --color-grey-atlas: #676E76;
    --color-red: #F34141;
    --color-green: #04CDA3;
    --color-sleep: #F6F7F9;
    --color-sleep-dark: #676E76;
    --color-yellow: #E9A23B;
    --color-white: #FFFFFF;
    --color-purple: #B847C9;
    --color-orange: #FF8C5B;
    --color-dark-sapphire-blue: #00408B;
    --color-box-shadow-atlas: #DADADA;
    --color-badge-gray-card: #EAEBF1;
    --color-gray-disabled: #9CA1BD;
    --sph-color: #283370;
    --sph-color-active: #0FBAED;
    --sph-color-white: #ffffff;
    --sph-color-primary-50: #eaebf1;
    --sph-color-primary-100: #bcc0d3;
    --sph-color-primary-200: #9ca1bd;
    --sph-color-primary-300: #6f769f;
    --sph-color-primary-400: #535c8d;
    --sph-color-primary-500: var(--sph-color);
    --sph-color-primary-600: #242e66;
    --sph-color-primary-700: #1c2450;
    --sph-color-primary-800: #161c3e;
    --sph-color-primary-900: #11152f;
    --sph-color-secondary-50: #e7f8fd;
    --sph-color-secondary-100: #b5eaf9;
    --sph-color-secondary-200: #91dff7;
    --sph-color-secondary-300: #5ed1f3;
    --sph-color-secondary-400: #3fc8f1;
    --sph-color-secondary-500: var(--sph-color-active);
    --sph-color-secondary-600: #0ea9d8;
    --sph-color-secondary-700: #0b84a8;
    --sph-color-secondary-800: #086682;
    --sph-color-secondary-900: #064e64;
    --sph-color-gray-50: #FAFAFA;
    --sph-color-gray-100: #F6F7F9;
    --sph-color-gray-200: #E5E7EA;
    --sph-color-gray-300: #CED2D6;
    --sph-color-gray-400: #9EA5AD;
    --sph-color-gray-500: #676E76;
    --sph-color-gray-600: #596066;
    --sph-color-gray-700: #454C52;
    --sph-color-gray-800: #383F45;
    --sph-color-gray-900: #24292E;
    --sph-color-gray-1000: #1A1D1F;
    --sph-color-error-50: #feecec;
    --sph-color-error-100: #fbc4c4;
    --sph-color-error-200: #f9a8a8;
    --sph-color-error-300: #f78080;
    --sph-color-error-400: #f56767;
    --sph-color-error-500: #f34141;
    --sph-color-error-600: #dd3b3b;
    --sph-color-error-700: #ad2e2e;
    --sph-color-error-800: #862424;
    --sph-color-error-900: #661b1b;
    --sph-color-warning-50: #FFFCF5;
    --sph-color-warning-100: #FEFAF5;
    --sph-color-warning-200: #FBF2CB;
    --sph-color-warning-300: #FDE57E;
    --sph-color-warning-400: #FFD16A;
    --sph-color-warning-500: #FBBC55;
    --sph-color-warning-600: #E9A23B;
    --sph-color-warning-700: #C8811A;
    --sph-color-warning-800: #A35C00;
    --sph-color-warning-900: #8B4400;
    --sph-color-warning-1000: #78310B;
    --sph-color-success-50: #e6faf6;
    --sph-color-success-100: #b1f0e2;
    --sph-color-success-200: #8ce8d5;
    --sph-color-success-300: #57dec1;
    --sph-color-success-400: #36d7b5;
    --sph-color-success-500: #04cda3;
    --sph-color-success-600: #04bb94;
    --sph-color-success-700: #039274;
    --sph-color-success-800: #02715a;
    --sph-color-success-900: #025644;
    --sph-color-harvest-night-300: #6F769F;
    --sph-color-harvest-night-300: #6F769F;
}

/*
    ** BACKGROUND COLOR SPHERAG **
*/
.sph-bg-color-white {
    background-color: var(--sph-color-white) !important;
}
/* -- PRIMARY -- */
.sph-bg-color-primary-50 {
    background-color: var(--sph-color-primary-50) !important;
}

.sph-bg-color-primary-100 {
    background-color: var(--sph-color-primary-100) !important;
}

.sph-bg-color-primary-200 {
    background-color: var(--sph-color-primary-200) !important;
}

.sph-bg-color-primary-300 {
    background-color: var(--sph-color-primary-300) !important;
}

.sph-bg-color-primary-400 {
    background-color: var(--sph-color-primary-400) !important;
}

.sph-bg-color-primary-500 {
    background-color: var(--sph-color-primary-500) !important;
}

.sph-bg-color-primary-600 {
    background-color: var(--sph-color-primary-600) !important;
}

.sph-bg-color-primary-700 {
    background-color: var(--sph-color-primary-700) !important;
}

.sph-bg-color-primary-800 {
    background-color: var(--sph-color-primary-800) !important;
}

.sph-bg-color-primary-900 {
    background-color: var(--sph-color-primary-900) !important;
}

/* -- SECONDARY -- */
.sph-bg-color-secondary-50 {
    background-color: var(--sph-color-secondary-50) !important;
}

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

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

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

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

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

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

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

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

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

/* -- GRAY -- */
.sph-bg-color-gray-50 {
    background-color: var(--sph-color-gray-50) !important;
}

.sph-bg-color-gray-100 {
    background-color: var(--sph-color-gray-100) !important;
}

.sph-bg-color-gray-200 {
    background-color: var(--sph-color-gray-200) !important;
}

.sph-bg-color-gray-300 {
    background-color: var(--sph-color-gray-300) !important;
}

.sph-bg-color-gray-400 {
    background-color: var(--sph-color-gray-400) !important;
}

.sph-bg-color-gray-500 {
    background-color: var(--sph-color-gray-500) !important;
}

.sph-bg-color-gray-600 {
    background-color: var(--sph-color-gray-600) !important;
}

.sph-bg-color-gray-700 {
    background-color: var(--sph-color-gray-700) !important;
}

.sph-bg-color-gray-800 {
    background-color: var(--sph-color-gray-800) !important;
}

.sph-bg-color-gray-900 {
    background-color: var(--sph-color-gray-900) !important;
}

.sph-bg-color-gray-1000 {
    background-color: var(--sph-color-gray-1000) !important;
}
/* -- ERROR -- */
.sph-bg-color-error-50 {
    background-color: var(--sph-color-error-50) !important;
}

.sph-bg-color-error-100 {
    background-color: var(--sph-color-error-100) !important;
}

.sph-bg-color-error-200 {
    background-color: var(--sph-color-error-200) !important;
}

.sph-bg-color-error-300 {
    background-color: var(--sph-color-error-300) !important;
}

.sph-bg-color-error-400 {
    background-color: var(--sph-color-error-400) !important;
}

.sph-bg-color-error-500 {
    background-color: var(--sph-color-error-600) !important;
}

.sph-bg-color-error-600 {
    background-color: var(--sph-color-error-700) !important;
}

.sph-bg-color-error-700 {
    background-color: var(--sph-color-error-700) !important;
}

.sph-bg-color-error-800 {
    background-color: var(--sph-color-error-800) !important;
}

.sph-bg-color-error-900 {
    background-color: var(--sph-color-error-900) !important;
}
/* -- WARNING -- */
.sph-bg-color-warning-50 {
    background-color: var(--sph-color-warning-50) !important;
}

.sph-bg-color-warning-100 {
    background-color: var(--sph-color-warning-100) !important;
}

.sph-bg-color-warning-200 {
    background-color: var(--sph-color-warning-200) !important;
}

.sph-bg-color-warning-300 {
    background-color: var(--sph-color-warning-300) !important;
}

.sph-bg-color-warning-400 {
    background-color: var(--sph-color-warning-400) !important;
}

.sph-bg-color-warning-500 {
    background-color: var(--sph-color-warning-500) !important;
}

.sph-bg-color-warning-600 {
    background-color: var(--sph-color-warning-600) !important;
}

.sph-bg-color-warning-700 {
    background-color: var(--sph-color-warning-700) !important;
}

.sph-bg-color-warning-800 {
    background-color: var(--sph-color-warning-800) !important;
}

.sph-bg-color-warning-900 {
    background-color: var(--sph-color-warning-900) !important;
}

.sph-bg-color-warning-1000 {
    background-color: var(--sph-color-warning-1000) !important;
}
/* -- SUCCESS -- */
.sph-bg-color-success-50 {
    background-color: var(--sph-color-success-50) !important;
}

.sph-bg-color-success-100 {
    background-color: var(--sph-color-success-100) !important;
}

.sph-bg-color-success-200 {
    background-color: var(--sph-color-success-200) !important;
}

.sph-bg-color-success-300 {
    background-color: var(--sph-color-success-300) !important;
}

.sph-bg-color-success-400 {
    background-color: var(--sph-color-success-400) !important;
}

.sph-bg-color-success-500 {
    background-color: var(--sph-color-success-600) !important;
}

.sph-bg-color-success-600 {
    background-color: var(--sph-color-success-700) !important;
}

.sph-bg-color-success-700 {
    background-color: var(--sph-color-success-700) !important;
}

.sph-bg-color-success-800 {
    background-color: var(--sph-color-success-800) !important;
}

.sph-bg-color-success-900 {
    background-color: var(--sph-color-success-900) !important;
}

/*
    ** TEXT COLOR SPHERAG **
*/
.sph-text-color-white {
    color: var(--sph-color-white) !important;
}

/* -- PRIMARY -- */
.sph-text-color-primary-50 {
    color: var(--sph-color-primary-50) !important;
}

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

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

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

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

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

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

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

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

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

/* -- SECONDARY -- */
.sph-text-color-secondary-50 {
    color: var(--sph-color-secondary-50) !important;
}

.sph-text-color-secondary-100 {
    color: var(--sph-color-secondary-100) !important;
}

.sph-text-color-secondary-200 {
    color: var(--sph-color-secondary-200) !important;
}

.sph-text-color-secondary-300 {
    color: var(--sph-color-secondary-300) !important;
}

.sph-text-color-secondary-400 {
    color: var(--sph-color-secondary-400) !important;
}

.sph-text-color-secondary-500 {
    color: var(--sph-color-secondary-500) !important;
}

.sph-text-color-secondary-600 {
    color: var(--sph-color-secondary-600) !important;
}

.sph-text-color-secondary-700 {
    color: var(--sph-color-secondary-700) !important;
}

.sph-text-color-secondary-800 {
    color: var(--sph-color-secondary-800) !important;
}

.sph-text-color-secondary-900 {
    color: var(--sph-color-secondary-900) !important;
}

/* -- GRAY -- */
.sph-text-color-gray-50 {
    color: var(--sph-color-gray-50) !important;
}

.sph-text-color-gray-100 {
    color: var(--sph-color-gray-100) !important;
}

.sph-text-color-gray-200 {
    color: var(--sph-color-gray-200) !important;
}

.sph-text-color-gray-300 {
    color: var(--sph-color-gray-300) !important;
}

.sph-text-color-gray-400 {
    color: var(--sph-color-gray-400) !important;
}

.sph-text-color-gray-500 {
    color: var(--sph-color-gray-500) !important;
}

.sph-text-color-gray-600 {
    color: var(--sph-color-gray-600) !important;
}

.sph-text-color-gray-700 {
    color: var(--sph-color-gray-700) !important;
}

.sph-text-color-gray-800 {
    color: var(--sph-color-gray-800) !important;
}

.sph-text-color-gray-900 {
    color: var(--sph-color-gray-900) !important;
}

.sph-text-color-gray-1000 {
    color: var(--sph-color-gray-1000) !important;
}
/* -- ERROR -- */
.sph-text-color-error-50 {
    color: var(--sph-color-error-50) !important;
}

.sph-text-color-error-100 {
    color: var(--sph-color-error-100) !important;
}

.sph-text-color-error-200 {
    color: var(--sph-color-error-200) !important;
}

.sph-text-color-error-300 {
    color: var(--sph-color-error-300) !important;
}

.sph-text-color-error-400 {
    color: var(--sph-color-error-400) !important;
}

.sph-text-color-error-500 {
    color: var(--sph-color-error-600) !important;
}

.sph-text-color-error-600 {
    color: var(--sph-color-error-700) !important;
}

.sph-text-color-error-700 {
    color: var(--sph-color-error-700) !important;
}

.sph-text-color-error-800 {
    color: var(--sph-color-error-800) !important;
}

.sph-text-color-error-900 {
    color: var(--sph-color-error-900) !important;
}
/* -- WARNING -- */
.sph-text-color-warning-50 {
    color: var(--sph-color-warning-50) !important;
}

.sph-text-color-warning-100 {
    color: var(--sph-color-warning-100) !important;
}

.sph-text-color-warning-200 {
    color: var(--sph-color-warning-200) !important;
}

.sph-text-color-warning-300 {
    color: var(--sph-color-warning-300) !important;
}

.sph-text-color-warning-400 {
    color: var(--sph-color-warning-400) !important;
}

.sph-text-color-warning-500 {
    color: var(--sph-color-warning-500) !important;
}

.sph-text-color-warning-600 {
    color: var(--sph-color-warning-600) !important;
}

.sph-text-color-warning-700 {
    color: var(--sph-color-warning-700) !important;
}

.sph-text-color-warning-800 {
    color: var(--sph-color-warning-800) !important;
}

.sph-text-color-warning-900 {
    color: var(--sph-color-warning-900) !important;
}

.sph-text-color-warning-1000 {
    color: var(--sph-color-warning-1000) !important;
}
/* -- SUCCESS -- */
.sph-text-color-success-50 {
    color: var(--sph-color-success-50) !important;
}

.sph-text-color-success-100 {
    color: var(--sph-color-success-100) !important;
}

.sph-text-color-success-200 {
    color: var(--sph-color-success-200) !important;
}

.sph-text-color-success-300 {
    color: var(--sph-color-success-300) !important;
}

.sph-text-color-success-400 {
    color: var(--sph-color-success-400) !important;
}

.sph-text-color-success-500 {
    color: var(--sph-color-success-600) !important;
}

.sph-text-color-success-600 {
    color: var(--sph-color-success-700) !important;
}

.sph-text-color-success-700 {
    color: var(--sph-color-success-700) !important;
}

.sph-text-color-success-800 {
    color: var(--sph-color-success-800) !important;
}

.sph-text-color-success-900 {
    color: var(--sph-color-success-900) !important;
}

.border-red {
    border: 1px solid red !important;
}

.text-disabled {
    color: var(--color-gray-disabled)
}

.sph-cursor-auto {
    cursor: auto !important;
}

.sph-cursor-pointer {
    cursor: pointer !important;
}

.sph-cursor-not-allowed {
    cursor: not-allowed !important;
}

.sph-cursor-default {
    cursor: default !important;
}

.sph-hidden-toggle {
    display: none;
}

/* Clases de texto de Spherag */
.sph-font {
    font-family: Nunito !important;
}

.sph-color-error {
    color: var(--color-red) !important;
}

/* Font weight */
.sph-fw-100 {
    font-weight: 100 !important;
}

.sph-fw-200 {
    font-weight: 200 !important;
}

.sph-fw-300 {
    font-weight: 300 !important;
}

.sph-fw-400 {
    font-weight: 400 !important;
}

.sph-fw-500 {
    font-weight: 500 !important;
}

.sph-fw-600 {
    font-weight: 600 !important;
}

.sph-fw-700 {
    font-weight: 700 !important;
}

.sph-fw-800 {
    font-weight: 800 !important;
}

.sph-fw-900 {
    font-weight: 900 !important;
}

.sph-fw-1000 {
    font-weight: 1000 !important;
}
/* Font size */
.sph-fs-10 {
    font-size: 10px !important;
}

.sph-fs-12 {
    font-size: 12px !important;
}

.sph-fs-14 {
    font-size: 14px !important;
}

.sph-fs-16 {
    font-size: 16px !important;
}

.sph-fs-18 {
    font-size: 18px !important;
}

.sph-fs-20 {
    font-size: 20px !important;
}

.sph-fs-21 {
    font-size: 21px !important;
}

.sph-fs-22 {
    font-size: 22px !important;
}

.sph-fs-24 {
    font-size: 24px !important;
}

.sph-fs-26 {
    font-size: 26px !important;
}

.sph-fs-1-25rem {
    font-size: 1.25rem !important;
}
/* Line height */
.sph-lh-12 {
    line-height: 12px !important;
}

.sph-lh-14 {
    line-height: 14px !important;
}

.sph-lh-16 {
    line-height: 16px !important;
}

.sph-lh-18 {
    line-height: 18px !important;
}

.sph-lh-20 {
    line-height: 20px !important;
}

.sph-lh-21 {
    line-height: 21px !important;
}

.sph-lh-22 {
    line-height: 22px !important;
}

.sph-lh-24 {
    line-height: 24px !important;
}

.sph-lh-26 {
    line-height: 26px !important;
}

.sph-lh-26h {
    line-height: 26.5px !important;
}

.fw-bold-600 {
    font-weight: 600;
}

.fw-400 {
    font-weight: 400;
}

.border-bottom {
    border-bottom: 1px solid var(--Grey-200, #E5E7EA);
}

.border-grey-200 {
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
}

.border-secondary-500 {
    border-radius: 8px;
    border: 1px solid var(--sph-color-active);
}

.br-8-px {
    border-radius: 8px !important;
}

.br-13 {
    border-radius: 13px !important;
}

.br-8 {
    border-radius: 8px !important;
}

.br-5 {
    border-radius: 5px !important;
}

.br-4 {
    border-radius: 4px !important;
}

.sph-br-1 {
    border: 1px solid #E5E5E5 !important;
    border-radius: 8px !important;
}

.p-10 {
    padding: 10px !important;
}

.p-5-s {
    padding-left: 5px !important;
}

.px-20px {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.ps-16px {
    padding-left: 16px !important;
}

.pb-8px {
    padding-bottom: 8px !important;
}

.b-0 {
    bottom: 0 !important;
}

.w-60 {
    width: 60% !important;
}

.w-20 {
    width: 15% !important;
}

.h-7 {
    height: 7vh !important;
}

.pb-3-rem {
    padding-bottom: 3rem !important;
}

.py-3px {
    padding: 3px 0 !important;
}

/* ------------------------------------------------------------------------------------- Login background por tema
*/
body.theme-spherag {
    --login-bg-image: url('/Assets/images/webUI/login/sph-login-background-img.jpg');
}

body.theme-cayc {
    --login-bg-image: url('/Assets/images/webUI/login/cayc-login-background-img.jpg');
}

/* ------------------------------------------------------------------------------------- Overlay mobile select system/configuration
*/
.sph-mobile-select-overlay-open {
    background-color: #28337099;
}

.sph-mobile-select-overlay-closed {
    background-color: #fafbfe;
}

/* ------------------------------------------------------------------------------------- Menú lateral móvil y selector de fincas
*/
/* El tema lo crea con .fade, y .fade lleva opacity: 1 !important más abajo */
#custom-backdrop {
    background-color: #000;
    opacity: .5 !important;
}

@media (max-width: 767.98px) {
    html[data-sidenav-size=full]:not([data-layout=topnav]) .wrapper .leftside-menu {
        display: flex;
        flex-direction: column;
        width: 70vw;
        min-width: 70vw;
        margin-left: -70vw;
    }

    html[data-sidenav-size=full]:not([data-layout=topnav]).sidebar-enable .wrapper .leftside-menu {
        margin-left: 0;
    }

    .leftside-menu > .logo {
        flex: none;
    }

    .leftside-menu #leftside-menu-container {
        flex: 1 1 auto;
        min-height: 0;
        height: auto !important;
        overflow-x: hidden;
        overflow-y: auto;
    }
}

.out-arrow-icon {
    background-image: url('/Assets/images/webUI/shared/link/out-arrow.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: inline-block;
    width: 16px;
    height: 16px;
}

/* ------------------------------------------------------------------------------------- Mapa
*/
.active-map-type {
    border-radius: 0.5rem;
    background-color: var(--Primary-400, #535C8D) !important;
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.25);
    color: white !important;
    border: 0px !important;
}

.imgLegend {
    height: 150px;
    border-radius: 1%;
    box-shadow: 0 5px 10px rgba(0,0,0,0.3), 0 3px 3px rgba(0,0,0,0.3);
}

.blinking {
    animation: fade 1s infinite alternate;
}

.input-search-map {
    height: 50px;
    width: 50px;
    border-style: none;
    padding: 10px;
    font-size: 18px;
    outline: none;
    border-radius: 10px;
    transition: all .5s ease-in-out;
    background-color: #FFFFFF;
    padding-right: 40px;
    color: #fff;
}

    .input-search-map::placeholder {
        color: rgba(255,255,255,.5);
        font-size: 18px;
        color: #9EA5AD;
        font-weight: bolder;
        font-weight: 100;
    }

.btn-search {
    width: 50px;
    height: 50px;
    border-style: none;
    font-size: 20px;
    font-weight: bold;
    outline: none;
    cursor: pointer;
    color: #9EA5AD;
    border-radius: 10px;
    position: absolute;
    right: 0px;
    background-color: #F6F7F9;
    pointer-events: painted;
}

    .btn-search:focus ~ .input-search-map {
        width: 400px;
        border-radius: 10px;
        background-color: #F6F7F9;
        color: #9EA5AD;
        border-bottom: 1px solid rgba(255,255,255,.5);
        transition: all 500ms cubic-bezier(0, 0.110, 0.35, 2);
    }

.input-search-map:focus {
    width: 400px;
    border-radius: 10px;
    background-color: #F6F7F9;
    border-bottom: 1px solid rgba(255,255,255,.5);
    color: #9EA5AD;
    transition: all 500ms cubic-bezier(0, 0.110, 0.35, 2);
}

@media (max-width: 440px) {
    .btn-search:focus ~ .input-search-map,
    .input-search-map:focus {
        width: 100%;
    }
}

/*
 * Buscador de lugares de ViewMap y CrudMap (WEB-2227).
 *
 * Reglas aparte, NO retoque de .input-search-map: el mapa legacy (map.js:605-611)
 * sigue construyendo un <input class="input-search-map"> suelto y depende de las
 * reglas de arriba tal y como estan. Aqui el anfitrion del widget es un <div> al
 * que DevExtreme anade sus propias clases, asi que el plegado se aplica a el.
 *
 * El ancho desplegado se limita con cqw contra el propio mapa, no con @media
 * contra la ventana: el mapa vive en columnas de formulario y modales, y un mapa
 * de 215px en una pantalla ancha tapaba igualmente los controles del otro lado.
 */

/* El div del mapa como contenedor de consulta (lo marca search-box.js). */
.sph-map-search-query {
    container-type: inline-size;
}

/* Hueco que queda libre para los controles del lado contrario. Por defecto, el
   del CrudMap: zoom, pantalla completa y ubicacion en LEFT_TOP. */
.sph-map-search-box {
    --sph-map-search-reserved: 70px;
}

/* ViewMap: leyenda en TOP_LEFT y capas en TOP_RIGHT, en la misma fila. */
.sph-map-search-box--viewmap {
    --sph-map-search-reserved: 130px;
}

.sph-map-search {
    height: 50px;
    width: 50px;
    border-radius: 10px;
    background-color: #FFFFFF;
    transition: all .5s ease-in-out;
    overflow: hidden;
}

/*
 * La lupa tiene que pintarse POR ENCIMA del widget. DevExtreme da position
 * relative a su raiz, y entre dos elementos posicionados sin z-index gana el
 * ultimo del DOM, que es el host: sin esto la lupa desaparece detras y el
 * placeholder se ve asomando en el estado plegado.
 *
 * Va sobre el contenedor propio y no sobre .btn-search a secas porque esa clase
 * la comparte el buscador del mapa legacy, donde el input es estatico y este
 * problema no existe.
 */
.sph-map-search-box .btn-search {
    z-index: 1;
}

/* El foco cae en el input que crea DevExtreme, no en el anfitrion, de modo que
   el :focus del buscador antiguo no casa nunca: hace falta :focus-within.
   El primer width es el fallback para navegadores sin cqw, que descartan el
   segundo. La curva no rebota: la del buscador antiguo (y2 = 2) pasaba del
   ancho final durante la animacion. */
.btn-search:focus ~ .sph-map-search,
.sph-map-search:focus-within {
    width: 400px;
    width: min(400px, calc(100cqw - var(--sph-map-search-reserved)));
    border-radius: 10px;
    background-color: #F6F7F9;
    transition: all 500ms cubic-bezier(0.2, 0, 0, 1);
}

/* El editor trae su propio fondo, borde y subrayado: manda el anfitrion. */
.sph-map-search.dx-texteditor,
.sph-map-search .dx-texteditor-container {
    background-color: transparent;
    border-color: transparent;
    height: 100%;
}

    .sph-map-search.dx-texteditor::after {
        border-bottom: none;
    }

.sph-map-search .dx-texteditor-input {
    height: 50px;
    padding: 10px 40px 10px 10px;
    font-size: 18px;
    background-color: transparent;
    color: #9EA5AD;
}

.sph-map-search .dx-placeholder::before {
    padding: 10px 40px 10px 10px;
    font-size: 18px;
    color: #9EA5AD;
}

/*------------------------------------------------------------------------------------- Tarjetas (info modal)*/
.card-counter {
    box-shadow: 2px 2px 10px var(--color-box-shadow-atlas);
    border-radius: 5px;
    transition: .3s linear all;
    background-image: -webkit-linear-gradient(270deg, --sph-color, #303031);
    background-image: linear-gradient(180deg, --sph-color, #303031);
    color: #FFF;
}

    .card-counter:hover {
        box-shadow: 6px 6px 30px var(--color-box-shadow-atlas);
        transition: .1s linear all;
    }

    .card-counter i {
        font-size: 4em;
        opacity: 0.5;
    }

    .card-counter .card-count-info {
        font-size: 2em;
        font-weight: bold;
        opacity: 0.9;
    }

    .card-counter .card-count-name-info {
        font-size: 1em;
        opacity: 0.7;
    }

.card-program {
    border-radius: 8px !important;
    background: var(--Grey-50, #FAFAFA) !important;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
}

    .card-program:hover {
        background-color: var(--color-white) !important;
    }

.card-subprogram-fertilizer {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
}

.sph-subprogram-card-fertilizer {
    display: flex;
    padding: 4px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: 100px;
    background: var(--Warning-500, #FBBC55);
    width: 24px;
    height: 24px;
}

.card-hghlght {
    pointer-events: auto;
    transform: scale(1);
    transition: all 0.4s;
}

    .card-hghlght:hover {
        transform: scale(1.1);
        cursor: pointer;
    }

.card-atlas {
    background-color: var(--color-card-atlas) !important;
    border-bottom: 1px solid #CED2D6;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
}

.sph-flex-shrink-truncate {
    min-width: 0 !important;
    flex: 1 1 0% !important;
}

.card-atlas-setup-nh {
    background-color: #F6F7F9 !important;
    border-radius: 12px !important;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 0px 0px 1px rgba(103, 110, 118, 0.16), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
    border-radius: 13px !important;
}

.card-programs {
    border-radius: 8px !important;
    background: var(--Grey-50, #FAFAFA) !important;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
}

.card-atlas-setup-disabled,
.card-atlas-setup {
    background-color: #F6F7F9 !important;
    border-radius: 12px !important;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 0px 0px 1px rgba(103, 110, 118, 0.16), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
    border-radius: 13px !important;
}

.card-atlas-setup-disabled {
    cursor: auto !important;
    border: 1px solid var(--Grey-300, #CED2D6) !important;
    background: var(--Grey-100, #F6F7F9) !important;
    color: var(--Grey-300, #CED2D6) !important;
}

    .card-atlas-setup-disabled .text-color {
        color: var(--Grey-300, #CED2D6) !important;
    }

    .card-atlas-setup-disabled .badge-dark-blue {
        color: var(--Grey-100, #F6F7F9) !important;
        background: var(--Grey-300, #CED2D6) !important;
    }

.card-atlas-setup:hover {
    background-color: var(--color-white) !important;
}

.panel-configuration-guide {
    position: sticky;
    width: 100%;
    height: 92vh;
    background: #ABE5F6
}

.panel-configuration-guide {
    position: sticky;
    width: 100%;
    height: 92vh;
    background: #ABE5F6
}

.btnReload-tiny {
    width: 2rem !important;
    min-width: 2rem !important;
    height: 2rem !important;
    min-height: 2rem !important;
    display: flex;
    justify-content: center;
    align-items: center;
}

.side-nav-item.separator {
    display: flex;
    align-items: center;
    height: 25px;
    padding: 0 10px;
}

.side-nav-divider {
    width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    border-top: 1px solid #ccc;
}

/*CARD ATLAS*/
.card {
    background-color: var(--color-card-atlas) !important;
    margin-bottom: 0 !important;
}

/*--------------------------------------------------------------------------------------- Cards colors communication*/
.color-communication-green {
    color: #039274 !important;
    background-color: #E6FAF6 !important;
}

.color-communication-dark-blue {
    color: var(--sph-color) !important;
    background-color: #eef2f7 !important;
}

.color-communication-red {
    color: var(--color-red) !important;
    background-color: #FEECEC !important;
}

.color-communication-yellow {
    color: #FBBC55 !important;
    background-color: #FFF6EB !important;
}

.color-communication-gray {
    color: #676E76 !important;
    background-color: #FAFAFA !important;
}


.color-hydrant-red {
    color: var(--color-red) !important;
    background-color: #FEECEC !important;
}

.color-hydrant-yellow {
    color: var(--sph-color-warning-700) !important;
    background-color: var(--sph-color-warning-200) !important;
}

.color-hydrant-green {
    color: var(--sph-color-success-700) !important;
    background-color: var(--sph-color-success-50) !important;
}

.color-hydrant-sleep {
    color: var(--color-sleep-dark) !important;
    background-color: var(--color-sleep) !important;
}

@media (max-width: 991.98px) {
    .sph-hydrant-status-selector {
        width: auto !important;
    }
}

.color-hydrant-inexecution {
    color: var(--color-white, #FFF) !important;
    background-color: var(--sph-color-active) !important;
}

.color-hydrant-programmed {
    color: var(--color-white, #FFF) !important;
    background-color: var(--Harvest-Night-400, #535C8D) !important;
}

.color-communication-sleep {
    color: var(--color-sleep-dark) !important;
    background-color: var(--color-sleep) !important;
    border-radius: 8px 0px 0px 8px;
}

.color-communication-programmed {
    color: var(--color-white, #FFF) !important;
    background-color: var(--Harvest-Night-400, #535C8D) !important;
}

.color-communication-inexecution {
    color: var(--color-white, #FFF) !important;
    background-color: var(--sph-color-active) !important;
}

.switch-field {
    display: flex;
    overflow: hidden;
}

.input-search {
    display: flex;
    width: 374px;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    flex-shrink: 0;
}


.switch-field input {
    position: absolute !important;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    width: 1px;
    border: 0;
    overflow: hidden;
}

.switch-field label {
    background-color: #e4e4e4;
    color: rgba(0, 0, 0, 0.6);
    font-size: small;
    line-height: 1;
    text-align: center;
    padding: 6px 12px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
    transition: all 0.1s ease-in-out;
}

    .switch-field label:hover {
        cursor: pointer;
    }

.switch-field input:checked + label {
    background-color: var(--sph-color);
    color: #ffffff;
    box-shadow: none;
}

.switch-field label:first-of-type {
    border-radius: 2px 0 0 2px;
}

.switch-field label:last-of-type {
    border-radius: 0 2px 2px 0;
}

.color-green {
    color: var(--color-green);
}

.color-yellow {
    color: var(--color-yellow);
}

.color-red {
    color: var(--color-red)
}

.sph-bg-lightblue {
    background-color: #B5EAF9 !important;
}

/* ------------------------------------------------------------------------------------- Calculadora (tiempo-caudal)
*/
.coverage-excellent {
    background-color: #48ea8b !important;
    color: black
}

.coverage-good {
    background-color: #68b24a !important;
    color: var(--color-white)
}

.coverage-poor {
    background-color: #f3d310 !important;
    color: black
}

.coverage-marginal {
    background-color: #fa8b04 !important;
    color: var(--color-white)
}

.coverage-without {
    background-color: #fa5c7c !important;
    color: var(--color-white)
}

/* ------------------------------------------------------------------------------------- Highcharts 
*/
.highcharts-series-label {
    display: none;
}

/* ------------------------------------------------------------------------------------- SweetAlert 
*/
.sweetAlertConfirm {
    background-color: var(--sph-color) !important;
}

/* ------------------------------------------------------------------------------------- Stepper crear dispositivo 
*/
:root {
    --circle-size: clamp(1.5rem, 5vw, 3rem);
    --spacing: clamp(0.25rem, 2vw, 0.5rem);
}

.sp-circle {
    height: 40px;
    width: 40px;
    background-color: #596066 !important;
    border-radius: 50%;
    display: inline-block;
    color: var(--color-white);
    text-align: center;
    justify-content: center;
    align-items: center;
    vertical-align: middle;
    display: inline-flex;
}

.active .sp-circle {
    height: 40px;
    width: 40px;
    background-color: var(--sph-color) !important;
    border-radius: 50%;
    display: inline-block;
    color: #fff;
    text-align: center;
    justify-content: center;
    align-items: center;
    vertical-align: middle;
    display: inline-flex;
}

.imgValve {
    max-width: 50%;
}

.fade {
    opacity: 1 !important;
}

.sph-stepper {
    display: flex;
}

.sph-stepper-item {
    display: flex;
    flex-direction: column;
    flex: 1;
    text-align: center;
}

    .sph-stepper-item:before {
        --size: 3rem;
        content: "";
        display: block;
        width: var(--circle-size);
        height: var(--circle-size);
        border-radius: 50%;
        background-color: #596066;
        opacity: 0.5;
        margin: 0 auto 1rem;
    }

    .sph-stepper-item:not(:last-child):after {
        content: "";
        position: relative;
        top: calc(var(--circle-size) / 2);
        width: calc(100% - var(--circle-size) - calc(var(--spacing) * 2));
        left: calc(50% + calc(var(--circle-size) / 2 + var(--spacing)));
        height: 2px;
        background-color: #e0e0e0;
        order: -1;
    }

.sph-stepper-active-item {
    display: flex;
    flex-direction: column;
    flex: 1;
    text-align: center;
}

    .sph-stepper-active-item:before {
        --size: 3rem;
        content: "";
        display: block;
        width: var(--circle-size);
        height: var(--circle-size);
        border-radius: 50%;
        background-color: var(--sph-color);
        margin: 0 auto 1rem;
    }

    .sph-stepper-active-item:not(:last-child):after {
        content: "";
        position: relative;
        top: calc(var(--circle-size) / 2);
        width: calc(100% - var(--circle-size) - calc(var(--spacing) * 2));
        left: calc(50% + calc(var(--circle-size) / 2 + var(--spacing)));
        height: 2px;
        background-color: var(--sph-color);
        opacity: 0.5;
        order: -1;
    }

.sph-stepper-title {
    font-size: clamp(1rem, 4vw, 1rem);
    margin-bottom: 0.5rem;
}

/* ------------------------------------------------------------------------------------- Programa inteligente 
*/
.spm-condition .card {
    padding: 5px;
    border: 2px solid var(--sph-color);
}

/* ------------------------------------------------------------------------------------- Gráficos
*/
.highcharts-title {
    color: var(--sph-color);
}

/* ------------------------------------------------------------------------------------- 
*/
.custom-shape-divider-top-1598885657 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

    .custom-shape-divider-top-1598885657 svg {
        position: relative;
        display: block;
        width: calc(100% + 1.3px);
        height: 144px;
        transform: rotateY(180deg);
    }

    .custom-shape-divider-top-1598885657 .shape-fill {
        fill: var(--sph-color);
    }

.gmnoprint a, .gmnoprint span, .gm-style-cc {
    display: none;
}

.minSize {
    min-height: 550px;
}

/* ------------------------------------------------------------------------------------- Bloquear scroll en el body
*/
.stop-scrolling {
    height: 100%;
    overflow: hidden;
}

/*Covierte el menu lateral en cuadro con scroll*/
.myLateralMenu {
    overflow: auto;
    display: inline-block;
}

/*Oculta el texto en el hover cuando el menú está colapsado*/
html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav-link:hover span {
    display: none;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none; /* Firefox */
}

/* ------------------------------------------------------------------------------------- DataTables*/

/*table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td:first-child:before,
table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th:first-child:before {
    background-color: #596066;
    top: 14px;
    width: 16px;
    height: 16px;
    line-height: 16px;
    border: 0;
    font-weight: bold;
    box-shadow: none;
}

table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before, table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before {
    background-color: #596066;
}

table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > td.dtr-control::before, table.dataTable.dtr-inline.collapsed > tbody > tr[role="row"] > th.dtr-control::before {
    margin-top: 0px;
}*/

/* ------------------------------------------------------------------------------------- Flowmeters*/

/*---------------------------- Lista dropdowns-------------------------------------*/
.treeSubprogramsId {
    margin: 0;
    padding: 0;
}

.caret {
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    .caret::before {
        content: "\25B6";
        color: black;
        display: inline-block;
        margin-right: 6px;
    }

.caret-down::before {
    -ms-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.nested {
    display: none;
}

.active {
    display: block;
}

/* ------------------------------------------------------------------------------------- Stepper crear dispositivo 
*/
.btn-connector {
    width: 400px;
    height: 150px;
    overflow: hidden;
}

.border-1px-grey {
    border: 1px solid var(--Grey-200, #E5E7EA);
}

.btn-back {
    background: var(--Data-Ocean-200, var(--color-blue-ocean));
    border-radius: 12px;
    border: 1px solid var(--Grey-200, #E5E7EA);
}

.btn-close {
    background-image: url('../../images/spherag/icons/x-mark.svg') !important;
}

.btn-out-connector-output {
    background-image: url('../../images/spherag/devices/atlas2/conector1.svg');
    background-repeat: no-repeat;
    background-size: cover;
    width: 400px;
    height: 150px;
}

.btn-out-connector-input {
    background-image: url('../../images/spherag/devices/atlas2/conector2.svg');
    background-repeat: no-repeat;
    background-size: cover;
    width: 400px;
    height: 150px;
    background-position-x: center;
}

.btn-sensor {
    width: 250px;
    height: 160px;
}

.btn-back {
    border-radius: 12px;
    border: 1px solid var(--Grey-200, #E5E7EA);
    background: var(--Data-Ocean-200, var(--color-blue-ocean));
    width: 5%;
}

.btn-sensor-1 {
    background-image: url('../../images/spherag/devices/atlas2/Conector sensores.svg');
    background-repeat: no-repeat;
    background-size: cover;
    width: 250px;
    height: 150px;
    background-position-x: center;
}

.btn-sensor-2 {
    background-image: url('../../images/spherag/devices/atlas2/Conector sensores.svg');
    background-repeat: no-repeat;
    background-size: cover;
    width: 250px;
    height: 150px;
    background-position-x: center;
}

.btn-sensor-3 {
    background-image: url('../../images/spherag/devices/atlas2/Conector sensores.svg');
    background-repeat: no-repeat;
    background-size: cover;
    width: 250px;
    height: 150px;
    background-position-x: center;
}

/*Font Sizes*/
.fs-11 {
    font-size: 11px;
}

.fs-14 {
    font-size: 14px !important;
}

.fs-16 {
    font-size: 16px !important;
}

.fs-18 {
    font-size: 18px !important;
}

.fs-24 {
    font-size: 24px !important;
}


.fw-500 {
    font-weight: 500 !important;
}

.fs-body {
    color: var(--Harvest-Night-500, --sph-color);
    font-family: Nunito;
    font-size: 0.875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.125rem;
}
/*--------------------------------------------------------------------------------- DevExpress selectBox*/
.button-create {
    background-color: var(--color-blue-ocean) !important;
    color: var(--sph-color) !important;
    cursor: pointer;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
}

.button-create-disabled {
    background-color: var(--Grey-100, #F6F7F9) !important;
    color: var(--sph-color) !important;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
}

.button-create-sector {
    height: 48px;
    padding: 12px;
    gap: 8px;
    text-decoration: none;
}

.button-create-sh {
    background-color: var(--color-blue-ocean) !important;
    color: var(--sph-color) !important;
    cursor: pointer;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
}

.button-create-sh-disabled {
    border-radius: 8px;
    border: 1px solid var(--Grey-200, #E5E7EA);
    background: var(--Grey-100, #F6F7F9);
}

.button-create-sh-wb {
    background-color: var(--color-blue-ocean) !important;
    color: var(--sph-color) !important;
    cursor: pointer;
}

.button-create:hover {
    color: var(--color-white) !important;
    background-color: var(--sph-color) !important;
}

.button-create-sector .create-sector-icon {
    width: 24px;
    height: 24px;
    background-color: #283370;
    mask: var(--icon-url) no-repeat center / contain;
    -webkit-mask: var(--icon-url) no-repeat center / contain;
    transition: background-color 0.2s ease;
    margin-right: 8px;
}

.button-create-sector:hover .create-sector-icon {
    background-color: #ffffff;
}

.button-create-days {
    background-color: var(--color-blue-ocean) !important;
    color: var(--sph-color) !important;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    line-height: 18px;
}

.button-create-farm {
    min-width: 126px;
}

.language-flag-icon {
    width: 20px;
    height: 20px;
}

.button-reload {
    background-color: var(--color-blue-ocean) !important;
    color: var(--sph-color) !important;
    cursor: pointer;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
}

    .button-reload:hover {
        color: var(--color-white) !important;
        background-color: var(--sph-color) !important;
    }

.button-cancel {
    background-color: var(--color-card-atlas) !important;
    color: var(--sph-color) !important;
    cursor: pointer;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
}

.button-delete {
    background-color: rgba(243, 65, 65, 1) !important;
    color: var(--color-white) !important;
    cursor: pointer;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
}

/*Buttons DISABLED*/


/*FILTER DAYS*/
.select-day-hover-color {
    background-color: #91DFF7 !important;
}

.sph-div-border-left-2 {
    border-top-left-radius: 11px !important;
    border-bottom-left-radius: 11px !important;
}

.sph-div-border-right-2 {
    border-top-right-radius: 11px !important;
    border-bottom-right-radius: 11px !important;
}

.info-icon {
    color: var(--color-blue-ocean) !important;
}

.text-subtitle {
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
}

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

.text-color-500 {
    color: var(--sph-color-primary-500);
}

.text-color .svg-icon {
    color: var(--sph-color-active) !important;
}

.sph-tip-icon {
    flex-shrink: 0;
    width: 14px;
    height: 14px;
}

.text-color-ocean {
    color: var(--sph-color-active) !important;
}

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

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

.text-color-gray {
    color: var(--color-grey-atlas) !important;
}

.select-day-color {
    background-color: #f6f7f9;
}

.daterangepicker td.active {
    background-color: var(--sph-color) !important
}

.daterangepicker td.available:hover {
    background-color: var(--sph-color) !important
}

.daterangepicker {
    z-index: 99999 !important;
}

.hr-border-bottom {
    border-top: 1px solid var(--Grey-300, #CED2D6)
}

.border-bottom {
    border-bottom: 1px solid #E5E7EA !important;
}

.div-change-gray {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background: var(--Grey-100, #F6F7F9) !important;
}

.div-change-gray-wb {
    background: var(--Grey-100, #F6F7F9) !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
}

    .div-change-gray-wb:hover {
        background-color: #E5E7EA !important;
        color: var(--sph-color) !important;
    }

.div-change-gray-woh {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background: var(--Grey-100, #F6F7F9) !important;
}

.div-change-gray:hover {
    background-color: #E5E7EA !important;
    color: var(--sph-color) !important;
}

.imageBg {
    background-image: url('/Assets/images/spherag/devices/Atlas2/Imagen At2.svg');
    background-repeat: no-repeat;
    background-size: contain;
}

.card-menu-lateral {
    background-color: var(--color-white);
    border-bottom: 1px solid rgba(229, 231, 234, 1)
}

.card-menu-lateral-bottom {
    background-color: var(--color-white);
    border-bottom: 1px solid rgba(229, 231, 234, 1);
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px
}


/*------------------------------------------------------------------------ DevExpress CheckBox Custom*/
.dx-checkbox-icon {
    border: 1.5px solid #E5E7EA;
}

.dx-checkbox-icon {
    border: 1px solid #E5E7EA !important;
}

.dx-checkbox-checked .dx-checkbox-icon {
    color: var(--color-white);
    text-align: center;
    background-color: #0EA9D8;
    border: 1px solid #E5E7EA !important;
}

.dx-checkbox.dx-state-focused .dx-checkbox-icon {
    border: 1.5px solid #0EA9D8;
}
/*----------------- Show/Hide Password Style User*/
.input-group-text-custom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.45rem 0.9rem;
    font-size: .9rem;
    font-weight: 400;
    color: var(--ct-body-color);
    text-align: center;
    white-space: nowrap;
    border-top: 1px solid var(--ct-gray-300);
    border-right: 1px solid var(--ct-gray-300);
    border-bottom: 1px solid var(--ct-gray-300);
    border-radius: 0.25rem;
}

.form-control-custom {
    display: block;
    width: 100%;
    padding: 0.45rem 0.9rem;
    font-size: .9rem;
    font-weight: 400;
    line-height: 1.5;
    color: var(--ct-body-color);
    background-color: var(--ct-input-bg-custom);
    background-clip: padding-box;
    border-top: 1px solid var(--ct-border-color);
    border-bottom: 1px solid var(--ct-border-color);
    border-left: 1px solid var(--ct-border-color);
    border-right: 0px solid var(--ct-border-color);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0.25rem;
    -webkit-transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
    transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
}

.dx-list:not(.dx-list-select-decorator-enabled) .dx-list-item.dx-state-focused {
    background-color: #ddd !important;
}

.dx-state-active {
    background-color: #ddd !important;
}

.multiple-system-select-box .dx-texteditor.dx-editor-outlined {
    background-color: transparent !important;
    border: none !important;
}

.dx-texteditor.dx-editor-outlined {
    background: #f6f7f9 !important;
    border: 0.5px solid #dadada !important;
}

.dx-texteditor.dx-editor-outlined.border-red {
    border: 1px solid red !important;
}


/*Colors*/
.color-gray {
    color: #676e76 !important
}

/*Border-radius*/
.br-18 {
    border-radius: 18px !important;
}


.br-13 {
    border-radius: 13px !important;
}

.br-8 {
    border-radius: 8px !important;
}

.sph-toast-card {
    overflow: hidden;
}

.br-3 {
    border-radius: 3px !important;
}

.br-0 {
    border-radius: 0px !important
}

.br-10 {
    border-radius: 10px !important;
}

/*Height*/
.h-130 {
    height: 130px !important;
}

.max-h-3rem {
    max-height: 3rem !important;
}

.max-h-85vh {
    max-height: 85vh !important;
}
/*Width*/
.rem-3 {
    width: 3rem !important;
}

.rem-7 {
    width: 7rem !important;
}

.rem-10 {
    width: 10rem !important;
}

.rem-11 {
    width: 11rem !important;
}

.w-90 {
    width: 90% !important;
}

.w-10 {
    width: 10% !important;
}

.w-6 {
    width: 6% !important;
}

.w-5 {
    width: 5% !important;
}

.py-4px {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

.py-8px {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

.pt-4px {
    padding-top: 4px !important;
}

.pe-8px {
    padding-right: 8px !important;
}

.pb-4px {
    padding-bottom: 4px !important;
}

.px-10px {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

.py-10px {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

.ps-10px {
    padding-left: 10px !important;
}

.p-16px {
    padding: 16px;
}

.pe-10px {
    padding-right: 10px !important;
}

.my-30px {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
}

.my-24px {
    margin-top: 24px !important;
    margin-bottom: 24px !important;
}

.my-16px {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
}

.mx-16px {
    margin-left: 16px !important;
    margin-right: 16px !important;
}

.px-16px {
    padding-left: 16px !important;
    padding-right: 16px !important;
}

.px-8px {
    padding-left: 8px !important;
    padding-right: 8px !important;
}

.py-16px {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}

.pt-16px {
    padding-top: 16px !important;
}

.my-8px {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

.my-4px {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
}

.mx-26px {
    margin-right: 26px !important;
    margin-left: 26px !important;
}

.fw-400px {
    font-weight: 400;
}

.fw-600px {
    font-weight: 600;
}

.mx-2px {
    margin-left: 2px !important;
    margin-right: 2px !important;
}

.mx-4px {
    margin-left: 4px !important;
    margin-right: 4px !important;
}

.ms-4px {
    margin-left: 4px !important;
}

.ms-2px {
    margin-left: 2px !important;
}

.me-4px {
    margin-right: 4px !important;
}

.mx-6px {
    margin-left: 6px !important;
    margin-right: 6px !important;
}

.ms-6px {
    margin-left: 6px !important;
}

.me-6px {
    margin-right: 6px !important;
}

.mx-10-x-px {
    margin-left: 10vh !important;
    margin-right: 10vh !important;
}
/*Color azul en los inputs*/
.dx-texteditor-input {
    color: var(--sph-color) !important;
}

.dx-searchbox .dx-icon-search {
    color: var(--color-blue-ocean) !important
}

.border-top-bottom-left {
    border-top-left-radius: 13px !important;
    border-bottom-left-radius: 13px !important;
}

.dx-selectbox-invalid-sph {
    border-color: red !important;
    margin: 0;
    padding: 7px 9px 8px;
    background: #f6f7f9 !important;
    color: #333;
    font-size: 1em;
    border-radius: 4px;
    min-height: 34px;
}

/*Estilo para quitar bordes a SelectBox con imagen*/
.dx-dropdowneditor-input-wrapper .dx-texteditor.dx-editor-outlined {
    border: none !important;
}

.border-top-bottom-right {
    border-top-right-radius: 13px !important;
    border-bottom-right-radius: 13px !important;
}

/*------------------------------------------------------------ Farms*/

.bc-white {
    background-color: white !important;
}

.input-time {
    height: 48px;
    background-color: #F6F7F9 !important;
    color: #9EA5AD;
}

.sph-star {
    color: #283385;
}

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

.sph-selected-star {
    color: #FBBC55;
}

.sph-border-radius-modal {
    border-radius: 10px !important;
}

.bc-grey {
    background-color: #F6F7F9 !important;
}

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

.bc-grey-hover:hover {
    background-color: #f6f7f9 !important;
}

.accordion-button:not(.collapsed) {
    color: none !important;
}

.modal-show {
    z-index: 1400 !important;
}

.modal-hide {
    z-index: -1 !important;
}

/*------------------------------------------------------------------ LAYOUT COLOR*/

/*Muestra el logo en pantallas moviles*/
html[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom .logo-topbar {
    display: inline-block !important;
}

/*Con un modal abierto (ej. popup de datos de pago), el topbar queda inerte bajo el backdrop, igual que el resto del body*/
body.modal-open .navbar-custom {
    z-index: 0;
    pointer-events: none;
    transition: none;
}

.leftside-menu {
    background: #fff !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo {
    z-index: 1;
    background: #fff !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link {
    background: var(--sph-color) !important;
    color: #fff !important;
    -webkit-transition: none;
    transition: none;
}

/* SIDENAV + SIDENAV CONDENSED → ICONOS Y TEXTOS */

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link {
    width: auto !important;
    background: transparent !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-link span {
    display: none !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover svg rect,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover svg circle {
    stroke: var(--sph-color) !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-link.active svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active svg rect,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active svg circle {
    stroke: var(--sph-color-active) !important;
}

.side-nav .side-nav-item.menuitem-active .active,
.side-nav .side-nav-item.menuitem-active svg path,
.side-nav .side-nav-link.active svg path,
.side-nav .side-nav-item.menuitem-active svg rect,
.side-nav .side-nav-item.menuitem-active svg circle {
    stroke: var(--sph-color-active) !important;
    color: var(--sph-color-active) !important;
}

.side-nav .side-nav-item:hover svg path,
.side-nav .side-nav-item:hover svg rect,
.side-nav .side-nav-item:hover svg circle {
    stroke: var(--sph-color) !important;
    color: var(--sph-color) !important;
}

.side-nav .side-nav-item.menuitem-active .active .icon-fill-hover,
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg path,
.side-nav .side-nav-link.active .icon-fill-hover svg path,
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg rect,
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg circle {
    fill: var(--sph-color-active) !important;
}

.side-nav .side-nav-item:hover .icon-fill-hover svg path,
.side-nav .side-nav-item:hover .icon-fill-hover svg rect,
.side-nav .side-nav-item:hover .icon-fill-hover svg circle {
    fill: var(--sph-color) !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover .icon-fill-hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover .icon-fill-hover svg rect,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover .icon-fill-hover svg circle {
    fill: var(--sph-color) !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-link.active .icon-fill-hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg rect,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg circle {
    fill: var(--sph-color-active) !important;
}

.side-nav .icon-fill-hover svg,
.side-nav .icon-fill-hover svg * {
    stroke: none !important;
}

.side-nav .side-nav-item:hover .icon-fill-hover svg,
.side-nav .side-nav-item:hover .icon-fill-hover svg * {
    stroke: none !important;
}

.side-nav .side-nav-item.menuitem-active .active .icon-fill-hover,
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg path,
.side-nav .side-nav-link.active .icon-fill-hover svg path,
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg rect,
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg circle {
    stroke: none !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover .icon-fill-hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover .icon-fill-hover svg rect,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item:hover .icon-fill-hover svg circle {
    stroke: none !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-link.active .icon-fill-hover svg path,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg rect,
html[data-sidenav-size=condensed]:not([data-layout=topnav])
.side-nav .side-nav-item.menuitem-active .icon-fill-hover svg circle {
    stroke: none !important;
}

.side-nav .side-nav-item:hover span {
    color: var(--sph-color) !important;
    font-weight: 500;
}

.sector-detail-tabs .nav-link.active,
.sector-detail-tabs .nav-item.show .nav-link {
    color: var(--sph-color-secondary-500) !important;
    border-bottom-color: var(--sph-color-secondary-500) !important;
}

html[data-sidenav-size=condensed]:not([data-layout=topnav]) .side-nav .side-nav-link {
    font-size: 0 !important;
}

/*---CCRR*/
.btn-primary {
    color: #fff !important;
    background-color: var(--sph-color) !important;
    border-color: var(--sph-color);
}

.side-nav .side-nav-link:hover {
    color: var(--sph-color) !important;
    text-decoration: none;
}

.side-nav .side-nav-link {
    color: #596066 !important;
}

.side-nav .menuitem-active .menuitem-active .active {
    color: var(--sph-color-active) !important;
    font-weight: 500;
}

.pre {
    color: var(--sph-color);
    font-size: small;
    margin-bottom: 0;
}

.width-400 {
    width: 400px;
}

.side-nav-second-level li a {
    background-color: var(--color-white);
}

.side-nav .side-nav-link {
    color: #596066 !important;
}

.side-nav-link:hover {
    color: var(--sph-color) !important;
}

/*--------------------------------------------------------------- Phone*/
.iti {
    position: relative;
    display: inline-block;
    width: 100%;
}
/*----------------------------------------------------------------MAP Styles*/

/*Estilo para quitar bordes a SelectBox con imagen*/
.dx-dropdowneditor-input-wrapper .dx-texteditor.dx-editor-outlined {
    border: none !important;
}

.p-3rem {
    padding: 3rem !important;
}

.border-custom {
    border-color: var(--sph-color) !important;
}

.size-atlas-modal {
    max-height: none;
}

.sph-card-farms-list {
    min-height: 700px;
    border: 0;
    border-radius: 4px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12), 0 2px 5px rgba(103, 110, 118, 0.08);
}

.sph-system-metric-modal-scroll {
    max-height: 65vh;
}

.modal-title {
    font-family: Nunito;
    font-weight: 500;
    font-size: 20px;
    color: var(--color-acciona-grey-700);
}

.search-box {
    width: fit-content;
    height: fit-content;
    position: relative;
}

.buttonCreateAtlas:hover .pathToChange {
    stroke: white !important;
}

.min-160-height {
    min-height: 130px;
}

input[type="time"]::-webkit-calendar-picker-indicator {
    background: none;
    display: none;
}
/*Badges*/
.badge-red {
    color: var(--color-red) !important;
    background-color: #FEECEC !important;
    border-radius: 12px !important;
    font-weight: bolder !important;
    padding: 2px !important;
}

.sph-badge-red-bordered,
.sph-badge-bordered {
    border: 1px solid currentColor;
}

.pending-notifications-wrapper {
    position: absolute;
    top: 15px;
    right: 0px;
    border: 1px white solid;
    border-radius: 50%;
    display: inline-flex;
    scale: 0.8;
}

.badge-red-pending-notifications {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #F34141;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    line-height: 1;
    box-sizing: border-box;
    padding: 12px;
}

.plus-notification-icon {
    font-size: 7px;
}

.badge-green {
    color: #039274 !important;
    background-color: #E6FAF6 !important;
    border-radius: 12px !important;
    font-weight: bolder !important;
    padding: 2px !important;
}

.badge-gray {
    color: var(--sph-color) !important;
    background-color: var(--color-badge-gray-card) !important;
    border-radius: 12px !important;
    font-weight: bolder !important;
    padding: 2px !important;
}

.badge-gray-wh-fw {
    color: var(--sph-color) !important;
    background-color: var(--color-badge-gray-card) !important;
    border-radius: 12px !important;
    padding: 2px !important;
}

.badge-gray-rem {
    color: var(--sph-color) !important;
    background-color: var(--color-badge-gray-card) !important;
    border-radius: 12px !important;
    font-weight: bolder !important;
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
    padding-top: 0.30rem !important;
    padding-bottom: 0.30rem !important;
}

.badge-gray-alert-outputs {
    border-radius: 8px;
    background: var(--Primary-50, #EAEBF1);
    height: 24px;
    padding: 0 10px;
    align-items: flex-start;
}

.badge-dark-blue {
    border-radius: 8px;
    background-color: #535C8D;
}

.badge-dark-blue-color {
    background-color: #535C8D !important;
}

.associate-elements-warning-icon {
    color: var(--sph-color-warning-700);
    margin-right: 8px;
}

.associate-elements-master-badge {
    color: var(--sph-color) !important;
    background-color: var(--color-badge-gray-card) !important;
    font-family: Nunito !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700;
    padding: 6px 10px;
    flex: 0 0 auto;
    margin-left: 10px;
    white-space: nowrap;
}

#edit-atlas-elements-selection-grid .dx-command-expand {
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    padding: 0 !important;
    border: none !important;
    overflow: hidden;
}

#edit-atlas-elements-selection-grid .dx-master-detail-row > td {
    padding: 0 !important;
}

.edit-elements-detail-row {
    display: flex;
    align-items: center;
    height: 36px;
    padding: 0 8px 0 50px;
}

.edit-elements-detail-row + .edit-elements-detail-row {
    border-top: 1px solid var(--sph-color-gray-100);
}

.edit-elements-detail-checkbox {
    flex: 0 0 auto;
    margin-right: 12px;
}

.edit-elements-detail-type {
    margin-left: auto;
}

.badge-gray-elements-bc {
    border-radius: 8px;
    background-color: var(--color-badge-gray-card);
}

.div-badge-gray-color {
    background-color: var(--color-badge-gray-card);
}

.badge-yellow {
    color: #C8811A !important;
    background-color: #FBF2CB !important;
    border-radius: 12px !important;
    font-weight: bolder !important;
    padding: 2px !important;
}

.switchOutput {
    position: relative;
    appearance: none;
    width: 40px;
    height: 20px;
    border-radius: 10px;
    background-color: #ccc;
    cursor: pointer;
    outline: none;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    padding: 0 10px;
}

    .switchOutput::before {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background-color: #fff;
        -webkit-transition: 0.2s;
        transition: 0.2s;
    }

    .switchOutput:checked {
        background-color: #4caf50;
    }

        .switchOutput:checked::after {
            content: attr(data-on-label);
            position: absolute;
            top: 50%;
            left: 30%;
            transform: translate(-50%, -50%);
            color: #fff;
            font-size: 12px;
            font-weight: bold;
        }

.sw-open-closed {
    position: relative;
    appearance: none;
    width: 40px;
    height: 20px;
    border-radius: 10px;
    background-color: #ccc;
    cursor: pointer;
    outline: none;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    padding: 0 10px;
    min-width: 3.7rem;
}

    .sw-open-closed::before {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background-color: #fff;
        -webkit-transition: 0.2s;
        transition: 0.2s;
    }

    .sw-open-closed::after {
        content: attr(data-off);
        position: absolute;
        top: 55%;
        left: 68%;
        transform: translate(-50%, -50%);
        color: var(--color-grey-atlas);
        font-size: 10px;
    }

    .sw-open-closed:checked::after {
        content: attr(data-on);
        position: absolute;
        top: 55%;
        left: 30%;
        transform: translate(-50%, -50%);
        color: #fff;
        font-size: 10px;
    }

.sw-open-closed-status {
    position: relative;
    appearance: none;
    width: 40px;
    height: 20px;
    border-radius: 10px;
    background-color: #ccc;
    cursor: pointer;
    outline: none;
    -webkit-transition: 0.2s;
    transition: 0.2s;
    padding: 0 10px;
    min-width: 3.7rem;
}

    .sw-open-closed-status::before {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 16px;
        height: 16px;
        border-radius: 50%;
        background-color: #fff;
        -webkit-transition: 0.2s;
        transition: 0.2s;
    }

    .sw-open-closed-status::after {
        content: attr(data-off);
        position: absolute;
        top: 55%;
        left: 68%;
        transform: translate(-50%, -50%);
        color: var(--color-grey-atlas);
        font-size: 10px;
    }

    .sw-open-closed-status:checked::after {
        content: attr(data-on);
        position: absolute;
        top: 55%;
        left: 30%;
        transform: translate(-50%, -50%);
        color: var(--color-white);
        font-size: 10px;
    }

.atlas-element-switches .sph-switch-loading-target {
    width: 60px;
    height: 26px;
}

.atlas-element-switches {
    gap: 3px;
}

.atlas-element-switches > * {
    flex: 0 0 auto;
}

.atlas-element-switches .form-check,
.atlas-element-switches .form-switch {
    padding-left: 0;
    margin-bottom: 0;
}

.atlas-element-switches div[id$='-container'],
.atlas-element-switches .outputStatusBadge {
    margin-left: 0 !important;
}

/* In Auto mode the open/close switch is hidden but its wrapper stays as an empty
   flex item, whose margin and gap push the mode switch out of line with the
   status badge when the row wraps. */
.atlas-element-switches > div:has(> div[id$='-container'].d-none) {
    display: none;
}

.atlas-element-switches .outputStatusBadge {
    height: 26px;
    padding: 0.2rem 0.45rem;
    margin-top: 0 !important;
    font-size: 0.85rem;
}

/* Right-aligned on wide cards (e.g. Atlas2's connector cards), centered on
   narrow ones (e.g. Atlas X's 4-per-row grid) — driven by the card's own
   rendered width via a container query, regardless of page/template or
   Auto vs Manual state. Replaces per-page/id overrides. */
.btn-connector,
.atlas-element-stat-card {
    container-type: inline-size;
}

@container (max-width: 379.98px) {
    .atlas-element-switches {
        justify-content: center !important;
    }
}

@container (min-width: 380px) {
    .atlas-element-switches {
        justify-content: flex-end !important;
    }
}

/* Atlas detail connector grids: 1, 2 or 4 cards per row driven by the grid's own
   width (sidebar and side panels included), so a card never gets narrower than
   ~240px, where the switches wrap and values get clipped. */
.atlas-connector-grid {
    container-type: inline-size;
}

.row.atlas-connector-grid > * {
    flex: 0 0 auto;
    width: 100%;
}

@container (min-width: 530px) {
    .row.atlas-connector-grid > * {
        width: 50%;
    }
}

@container (min-width: 1060px) {
    .row.atlas-connector-grid > * {
        width: 25%;
    }
}

.atlas-element-switches .sph-switch-on-off {
    width: 60px !important;
    height: 26px !important;
    min-width: 60px;
    border-radius: 10px;
    padding: 0 10px;
    --sph-switch-label-knob-space: 21px;
    --sph-switch-label-edge-space: 0px;
}

.atlas-element-switches .sph-switch-on-off::before {
    width: 19px;
    height: 19px;
}

.atlas-element-switches .sph-switch-on-off::after {
    top: 55%;
    font-size: 10px;
    font-weight: 400;
}

.atlas-element-switches .sph-switch-on-off:checked::after {
    color: var(--color-white);
}

.atlas-element-switches .sph-switch-loading-target.sph-switch-loading::after {
    width: 17px;
    height: 17px;
}

.atlas-element-switches .sph-switch-loading-target.sph-switch-loading.sph-switch-loading-checked::after {
    right: 4px;
    left: auto;
}

.atlas-element-switches .sph-switch-loading-target.sph-switch-loading.sph-switch-loading-unchecked::after {
    left: 4px;
    right: auto;
}

input[data-switch=primary]:checked + label {
    background-color: #0EA9D8 !important;
}

.dx-checkbox-checked .dx-checkbox-icon {
    color: var(--color-white) !important;
}

/*Height layout*/
html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .content-page {
    min-height: 0 !important;
    min-height: -3vh !important;
}

.content-page {
    min-height: -3vh !important;
    position: relative;
}

.btn-days:disabled {
    color: #CED2D6 !important;
    pointer-events: none !important;
    background-color: red !important;
    border-color: var(--ct-btn-disabled-border-color) !important;
    opacity: revert !important;
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background: var(--Grey-100, #F6F7F9) !important;
    line-height: 18px
}

input[type=range] {
    accent-color: var(--sph-color);
}

input[type="range" i] {
    appearance: auto;
    cursor: default;
    color: red !important;
    padding: initial;
    border: initial;
    margin: 2px;
}

.slider {
    -webkit-appearance: none;
    width: 100%;
    height: 15px;
    border-radius: 5px;
    background: #d3d3d3;
    outline: none;
    opacity: 0.7;
    -webkit-transition: .2s;
    transition: opacity .2s;
}

    .slider:hover {
        opacity: 1;
    }

    .slider::-webkit-slider-thumb {
        -webkit-appearance: none;
        appearance: none;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: #04AA6D;
        cursor: pointer;
    }

    .slider::-moz-range-thumb {
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background: #04AA6D;
        cursor: pointer;
    }

input[data-switch] + label {
    width: 69px !important;
}

input[data-switch]:checked + label:after {
    left: 47px !important;
}

.info-card {
    border: 0.4px solid #E5E7EA;
}

.progressbarFarm {
    --size: 12rem;
    --fg: var(--sph-color);
    --bg: var(--color-blue-ocean);
    --pgPercentage: 33.3;
    animation: growProgressBar 3s 1 forwards;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: radial-gradient(closest-side, --sph-color-active 80%, transparent 0 99.9%, white 0), conic-gradient(var(--fg) calc(var(--pgPercentage) * 1%), var(--bg) 0);
    font-size: calc(var(--size) / 5);
    color: var(--fg);
}

    .progressbarFarm::before {
        counter-reset: percentage var(--value);
        content: '1/3';
        font-size: 15px;
        color: var(--color-white);
        font-weight: bolder;
    }

/*Porgress bar*/
.progress {
    background-color: #E7F8FD !important;
    border-radius: 20px !important;
    height: 1vh !important;
}

.progress-bar {
    background-color: var(--color-blue-ocean) !important;
    border-radius: 20px;
}

/*Accordion*/
.accordion-button:not(.collapsed) {
    color: var(--ct-accordion-active-color);
    background-color: var(--color-white) !important;
    -webkit-box-shadow: inset 0 calc(-1* var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color);
    box-shadow: inset 0 calc(-1* var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color);
}

.accordion-button::after {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: var(--ct-accordion-btn-icon-width);
    height: var(--ct-accordion-btn-icon-width);
    margin-left: auto;
    content: "";
    background-image: url('../../images/spherag/icons/chevron-down.svg') !important;
    background-repeat: no-repeat;
    background-size: 13px;
    -webkit-transition: var(--ct-accordion-btn-icon-transition);
    transition: var(--ct-accordion-btn-icon-transition);
    color: red;
}

.circle-output-disabled {
    background: var(--Grey-300, #CED2D6) !important;
}

.circle-output-1 {
    background: var(--color-red);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-2 {
    background: var(--color-green);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-3 {
    background: var(--color-white);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-4 {
    background: #FBBC55;
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-5 {
    background: var(--color-red);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-6 {
    background: var(--color-green);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-7 {
    background: var(--color-white);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-output-8 {
    background: #FBBC55;
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-1 {
    background: var(--color-red);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-2 {
    background: var(--color-green);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-3 {
    background: var(--color-purple);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-4 {
    background: var(--sph-color-warning-400);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-5 {
    background: var(--color-dark-sapphire-blue);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-6 {
    background: var(--color-orange);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-7 {
    background: var(--sph-color-gray-400);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-connector-8 {
    background: var(--sph-color-warning-800);
    border-radius: 50%;
    width: 15px;
    height: 15px;
}

.circle-ocean {
    background: var(--sph-color-active);
    border-radius: 50%;
}

.circle-gray {
    background: var(--sph-color-gray-400);
    border-radius: 50%;
}

.circle-yellow {
    background: var(--color-yellow);
    border-radius: 50%;
}

.circle-size {
    max-width: 2.75rem;
    max-height: 1.25rem;
    min-width: 1.5rem;
    min-height: 1.5rem
}

.circle-green-8-px {
    background: var(--color-green);
    border-radius: 50%;
    width: 8px;
    height: 8px;
}

.border-bottom-and-right-card {
    border-bottom: 0.2px solid #0000001F;
    border-right: 0.1px solid var(--color-grey-atlas);
}

.tooltip-inner {
    background-color: var(--color-white) !important;
    border: 0.1px solid var(--color-grey-atlas) !important;
    color: var(--sph-color) !important;
    padding: 8px 12px 8px 12px !important;
    gap: 4px !important;
    border-radius: 8px !important;
}

.icon-div {
    background-color: var(--grey-100, #F6F7F9);
    border-radius: 8px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0px;
}

.div-layout {
    background-color: #E5E7EA;
    border-bottom-left-radius: 16px
}

.color-bg-div-layout {
    background-color: #E5E7EA
}

.dx-placeholder {
    color: var(--ct-gray-500) !important;
}

.text-warning-spherag {
    color: var(--color-text-warning) !important;
    font-family: Nunito;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

.div-warning {
    color: #FBBC55 !important;
    border-radius: 8px !important;
    border: 1px solid var(--Warning-500, #FBBC55) !important;
    background: var(--Warning-200, #FBF2CB) !important;
}

.alert-warning {
    --ct-alert-color: #A35C00 !important;
}

.breadcrumb-item + .breadcrumb-item::before {
    padding-right: 4px !important;
}


.first-tab-style {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 8px !important;
    border-top-left-radius: 8px !important;
}

.last-tab-style {
    border-top-left-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 8px !important;
    border-top-right-radius: 8px !important;
}

.active > .page-link, .page-link.active {
    background-color: var(--sph-color) !important;
}

/*Checkbox Auto / Manual*/

input[data-switch=info]:checked + label {
    background-color: var(--Data-Ocean-600, #0EA9D8) !important;
    height: 40px;
}

input[data-switch]:checked + label:before {
    color: #fff;
    content: attr(data-on-label);
    right: auto;
    left: 4px;
    top: 4px;
}

input[data-switch]:checked + label:after {
    left: 41px !important;
}

input[data-switch=info]:checked + label {
    height: 34px;
}

input[data-switch=info] + label {
    height: 34px !important;
}

input[data-switch]:checked + label:after {
    left: 43px !important;
    width: 22px !important;
    height: 22px !important;
    top: 6px !important;
}

input[data-switch] + label:before {
    color: var(--ct-gray-900);
    content: attr(data-off-label);
    display: block;
    font-family: inherit;
    font-weight: 600;
    font-size: 0.70rem;
    line-height: 24px;
    position: absolute;
    right: 3px;
    margin: 0 .21667rem;
    text-align: center;
    min-width: 1.66667rem;
    overflow: hidden;
    -webkit-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
    top: 4px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

input[data-switch] + label:after {
    content: "";
    position: absolute;
    left: 4px;
    background-color: var(--ct-gray-500);
    -webkit-box-shadow: none;
    box-shadow: none;
    border-radius: 2rem;
    height: 22px !important;
    width: 22px !important;
    top: 4px !important;
    -webkit-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
    top: 5px;
}

input[data-switch].valve-status + label,
input[data-switch].valve-status:checked + label {
    width: 80px !important;
}

    input[data-switch].valve-status + label:before {
        left: 30px !important;
    }

    input[data-switch].valve-status:checked + label:before {
        left: 10px !important;
    }

    input[data-switch].valve-status + label:after {
        left: 4px !important;
    }

    input[data-switch].valve-status:checked + label:after {
        left: 55px !important;
    }

.open-closed-badge-auto-status {
    display: flex;
    height: 28px;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
}

.divAlertWarning {
    border-radius: 0.5rem;
    border: 1px solid var(--Warning-500, #FBBC55);
    background: var(--Warning-200, #FBF2CB);
    padding: 16px;
}


    .divAlertWarning > div > span {
        color: var(--Warning-800, #A35C00);
        font-family: Nunito;
        font-size: 0.875rem;
        font-style: normal;
        font-weight: 500;
        line-height: 1.125rem;
    }

    .divAlertWarning > div > i {
        color: var(--Warning-800, #A35C00);
        width: 1rem;
        height: 1rem;
    }

.text-color-warning {
    color: var(--Warning-800, #A35C00);
}

.card-warning {
    border-radius: 8px !important;
    border: 1px solid var(--Warning-500, #FBBC55) !important;
    background: var(--Warning-200, #FBF2CB) !important;
}

table.dx-datagrid-table td[role*="gridcell"] {
    height: 44px;
    padding: 0px 16px;
    vertical-align: middle !important;
    color: var(--grey-600, #596066);
    font-family: Nunito;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    border-left: none !important;
    border-right: none !important;
    border-bottom: none !important;
    border-top: none !important;
}

.apexcharts-tooltip {
    width: auto !important;
    border-radius: 1rem !important;
    color: none !important;
    background-color: white !important;
    -webkit-box-shadow: var(--ct-box-shadow) !important;
    box-shadow: none !important;
    border: 1px solid red !important;
    height: auto !important;
}

    .apexcharts-tooltip * {
        font-family: var(--ct-font-sans-serif) !important;
        color: transparent !important;
        border: none !important
    }

.wrapper {
    flex-direction: column;
    min-height: 100vh;
}

.content-page {
    flex-grow: 1;
}


.bg-white-container {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-color: white !important;
}

.atlas-p-detail-elements-container {
    display: flex;
    flex-direction: column;
    background-color: white !important;
}

#emtpyViewContainer {
    display: flex;
    flex-direction: column;
}


.sph-empty-view-card {
    /* Clamp para que la altura mínima sea 450px, la altura máxima sea 750px y la altura establecida sea el 80% de la altura de la ventana */
    min-height: clamp(450px, 80vh, 750px);
}

/* Empty search inside a container that is already a white card: it must not draw a second card.
   (EmptyView does it by itself with IsEmbedded.) */
.sph-embedded-empty .sph-empty-search-state {
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Below xl the illustration column is hidden, so the empty view stacks: drop its spacer column and the extra
   paddings, and keep a moderate minimum height so the text sits in the middle of the white area
   (the card body already centers its content vertically). */
@media (max-width: 1199.98px) {
    /* Embedded, the empty view has no .card (the flex column that stretches its body), so it is set here. */
    .sph-embedded-empty .sph-empty-view-card {
        display: flex;
        flex-direction: column;
        min-height: clamp(360px, 55vh, 520px);
    }

    .sph-embedded-empty .sph-empty-view-card > .card-body {
        padding: 0 12px 24px;
    }

    .sph-embedded-empty .sph-empty-view-card .row > .col-1 {
        display: none;
    }

    .sph-embedded-empty .sph-empty-view-card .row > .p-3 {
        padding: 0 !important;
    }

    .sph-embedded-empty .sph-empty-view-card .px-4 {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }
}

@media (min-width: 1600px) {
    #atlasTableEmptyView .sph-empty-view-card .row > .p-3 {
        max-width: 460px;
    }
}

.sph-empty-view-illustration {
    object-fit: contain;
}

.sph-empty-view-icon-box {
    aspect-ratio: 1 / 1;
    width: 44px;
    height: 44px;
}

.apexcharts-tooltip * {
    font-family: var(--ct-font-sans-serif) !important;
    color: transparent !important;
    border: none !important
}

.dropdownButton {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px;
    width: 200px;
    text-align: left;
    height: 50px;
}

.dropdown-list {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #fff;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    border: 1px solid #ccc;
    max-height: 150px;
    overflow-y: auto;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    color: var(--Harvest-Night-500, --sph-color);
}

.programTypesHtml ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.programTypesHtml li {
    padding: 10px;
    cursor: pointer;
}

    .programTypesHtml li:hover {
        background-color: #f0f0f0;
        color: var(--Harvest-Night-500, --sph-color);
    }

.apexcharts-tooltip * {
    font-family: var(--ct-font-sans-serif) !important;
    color: transparent !important;
    border: none !important
}


.div-mobile-select-wob {
    background-color: #B5EAF9 !important;
}

/*FOOTER*/
.footer {
    position: relative;
    right: 0;
    bottom: 0;
    left: 0;
    height: var(--ct-footer-height);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 1.5rem;
    color: var(--ct-gray-600);
    -webkit-transition: all .25s ease-in-out;
    transition: all .25s ease-in-out;
    border-top: 1px solid var(--ct-gray-300);
}

.overflow-programs {
    max-height: 30rem;
    overflow: auto
}

.overflow-password {
    max-height: 30rem;
    overflow: hidden;
}

.color-blue {
    color: var(--sph-color);
}

.text-body-sp {
    color: var(--Harvest-Night-500, --sph-color);
    font-family: Nunito;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 21px;
}

.card-condition {
    border-radius: 8px !important;
    background: var(--Grey-100, #F6F7F9) !important;
    box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, 0.12), 0px 2px 5px 0px rgba(103, 110, 118, 0.08) !important;
}

.icon-condition-disabled {
    color: #E5E7EA;
}

.custom-tag {
    background-color: #EAEBF1;
    color: var(--sph-color);
    font-weight: 500;
    padding: 5px 10px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    margin: 2px;
}

.custom-tag-close {
    margin-left: 8px;
    cursor: pointer;
    font-weight: bold;
}

.tag {
    display: inline-block;
    background: #e0e0e0;
    padding: 2px 6px;
    margin: 2px;
    border-radius: 4px;
}

.input-tag {
    outline: none;
    border: none;
    min-width: 100px;
}

.container {
    padding: 4px;
    border: 1px solid #ccc;
    cursor: text;
}

.dx-invalid .dx-texteditor-input {
    border: 2px solid red !important;
}

.sph-invalid-input {
    border: 2px solid #F34141 !important;
    border-radius: 5px !important;
    background-color: #f6f7f9 !important;
}

.div-simplebar {
    max-height: 500px;
    overflow-x: hidden
}

.sph-placeholderastext .dx-placeholder {
    color: var(--sph-color) !important;
}

/*dxvalidations custom*/
.custom-error-message,
.custom-error-message-fixed,
.sph-group-error-message {
    font-family: Nunito;
    color: #F34141;
    font-size: 14px;
    margin-top: 4px;
}

.dx-texteditor.dx-invalid {
    border: 1.5px solid #F78080 !important;
    border-radius: 4px;
    padding: 0 !important;
}

    .dx-texteditor.dx-invalid .dx-texteditor-input {
        border: none !important;
        box-shadow: none !important;
    }

    .dx-invalid.dx-texteditor.dx-editor-filled.dx-show-invalid-badge .dx-texteditor-input-container::after,
    .dx-invalid.dx-texteditor.dx-editor-outlined.dx-show-invalid-badge .dx-texteditor-input-container::after,
    .dx-invalid.dx-texteditor.dx-editor-underlined.dx-show-invalid-badge .dx-texteditor-input-container::after,
    .dx-texteditor.dx-invalid::after {
        display: none !important;
        content: none !important;
    }

/* Email TagBox de condicionantes */
.sph-email-tagbox.dx-invalid,
.sph-email-tagbox.dx-invalid.dx-texteditor {
    border-color: #E5E7EA !important;
}

    .sph-email-tagbox.dx-invalid .dx-texteditor-input {
        border: none !important;
    }

/* Chip de email con formato inválido (Error-50 / Error-500) */
.custom-tag-invalid {
    background-color: var(--sph-color-error-50) !important;
    color: var(--sph-color-error-500) !important;
}

    .custom-tag-invalid .custom-tag-close {
        color: var(--sph-color-error-500) !important;
    }

.dx-datagrid-adaptive-more::before {
    content: "\f016" !important;
    color: var(--sph-color) !important;
}

.sph-dx-validator.dx-invalid,
.sph-dx-validator.dx-invalid.dx-state-focused,
.sph-dx-validator.dx-invalid.dx-texteditor,
.sph-dx-validator.dx-invalid .dx-texteditor-container,
.sph-dx-validator.dx-invalid .dx-texteditor-input-container,
.sph-dx-validator.dx-invalid .dx-texteditor-buttons-container {
    border-color: #dadada !important;
    box-shadow: none !important;
}

    .sph-dx-validator.dx-invalid::after,
    .sph-dx-validator.dx-invalid .dx-texteditor-container::after,
    .sph-dx-validator.dx-invalid .dx-texteditor-input-container::after {
        border-color: transparent !important;
        box-shadow: none !important;
    }

.sph-dx-validator .dx-invalid-message,
.sph-dx-validator .dx-overlay-wrapper.dx-invalid-message {
    display: none !important;
}

.sph-dx-validator.sph-custom-invalid.dx-invalid,
.sph-dx-validator.sph-custom-invalid.dx-invalid.dx-state-focused,
.sph-dx-validator.sph-custom-invalid.dx-invalid.dx-texteditor,
.sph-dx-validator.sph-custom-invalid.dx-invalid .dx-texteditor-container,
.sph-dx-validator.sph-custom-invalid.dx-invalid .dx-texteditor-input-container,
.sph-dx-validator.sph-custom-invalid.dx-invalid .dx-texteditor-buttons-container {
    border-color: #F34141 !important;
    box-shadow: none !important;
}

.sph-hide-validation-pending-indicator .dx-pending-indicator {
    display: none !important;
}

/*CCRR*/

a.text-ocean,
a.text-ocean:hover {
    color: #0EA9D8 !important;
}

.breadcrumb-item + .breadcrumb-item.pepe::before {
    color: var(--sph-color) !important;
}

.sph-badge .badge {
    background-color: #EAEBF1 !important;
}

.sph-selector-white,
.sph-selector-white .dx-texteditor.dx-editor-outlined,
.sph-selector-white.dx-texteditor.dx-editor-outlined {
    background-color: white !important;
}

.sph-radio-group .dx-radio-value-container {
    display: none !important;
}

.sph-radio-group .dx-state-focused {
    background-color: transparent !important;
}

.sph-radio-group .dx-state-active {
    background-color: transparent !important;
}

.sph-radio-group .dx-item {
    margin-bottom: 1rem !important;
}

.sph-radio-group .dx-radiobutton {
    width: 100% !important;
}

.sph-radio-group .dx-item-selected .dx-item-content label {
    background-color: white !important;
}

.cropTypeWrapper {
    border-radius: 4px;
    background: var(--Grey-100, #F6F7F9);
    padding: 8px 16px;
}

.corpType {
    color: var(--Warning-800, #A35C00);
    text-align: center;
    border-radius: 8px;
    background: var(--Warning-200, #FBF2CB);
    padding: 0px 10px;
}

.sph-card-border-grey-200 {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background: var(--White, #FFF) !important;
}

.sph-bg-grey-100 {
    background: var(--Grey-100, #F6F7F9) !important;
}

.userIcon {
    border-radius: 38px;
    background: var(--Harvest-Night-100, #BCC0D3);
    display: flex;
    padding: 8px;
    align-items: center;
    gap: 8px;
    align-self: flex-start;
}

.monitoringWrapper {
    min-height: 200px;
}

.sph-scrolleable-div {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 50vh !important;
}

.sph-confirm-badge {
    background-color: #E6FAF6 !important;
    color: #039274 !important;
    border-radius: 8px !important;
}

.sph-warning-badge {
    background-color: #FBF2CB !important;
    color: #A35C00 !important;
    border-radius: 8px !important;
}

.sph-info-badge {
    background-color: #EAEBF1 !important;
    color: var(--sph-color) !important;
    border-radius: 8px !important;
}

.sph-loading-block {
    overflow-x: hidden !important;
}

.popover-show-styles {
    padding: 0.1rem 0.5rem;
    height: 30px;
}

.sph-time-box .dx-numberbox-spin-container {
    width: 40px !important;
}

.sph-atlas-div-info {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background: var(--White, #FFF) !important;
    min-height: 4.583vw !important;
    width: 20vw !important;
}

/*dxRadioButtons custom*/

.dx-radiobutton-checked .dx-radiobutton-icon::before {
    background-color: var(--Secondary-600, #0EA9D8) !important;
}

.dx-radiobutton-checked .dx-radiobutton-icon-dot {
    background-color: var(--sph-color-white, #FFF) !important;
}

/*Notice Box ViewComponent*/

.spherag-box {
    border-radius: 8px;
    font-family: Nunito;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px;
}

.spherag-white-box {
    border: 1px solid var(--sph-color-harvest-night-300);
    background: var(--sph-color-white);
    color: var(--sph-color-primary-500);
}

.spherag-gray-box {
    border: 1px solid var(--sph-color-gray-200);
    background: var(--sph-color-gray-50);
    color: var(--sph-color-primary-500);
}

.spherag-warning-box {
    border: 1px solid var(--sph-color-warning-500);
    background: var(--sph-color-warning-200);
    color: var(--sph-color-warning-800);
}

/* NoticeBox ViewComponent */
.sph-notice-box-icon {
    padding-right: 5px;
}

.sph-overflow-toast {
    overflow-wrap: anywhere;
}

/* Feature Disabled ViewComponent*/

.sph-feature-disabled-main-image {
    background-image: var(--bg-image);
    background-repeat: no-repeat;
    background-size: cover;
}

.sph-feature-disabled-container {
    overflow-y: auto;
}
/* Atlas Index: campana de la columna Alertas de la tabla y de su leyenda */
.sph-atlas-alerts-bell {
    width: 18px;
    min-height: 18px;
}

.sph-atlas-alerts-notification-dot {
    position: absolute;
    top: 0;
    right: 0;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--color-red);
}

/* Insignia del tipo de alerta que ha saltado ("Batería baja"). No se reutiliza .badge-red: va en negrita y el diseño no. */
.sph-atlas-alerts-badge {
    color: var(--color-red);
    background-color: #FEECEC;
    border-radius: 12px;
    padding: 2px 8px;
    font-size: 12px;
    line-height: 16px;
    white-space: nowrap;
}

/* MonitoringChart ViewComponent */
.monitoring-chart-legend-dot {
    display: inline-block;
    width: 16px;
    height: 16px;
    border-radius: 50%;
}

/* RedirectToApp ViewComponent */
.sph-redirect-to-app-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9998;
    background: rgba(0, 0, 0, 0);
    backdrop-filter: blur(0px);
    transition: backdrop-filter 0.4s ease, background 0.4s ease;
}

.sph-redirect-to-app-overlay-visible {
    background: rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(2px);
}

.sph-redirect-to-app-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) translateY(20px);
    background-color: #fff;
    padding: 24px;
    border-radius: 16px;
    width: 90%;
    max-width: 400px;
    z-index: 9999;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.sph-redirect-to-app-popup-visible {
    opacity: 1;
}

/* ViewMap DataGrid signal filter */
.sph-signal-filter-item {
    padding: 4px 0;
}

.sph-signal-filter-item-with-icon {
    display: flex;
    align-items: center;
    justify-content: left;
}

.sph-signal-filter-item-icon {
    height: 16px;
}

.sph-signal-filter-field-wrap {
    display: flex;
    align-items: center;
    justify-content: left;
    height: 35px;
    background-color: #fff;
    padding-left: 5px;
}

.sph-signal-filter-hidden-textbox {
    width: 1px;
    opacity: 0;
}

/*Visual Guide ViewComponent*/
.sph-visual-guide-card {
    margin-top: 2rem;
    border-radius: 8px;
    background-color: transparent !important;
    max-width: 266px;
}

.sph-visual-guide-icon {
    width: 40px;
    height: 40px;
}

.sph-visual-guide-card-background-color {
    border-radius: 17.471px;
    border: 0.874px solid rgba(254, 254, 254, 0.18);
    background: linear-gradient(327deg, rgba(118, 120, 132, 0.80) -11.41%, rgba(255, 255, 255, 0.04) 100%);
    box-shadow: 0 0 6.988px 0 rgba(255, 255, 255, 0.25) inset, 0 1.747px 3.494px -1.747px rgba(0, 0, 0, 0.10), 0 3.494px 5.241px -0.874px rgba(0, 0, 0, 0.10);
    backdrop-filter: blur(17.470542907714844px);
}

.btn-disabled {
    background: #F6F7F9 !important;
    border: 1px solid #E5E7EA !important;
    border-radius: 8px !important;
    color: #CED2D6 !important;
}

    .btn-disabled:hover {
        color: #CED2D6 !important;
        background-color: #F6F7F9 !important;
    }

.sph-w-90 {
    width: 90px;
}

.sph-w-100 {
    width: 100px;
}

.sph-w-70 {
    width: 70px;
}

/* Medium (md): ≥768px */
@media (min-width: 768px) {
    .sph-visual-guide-col {
        margin-top: 0rem;
    }

        .sph-visual-guide-col:nth-child(odd) {
            margin-top: 3rem;
        }
}

@media only screen and (max-width: 990px) {
    .auth-fluid {
        background: #fff;
    }

    .p-3rem {
        padding: 2rem !important;
    }
}

.disabled-item {
    pointer-events: none;
    opacity: 0.6;
}

.sph-time-box-button > .dx-button-content {
    max-height: 34px;
}

.right-radius-8 {
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px
}

.disabled-btn {
    color: #CED2D6 !important;
    background-color: #F6F7F9 !important;
    border-color: #E5E7EA !important;
}

.sph-notice-box-can-click {
    text-decoration: underline;
    font-weight: 500;
    cursor: pointer
}

#step-2 .dx-dropdowneditor-icon {
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    background-image: url('/Assets/images/spherag/icons/ChevronDown.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 24px 24px;
    width: 24px;
    height: 24px;
    content: '';
    font-family: unset !important;
}

#step-2 .dx-dropdowneditor-icon::before {
    content: none !important;
}

/*Password Input*/
.dx-icon-password-eye {
    cursor: pointer;
}

    .dx-icon-password-eye:before {
        font-family: "Material Design Icons";
        content: "\f06d0";
        font-style: normal;
        font-weight: 400;
        font-variant: normal;
        vertical-align: middle;
        line-height: 1.2;
        font-size: 16px;
    }

.sph-text-preline {
    white-space: pre-line;
}

.user-group-div {
    width: 2.5rem !important;
    height: 2.5rem !important;
}

.sph-input-div {
    height: 3rem;
}

.form-map-height {
    height: 39rem;
}

.sph-input-default-height {
    height: 3em;
}

.border-error {
    border: 1.5px solid var(--sph-color-error-500) !important;
}

/* Cayc Footer EU Logos */
.footer-eu-logos {
    padding: 1rem 0;
}

.footer-eu-logo {
    height: 50px;
    width: auto;
    object-fit: contain;
    max-width: 150px;
}

@media (max-width: 767.98px) {
    .footer-eu-logo {
        height: 40px;
        max-width: 120px;
    }
}

@media (max-width: 419px) {
    .footer-eu-logo {
        height: 35px;
        max-width: 100px;
    }
}
  
.sph-textarea-height {
    height: 80px !important;
}

@media only screen and (min-width: 1361px) {
    .spacing-card-full {
        padding: 1rem 0.5rem;
    }

    .mw-full {
        max-width: 100% !important;
    }
}

@media only screen and (max-width: 1360px) {
    .spacing-card-mobile {
        padding: 0.5rem 0.5rem;
    }

    .mw-mobile {
        max-width: 80% !important;
    }
}

.divButtonSaveMobile {
    display: none;
}

@media only screen and (max-width: 1199px) {
    .divButtonSave {
        display: none;
    }

    .divButtonSaveMobile {
        display: block !important;
    }
}

.sph-min-width-0 {
    min-width: 0;
}

.sph-min-w-85 {
    min-width: 85px;
}

.sph-truncable-wrapper {
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.sph-truncable-wrapper.sph-truncable-expanded {
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: unset !important;
    word-break: break-word !important;
}

.sph-truncable-link {
    cursor: pointer;
    text-decoration: none;
    margin-top: 4px;
}

.sph-truncable-link:hover {
    text-decoration: underline;
}

.sph-truncable-toggle {
    display: none;
    margin-top: 4px;
    color: var(--sph-color-primary-500);
    cursor: pointer;
    text-decoration: none;
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
}

.sph-truncable-toggle-visible {
    display: inline-block;
}

.sph-truncable-toggle:hover {
    text-decoration: underline;
}

.associate-elements-type-card .associate-elements-card-icon-wrapper {
    width: 40px;
    height: 40px;
    padding: 8px;
    background: var(--sph-color-primary-100) !important;
    border-radius: 50% !important;
    flex: 0 0 40px;
}

.associate-elements-type-card.associate-elements-card-disabled {
    background: var(--sph-color-gray-50) !important;
    border-radius: 4px !important;
    border: 1px solid var(--sph-color-gray-200) !important;
    outline: 1px solid var(--sph-color-gray-200) !important;
    outline-offset: -1px;
    opacity: 1 !important;
}

.associate-elements-type-card.associate-elements-card-disabled .associate-elements-card-icon-wrapper {
    background: var(--sph-color-gray-100) !important;
}

.associate-elements-type-card.associate-elements-card-disabled .associate-elements-card-icon {
    filter: grayscale(1);
    opacity: 0.45;
}

.associate-elements-type-card.associate-elements-card-disabled .associate-elements-card-title {
    color: var(--sph-color-gray-300) !important;
    font-size: 16px !important;
    font-family: Nunito !important;
    font-weight: 600 !important;
    line-height: 20px !important;
    word-wrap: break-word;
}

.ccrr-atlas-element-col {
    min-height: 120px;
}

.ccrr-atlas-element-card {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background-color: var(--White, #FFF) !important;
}

.ccrr-atlas-element-card.disabled {
    background-color: var(--Grey-100, #F6F7F9) !important;
    cursor: inherit !important;
}

.ccrr-atlas-element-card.selected {
    border: 2px solid var(--Secondary-500, #0FBAED) !important;
}

.ccrr-atlas-element-subsystem {
    border-radius: 8px !important;
    border: 1px solid var(--Grey-200, #E5E7EA) !important;
    background: var(--Grey-100, #F6F7F9) !important;
}

.ccrr-atlas-element-subsystem-name {
    min-width: 0;
}

.sph-btn-h-40 {
    height: 2.5rem;
}

.sph-farm-hero-img {
    width: 392px;
    height: 700px;
}

.sph-h-75vh {
    height: 75vh;
}

.sph-h-78vh {
    height: 78vh;
}

.sph-h-90vh {
    height: 90vh;
}

.sph-min-h-400 {
    min-height: 400px;
}

.sph-min-h-600 {
    min-height: 600px;
}

.sph-bg-grey-readonly {
    background-color: var(--Grey-100, #F6F7F9);
}

.sph-max-h-65vh {
    max-height: 65vh;
}

.sph-max-h-85vh {
    max-height: 85vh;
}

.sph-max-h-3rem {
    max-height: 3rem;
}

.sph-min-h-700px {
    min-height: 700px;
}

.sph-w-80 {
    width: 80%;
}

.sph-localization-image-18 {
    width: 18px;
    height: auto;
}

/* RTL support for Hebrew - Email truncate to the right */
[data-culture="he"] .text-truncate-ltr {
    direction: rtl !important;
    text-align: right !important;
}


.datagridcell-battery-badge {
    max-width: 70px;
}

.datagridcell-signal-badge {
    max-width: 35px;
}

/*------------------------------------------------------------ Settings (Account/Settings)*/

.sph-settings-menu {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.sph-settings-menu-link {
    display: block;
    text-decoration: none;
}

.sph-settings-menu-item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px;
    background-color: var(--sph-color-white);
    border: 1px solid var(--sph-color-gray-200);
    border-radius: 8px;
    color: var(--sph-color);
}

.sph-settings-menu-item-link:hover {
    background-color: var(--sph-color-gray-100);
}

.sph-settings-menu-item-user {
    background-color: transparent;
    border-color: var(--sph-color-gray-400);
}

.sph-settings-menu-text {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

.sph-settings-menu-title {
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: var(--sph-color);
}

.sph-settings-menu-subtitle {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--sph-color);
    overflow: hidden;
    text-overflow: ellipsis;
}

.sph-settings-menu-icon {
    font-size: 24px;
    line-height: 24px;
    color: var(--sph-color);
}

.sph-settings-menu-heading {
    display: flex;
    align-items: center;
    height: 56px;
    padding-right: 8px;
    font-size: 16px;
    font-weight: 400;
    line-height: 21px;
    color: var(--sph-color);
}

.sph-settings-menu-group > .sph-settings-menu-link:not(:last-child) .sph-settings-menu-item {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.sph-settings-menu-group > .sph-settings-menu-link:not(:first-child) .sph-settings-menu-item {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top-width: 0;
}

.sph-settings-logout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 48px;
    padding: 0 24px;
    font-size: 16px;
    font-weight: 700;
    line-height: 21px;
}

.sph-settings-logout .mdi {
    font-size: 20px;
    line-height: 20px;
}

.sph-settings-card {
    padding-top: 16px;
    padding-bottom: 16px;
    border: 0;
    border-radius: 4px;
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12), 0 2px 5px rgba(103, 110, 118, 0.08);
}

.sph-settings-title {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    color: var(--sph-color);
}

.sph-settings-breadcrumb {
    gap: 8px;
    font-size: 12px;
    font-weight: 600;
    line-height: 16px;
}

.sph-settings-breadcrumb .uil-map-marker-alt {
    margin: 0 !important;
    font-size: 16px;
    color: var(--sph-color-secondary-400);
}

.sph-settings-breadcrumb .breadcrumb-item a {
    font-size: 12px;
    font-weight: 600;
    line-height: 16px;
    color: var(--sph-color-secondary-400) !important;
}

.sph-settings-breadcrumb .breadcrumb-item + .breadcrumb-item {
    padding-left: 0;
}

.sph-settings-breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    font-family: "Material Design Icons";
    content: "\F0142";
    padding-right: 8px;
    font-size: 16px;
    line-height: 16px;
    color: var(--sph-color);
}

.sph-settings-breadcrumb .breadcrumb-item.active,
.sph-settings-breadcrumb .breadcrumb-item:last-child a {
    color: var(--sph-color) !important;
}

/* Destino del enlace del desglose de pago (Settings#billing-section): deja hueco para la topbar fija. */
.sph-settings-billing-section {
    scroll-margin-top: calc(var(--ct-topbar-height, 70px) + 16px);
}

.sph-settings-section-title {
    display: block;
    margin-bottom: 16px;
    font-size: 16px;
    font-weight: 600;
    line-height: 21px;
    color: var(--sph-color);
}

.sph-settings-scroll label.form-label {
    margin-bottom: 4px !important;
    font-size: 14px;
    font-weight: 500;
    line-height: 18px;
    color: var(--sph-color);
}

.sph-settings-scroll .form-control,
.sph-settings-scroll .dx-texteditor.dx-editor-outlined,
.sph-settings-scroll .dx-dropdowneditor-input-wrapper .dx-texteditor.dx-editor-outlined {
    min-height: 48px;
    background: var(--sph-color-gray-100) !important;
    border: 0 !important;
    border-bottom: 1.5px solid var(--sph-color-gray-200) !important;
    border-radius: 8px !important;
    box-shadow: none;
    font-size: 16px;
    line-height: 21px;
}

.sph-settings-scroll .form-control {
    padding: 0 16px;
}

.sph-settings-scroll .form-control:disabled {
    border-bottom-width: 0 !important;
    color: var(--sph-color-gray-300) !important;
    opacity: 1;
}

.sph-settings-scroll .dx-texteditor.dx-invalid.dx-editor-outlined {
    border-bottom-color: var(--sph-color-error-500) !important;
}

.sph-settings-row-action {
    height: 56px;
    padding: 0 8px 0 16px;
    gap: 8px;
    font-weight: 500;
}

.sph-settings-save {
    height: 40px;
    padding: 8px 12px;
    font-weight: 600;
    line-height: 24px;
}

.sph-settings-save:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

/*------------------------------------------------------------ Mis fincas (Farm/List)*/

.sph-farms-star {
    font-size: 16px;
    line-height: 16px;
}

.sph-farms-footnote {
    margin: 24px 0 8px;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--sph-color-gray-700);
}
