:root {
    --bs-primary: #046b5c;
    --bs-primary2: #006B5C;
    --bs-secondary: #4A635D;
    --bs-success: #416835;
    --bs-warning: #765B0B;
    --bs-danger: #BA1A1A;    
}

.form-control:focus{
    border-color: var(--bs-primary)!important;
    box-shadow: 0 0 0 3px rgba(4, 108, 93, 0.25)!important;
}


/* Botones sólidos */
.btn-primary{ transition: background-color 0.3s ease; background-color: var(--bs-primary); border-color: var(--bs-primary);}
.btn-primary:disabled, 
.btn-primary:active, 
fieldset:disabled .btn-primary{background-color: var(--bs-primary)!important; border-color: var(--bs-primary)!important;}
.btn-primary2{ transition: background-color 0.3s ease; background-color: var(--bs-primary2); border-color: var(--bs-primary2);}
.btn-secondary{ transition: background-color 0.3s ease; background-color: var(--bs-secondary); border-color: var(--bs-secondary);}
.btn-success{ transition: background-color 0.3s ease; background-color: var(--bs-success); border-color: var(--bs-success);}
.btn-danger{ transition: background-color 0.3s ease; background-color: var(--bs-danger); border-color: var(--bs-danger);}
.btn-warning{ transition: background-color 0.3s ease; background-color: var(--bs-warning); border-color: var(--bs-warning);}

/* Hover para botones sólidos */
.btn-primary:hover{ background-color: var(--bs-primary); border-color: var(--bs-primary);}
.btn-primary2:hover{ background-color: var(--bs-primary); border-color: var(--bs-primary);}
.btn-secondary:hover{ background-color: var(--bs-secondary);border-color: var(--bs-secondary);}
.btn-success:hover{ background-color: var(--bs-success); border-color: var(--bs-success);}
.btn-danger:hover{ background-color: var(--bs-danger); border-color: var(--bs-danger);}
.btn-warning:hover{ background-color: var(--bs-warning); border-color: var(--bs-warning); }
 
/* Hover para botones outline */
.btn-outline-primary:hover{ background-color: var(--bs-primary); }
.btn-outline-primary2:hover{ background-color: var(--bs-primary); }
.btn-outline-secondary:hover{ background-color: var(--bs-secondary);}
.btn-outline-success:hover{ background-color: var(--bs-success);}
.btn-outline-danger:hover{ background-color: var(--bs-danger);}
.btn-outline-warning:hover{ background-color: var(--bs-warning);}
 
/* Active (click) */
.btn:disabled{ filter: brightness(80%); }
.btn:hover{ filter: brightness(80%); }
.btn:active{ filter: brightness(110%); }
  
/* Botones outline */
.btn-outline-primary{ color: var(--bs-primary); border-color: var(--bs-primary);}
.btn-outline-primary:disabled, 
.btn-outline-primary:active, 
fieldset:disabled .btn-outline-primary{background-color: var(--bs-primary)!important; border-color: var(--bs-primary)!important;}
.btn-outline-secondary{ color: var(--bs-secondary); border-color: var(--bs-secondary);}
.btn-outline-success{ color: var(--bs-success); border-color: var(--bs-success);}
.btn-outline-danger{ color: var(--bs-danger); border-color: var(--bs-danger);}
.btn-outline-warning{ color: var(--bs-warning); border-color: var(--bs-warning);}

/* border */
.border-primary{ border-color: var(--bs-primary)!important;}
.border-primary2{ border-color: var(--bs-primary2)!important;}
.border-secondary{ border-color: var(--bs-secondary)!important;}
.border-success{ border-color: var(--bs-success)!important;}
.border-danger{ border-color: var(--bs-danger)!important;}
.border-warning{ border-color: var(--bs-warning)!important;}

.bg-primary{ background-color: var(--bs-primary) !important; }
.bg-primary2{ background-color: var(--bs-primary2) !important; }
.bg-secondary{ background-color: var(--bs-secondary) !important; }
.bg-success{ background-color: var(--bs-success) !important; }
.bg-warning{ background-color: var(--bs-warning) !important; }
.bg-danger{ background-color: var(--bs-danger) !important; }
  
.text-primary{ color: var(--bs-primary) !important; }
.text-primary2{ color: var(--bs-primary2) !important; }
.text-secondary{ color: var(--bs-secondary) !important; }
.text-success{ color: var(--bs-success) !important; }
.text-warning{ color: var(--bs-warning) !important; }
.text-danger{ color: var(--bs-danger) !important; }  


.form-check-input:checked{background-color: var(--bs-primary); border-color: var(--bs-primary);}
  

.ff{font-family:"Inter", sans-serif; font-optical-sizing:auto; font-style:normal; }
html{min-height:100%; position:relative;}
body{height:100%; overflow-x:hidden;}
textarea{resize:none;}
.w-5{width:5% !important;}
.w-10{width:10% !important;}
.w-20{width:20% !important;}
.w-30{width:30% !important;}
.w-40{width:40% !important;}
.w-60{width:60% !important;}
.w-70{width:70% !important;}
.w-80{width:80% !important;}
.w-90{width:90% !important;}
.h100{font-size:100%!important;}
.h7{font-size:.95rem!important;}
.h8{font-size:.85rem!important;}
.h9{font-size:.75rem!important;}
.h10{font-size:.65rem!important;}
.h11{font-size:.55rem!important;}
.h12{font-size:.45rem!important;}
.ls-0{letter-spacing:0!important;}
.ls-1{letter-spacing:-0.05rem!important;}
.ls-2{letter-spacing:-0.075rem!important;}
.ls-3{letter-spacing:-0.1rem!important;}
.lh-2{line-height:1; padding:0 0 4px 0;}
.min-height-100vh{min-height:100vh!important;}

textarea,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus{   
    outline: none;
    box-shadow: none;                
    border-color: #ccc;    
}

.custom-tooltip .tooltip-inner {
    font-family:"Inter", sans-serif; font-optical-sizing:auto; font-style:normal; 
    text-align:left;
    background: color #000;; 
    color: #ffffff;
    border-radius:5px;
    padding:10px;
    font-size:9px;
}

.custom-tooltip .tooltip-arrow {
    border-top-color: #ff5733; 
}

::placeholder {
    opacity: 0.25!important;
}

::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
    height: 7px;
}

::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0, 0, 0, 0.5);
    box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
}

/* Estilos específicos para dark mode */
[data-bs-theme="dark"] .bg-white{background-color: #121212!important;}
[data-bs-theme="dark"] .bg-secondary{background-color: #111111!important;}
