/*================================================================================
	Item Name: Materialize - Material Design Admin Template
	Version: 5.0
	Author: PIXINVENT
	Author URL: https://themeforest.net/user/pixinvent/portfolio
================================================================================

NOTE:
------
PLACE HERE YOUR OWN CSS CODES AND IF NEEDED, OVERRIDE THE STYLES FROM THE OTHER STYLESHEETS.
WE WILL RELEASE FUTURE UPDATES SO IN ORDER TO NOT OVERWRITE YOUR STYLES IT'S BETTER LIKE THIS.  */
.sinbot {
  border: 0px;
  background-color: transparent;
  color: red;
}

p#texto_imagen {
  text-align: center;
  color: white;
}

div#div_file, .div_file {
  position: relative;
  /*	padding:1px;
  	width:150px;
  	background-color: #2499e3;
  	-webkit-border-radius:5px;
  	-webkit-box-shadow:0px 3px 0px #1a71a9;*/
}

.btn_imagen, .btn_fav {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.the-legend {
  border-style: none;
  border-width: 0;
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 0;
  width: auto;
  padding: 0 10px;
  border: 1px solid #e0e0e0;
}

.the-fieldset {
  border: 1px solid #e0e0e0;
  padding: 10px;
}

.card-alert .row .col {
  padding: 0;
}

.light {
  background-color: #fff8dc !important;
}

.text-small {
  font-size: 10px;
  color: grey;
}

.card-alert button {
  color: #000;
}

.personazizadoselect .select2-container {
  width: 335px !important;
  height: 35px !important;
  margin-top: -20px;
}

.personazizadoselect .select2-selection--single {
  background-color: #f7f7f7;
  border: 1px solid #aaa;
  border-radius: 4px;
  outline: 0;
  background-image: linear-gradient(to bottom, #fff 50%, #eee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}

.personazizadoselect .select2-selection--single:focus {
  border: 1px solid #5897fb;
}

.personazizadoselect .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 35px;
}

.personazizadoselect .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  margin-right: 10px;
}

.personazizadoselect .select2-selection--single .select2-selection__placeholder {
  color: #999;
}

.personazizadoselect .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid #aaa;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 33px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: linear-gradient(to bottom, #eee 50%, #ccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFCCCCCC", GradientType=0);
}

.personazizadoselect .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}

.personazizadoselect[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}

.personazizadoselect[dir=rtl] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 4px 0 0 4px;
  left: 1px;
  right: auto;
}

.personazizadoselect.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb;
}

.personazizadoselect.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none;
}

.personazizadoselect.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}

.personazizadoselect.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: linear-gradient(to bottom, #fff 0%, #eee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}

.personazizadoselect.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: linear-gradient(to bottom, #eee 50%, #fff 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFFFFFFF", GradientType=0);
}

.personazizadoselect .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 5px;
  cursor: text;
  outline: 0;
}

.personazizadoselect .select2-selection--multiple:focus {
  border: 1px solid #5897fb;
}

.personazizadoselect .select2-selection--multiple .select2-selection__rendered {
  list-style: none;
  margin: 0;
}

.personazizadoselect .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-left: 8px !important;
  font-size: 14px !important;
  color: #6B6F82 !important;
  font-family: Muli-SemiBold !important;
}

.personazizadoselect .select2-selection--multiple .select2-selection__clear {
  display: none;
}

.personazizadoselect .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 5px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
}

.personazizadoselect .select2-selection--multiple .select2-selection__choice__remove {
  color: #888;
  cursor: pointer;
  display: inline-block;
  font-weight: bold;
  margin-right: 2px;
}

.personazizadoselect .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555;
}

.personazizadoselect[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  float: right;
}

.personazizadoselect[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}

.personazizadoselect[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto;
}

.personazizadoselect.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb;
}

.personazizadoselect.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.personazizadoselect.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.personazizadoselect .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0;
}

.personazizadoselect .select2-search--inline .select2-search__field {
  outline: 0;
  box-shadow: none;
}

.personazizadoselect .select2-dropdown {
  background-color: #fff;
  border: 1px solid transparent;
}

