:root {
	--font-family: 'Libre Franklin', 'Arial', sans-serif;
  --color-primary: white;
  ---animation-delay: .3s;
  &[data-theme="dark"]{
    --color-primary: #1F1F1F;
  }
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: var(--font-family);
}

html {
  overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 10px;
	scroll-behavior: smooth;
	background-color: var(--color-primary);
  transition: background-color var(---animation-delay);
}

body {
	overflow-x: hidden;
	height: 100%;

  /* Centrar visualmente la barra de scroll */
  &::-webkit-scrollbar {
    height: 8px; /* Altura de la barra de desplazamiento */
    width: 8px;
  }

  &::-webkit-scrollbar-track {
    background-color: var(--background-scroll);
    border-radius: 30px;
  }

  &::-webkit-scrollbar-thumb {
    background-color: #999;
    border-radius: 30px;
  }

  &::-webkit-scrollbar-thumb:hover {
    background: #818080; /* Color cuando se pasa el cursor */
  }

}

.filterWithContent{
  background-color: #6c757d !important;
}

.DisplayNone{
  display: none !important;
}

#DTPrincipal{
  height: 92VH;

  & #T_tablaDT tbody {
    & .Cumple {
      background-color: rgb(40 167 69 / 20%);
    }
    & .NoCumple {
      background-color: rgb(171 0 0 / 20%);
    }
    & tr:hover {
      background-color: rgba(0, 0, 0, 0.25);
    }
  }
  & #T_tablaDT_wrapper span:nth-child(4){
    display: none !important;
  }
}


.modal_confirm{
  .modal{
    .modal-dialog{
      max-width: none;
      margin: 0;
      justify-content: center;
      .modal-content{
        border-radius: 3px;
        height: 350px;
        width: 520px;
        .modal_body{
          height: 100%;
          padding: 20px;
          display: grid;
          grid-template-rows: 160px 50px 30px 1fr;
          .info_icon{
            color: #F8A528;
            font-size: 120px;
            font-weight: bold;
            justify-self: center;
            align-self: center;
          }
          .confirm_text{
            justify-self: center;
            width: 370px;
            height: 30px;
            text-align: center;
          }
          table{
            border: 1px solid var(--color-border-S360);
            border-collapse: collapse;
            justify-self: center;
            width: 430px;
            th{
              border-bottom: 1px solid var(--color-border-S360);
              padding: 10px;
              width: 200px;
              text-align: start;
              background-color: #D9D9D9;
              font-weight: normal;
            }
            td{
              border-bottom: 1px solid var(--color-border-S360);
              padding: 10px;
              text-align: start;
              font-weight: bold;
              font-size: 11px;
            }
          }
          .content-button{
            display: flex;
            flex-direction: row;
            justify-content: center;
            align-items: center;

            #btn_confirmar{
              gap: 5px;
              width: 110px;
              height: 29px;
              display: flex;

              .material-symbols-outlined {
                font-variation-settings:
                'FILL' 1,
                'wght' 400,
                'GRAD' 0,
                'opsz' 24
              }
            }


          }
        }
      }
    }
  }
  .fade-out {
      transition: opacity 0.2s ease-out, transform 0.2s ease-out;
      opacity: 0;
      transform: scale(0.9);
  }
}

.swal2-popup {
  color: var(--color-text-S360);
  padding: 20px !important;
  background-color: var(--background-S360) !important;

  & .swal2-loading {
    background-color: var(--background-S360) !important;
  }

  & .swal2-contentwrapper {
    background: var(--background-S360);

    & h2 {
      color: var(--color-text);
    }
    & div {
      color: var(--color-text);
    }
  }

  & .swal2-buttonswrapper {
    background: var(--background-S360);
  }
}

.filterContainer {
  & button:disabled {
    opacity: 0.3;
    cursor: not-allowed;

    & span {
      cursor: not-allowed !important;
    }
  }
}

.alingEnd{
  margin-left: auto;
}

#root {
  height: 100%;
  & .mainContainer {
    height: 100%;
  }
}

.basic-input--disabled .block-icon{
  display: none;
}


@media  (min-width: 995px) and (max-width: 1285px)   {
  .content-button{
    &:has(#B_Borrarfilter){
      flex: 0 0 13.333333% !important;
      max-width: 13.333333% !important;
    }
    &:has(#B_consultar){
      flex: 0 0 13.333333% !important;
      max-width: 13.333333% !important;
    }
    &:has(#B_filter){
      flex: 0 0 13.333333% !important;
      max-width: 13.333333% !important;
    }
  }
}
/*
#sync{
  color: var(--color-text-S360);
  user-select: none;
  font-size: 12px;
  right: 0;
  margin-right: 10px;
  i{
    cursor: pointer;
    font-size: 16px;
  }
  i:hover{
    opacity: 0.8;
  }
  i:active{
    opacity: 0.5;
  }
}

}*/



& .sync {
  background-color: #17a2b8;
  padding: 5px;
}

.sync-date {
  padding: 2px 6px;
  background: #a5dbe3;
  color: #464040;
  border-radius: 2px;
  span{
    font-size: 9px;
    font-weight: bold;
  }
}

.syncDate-container {
  display: flex
;
  justify-content: end;
  padding: 0 13px;
  font-style: inherit;
  color: var(--color-text);
  font-size: 12px;
}

#sync{
  right: 0;
  align-items: end;
  align-content: end;
  margin-right: 10px;
  display: flex;
  margin-top: auto;
  flex-direction: column;

  &.content-button {
    width: unset !important;
    & .button-opc {
        height: 100%;
        gap: 6px;
        width: 100%;
        display: flex
  ;
        align-items: center;
        justify-content: center;
        font-weight: 500;
        color: white;
        text-align: center;
        line-height: 1.5;
        border: 1px solid transparent;
        border-radius: var(--border-radius-S360);
        user-select: none;
        cursor: pointer;
        transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, opacity .15s ease-in-out;
        padding: 0px 5px;
    }
  }
}


@media screen and (min-width: 1300px) {
  #sync{
    position: absolute;
    & .content-button{width: 134px;}
  }
}

@media screen and (max-width: 1282px) {
  .syncDate-container{
    display: none;
  }
  #B_sync{
    :nth-child(2) {
      display: none;
    }
    span{
      font-size: 20px;
    }
  }
}

.cicle-loader-container {
  display: flex
;
  gap: 9px;
  align-items: center;
}

.cicle-loader-container {
  & .circle-loader {
      border: 5px solid #1374cf;
      border-bottom-color: transparent;
      border-radius: 50%;
      display: inline-block;
      box-sizing: border-box;
      animation: rotation 1s linear infinite;
      width: 20px;
      height: 20px;
      margin-right: 4px;
  }
}

@keyframes rotation {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}