.personazizadoselect .select2-dropdown--above {
  border-bottom: none;
}

.personazizadoselect .select2-dropdown--below {
  border-top: none;
}

.personazizadoselect .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.personazizadoselect .select2-results__option[role=group] {
  padding: 0;
}

.personazizadoselect .select2-results__option[aria-disabled=true] {
  color: grey;
}

.personazizadoselect .select2-results__option--highlighted[aria-selected] {
  background-color: #3875d7;
  color: #fff;
}

.personazizadoselect .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.personazizadoselect.select2-container--open .select2-dropdown {
  border-color: #5897fb;
}

.personazizadoselect .select2-container .select2-selection--single {
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 35px;
  -moz-user-select: none;
       user-select: none;
  -webkit-user-select: none;
}

/*! SCEditor | (C) 2011-2013, Sam Clarke | sceditor.com/license */
.formatcomentario ol, .formatcomentario ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.formatcomentario table td {
  border: 1px dotted #000;
  empty-cells: show;
}

.formatcomentario table td {
  min-width: 5px;
}

.formatcomentario code {
  display: block;
  background: #f1f1f1;
  white-space: pre;
  padding: 1em;
  text-align: left;
  margin: 0.25em 0;
  direction: ltr;
}

.formatcomentario blockquote {
  background: #fff7d9;
  margin: 0.25em 0;
  border-left: 0.3em solid #f4e59f;
  padding: 0.5em 0.5em 0.5em 0.75em;
}

.formatcomentario blockquote cite {
  font-weight: 700;
  display: block;
  font-size: 1em;
  margin: 0 -0.5em 0.25em -0.75em;
  padding: 0 0.5em 0.15em 0.75em;
  border-bottom: 1px solid #f4e59f;
}

.formatcomentario strong {
  font-weight: bold !important;
}

.formatcomentario table, .formatcomentario ul, .formatcomentario code::before, .formatcomentario html, .formatcomentario p, .formatcomentario table {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 14px;
  color: rgb(17, 17, 17);
  line-height: 1.25;
  margin: 0px;
  padding: 0px;
  overflow: visible;
}

.formatcomentario ul:not(.browser-default) > li {
  list-style-type: disc !important;
}

.formatcomentario ul {
  display: block;
  list-style-type: disc;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  padding-inline-start: 40px;
}

@media only screen and (min-width: 601px) {
  .dropdown-content .icon-container i {
    height: 47px;
    line-height: 29px;
  }
}
div#draggingContainer {
  left: 0 !important;
  display: none !important;
}

.dt-rowReorder-float-parent {
  left: 45 !important;
}

.tabentregas .tab {
  width: calc(50% - 2px);
}

.tabentregas .indicator {
  max-width: 50%;
}

#modalTarea #Tarea .formatcomentario {
  padding: 20px;
  min-height: 200px;
  margin: 20px;
  border: 1px solid;
}

#entregas .tab {
  text-transform: none;
}

#entregas .collapsible {
  border-top: none;
  border-right: none;
  border-left: none;
  margin: none;
  box-shadow: none;
}

#entregas .collapsible .collapsible-body {
  padding: 0;
}

.tab-entregas-noti .tabs {
  background-color: none;
}

.collapsible li .activado {
  display: none;
}

.collapsible li.active .activado {
  display: block;
}

.collapsible li .desactivado {
  display: block;
}

.collapsible li.active .desactivado {
  display: none;
}

#entregas .collapsible-header {
  justify-content: space-between;
}

.tab-entregas-noti .tabs .tab a, #entregas .tabs .tab a {
  display: flex;
  justify-content: center;
}

.tab-entregas-noti .tabs .tab a, #entregas .tabs .tab a, #modalTarea .tabs .tab a {
  display: flex;
  justify-content: center;
}

.formProyecto .sceditor-container {
  min-height: 250px;
}

.bandaazul {
  background-color: #3f51b5;
  border-top-right-radius: 2rem;
  border-bottom-right-radius: 2rem;
  margin-left: -13px;
  padding-left: 10px;
  color: white;
  padding-right: 12px;
  padding-top: 2px;
  padding-bottom: 2px;
}

/* Footer siempre pegado al fondo del viewport, aunque el contenido de la
   página no llegue a llenar la pantalla (listados con pocos resultados,
   Editar Proyecto con pestañas cortas...). El tema (horizontal-menu-template)
   solo le da a #main una altura mínima con la regla
   ".horizontal-menu.app-page #main { min-height: ... }", y "app-page" es una
   clase que el layout no añade al body en las páginas normales (solo la usan
   las plantillas de chat/todo del tema) -- por eso el footer quedaba pegado
   justo debajo del contenido corto en vez de al fondo (aviso del usuario,
   2026-08-07).
   Solo se aplica a ".app-shell" (marcador añadido en horizontalLayoutMaster.
   blade.php): fullLayoutMaster.blade.php (login) reutiliza las mismas clases
   "horizontal-menu ..." de $configData['mainLayoutTypeClass'] pero con un
   <body> sin #main, solo un ".row" de Materialize con floats -- forzar
   display:flex ahí colapsaba el ancho de la tarjeta de login (aviso del
   usuario, 2026-08-07, tras el primer intento sin este marcador).
   En las páginas Inertia (AppLayout.vue) header/sidebar/#main/footer no son
   hijos directos de <body>: Inertia los monta dentro de un único
   "#app" (createInertiaApp -> app.mount('#app')), así que el flex de body
   solo tiene ESE div como hijo y no estira nada por dentro -- hay que
   replicar el mismo flex ahí (aviso del usuario, 2026-08-08, el fix anterior
   sobre <body> no bastaba en las páginas Vue/Inertia). */
body.app-shell.horizontal-menu {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
body.app-shell.horizontal-menu #app {
  display: flex;
  flex-direction: column;
  flex: 1 0 auto;
  min-height: 100vh;
}
body.app-shell.horizontal-menu #main {
  flex: 1 0 auto;
}

/* Header en móvil: la regla del tema para pantallas pequeñas
   (_navbar.scss, "@media #{$small-and-down}") agranda el icono de
   notificaciones a 29px y lo desplaza 12px hacia abajo con position:relative,
   sin reservarle más espacio en su <li>. Dentro del <ul class="navbar-list">
   (padding 0 13px por <li>, sin gap extra) ese icono agrandado invade el
   hueco del icono de búsqueda justo a su izquierda, que además usa un
   position:relative/top propio pensado para la barra de escritorio
   -- resultado: la lupa queda tapada o descolocada y la campana se monta
   encima de ella (aviso del usuario, 2026-08-08). Se neutraliza el
   posicionamiento absoluto de ambos iconos y se centran explícitamente en
   los 56px de alto del navbar móvil ($navbar-height-mobile), en vez de
   depender del line-height del tema para centrarlos verticalmente. */
@media (max-width: 600px) {
  .navbar .navbar-list {
    display: flex;
    align-items: center;
  }
  .navbar .navbar-list > li {
    display: flex;
    align-items: center;
    height: 56px;
  }
  .navbar .search-button,
  .navbar .notification-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    width: 40px;
    height: 100% !important;
    margin: 0 auto;
  }
  /* Caja fija de 24x24 con line-height propio (== su alto): centra el glyph
     igual que hacía el tema originalmente, pero con un tamaño fijo y
     conocido en vez de heredar el alto variable de la barra. OJO: <i> no
     puede ser flex aquí -- el badge (<small class="notification-badge">) es
     hijo suyo, y como flex-item competiría por espacio con el propio glyph
     dentro de esos 24px y lo empujaba fuera de la caja (visto al probarlo:
     el badge tapaba la campana por completo). Por eso el badge se saca del
     flujo con position:absolute anclado al <i> (position:relative), sin
     tocar su display. */
  .navbar .search-button i,
  .navbar .notification-button i {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    display: inline-block !important;
    width: 24px !important;
    height: 24px !important;
    line-height: 24px !important;
    font-size: 24px !important;
    text-align: center;
  }
  .navbar .notification-badge {
    position: absolute !important;
    top: -8px !important;
    right: -10px !important;
    left: auto !important;
    margin: 0 !important;
  }
}
