/*================================================================================

	Item Name: Vuexy - Vuejs, HTML & Laravel Admin Dashboard Template

	Version: 2.0

	Author: PIXINVENT

	Author URL: http://www.themeforest.net/user/pixinvent

================================================================================




NOTE:

------

PLACE HERE YOUR OWN SCSS 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.  */


/*
input[type="date"]::-webkit-calendar-picker-indicator {
    background: transparent;
    bottom: 0;
    color: transparent;
    cursor: pointer;
    height: auto;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: auto;
}*/


div.dt-button-collection .dt-button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border: 0px;
  border-bottom: 1px solid #CCC;
  background: #FFF;	
}

div.dt-button-collection .dt-button:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 1px solid #ccc;
  margin-right: 10px;
  background-color: white;
}

div.dt-button-collection .dt-button.active:before {
  background-color: var(--bs-primary);
  border-color: var(--bs-primary);
  content: "✔";
  color: white;
  font-size: 11px;
  text-align: center;
  line-height: 16px;
}



@media (max-width: 960px) {
	
	
	#navbar-title{font-weight: normal !important; font-size: 14px !important;}
  
}


.main-menu.menu-light .navigation > li ul li > a {
  padding: 10px 15px 10px 30px;
  border-left: 1px solid #D74D4D;
	background: #F9f9f9;
}

.main-menu.menu-light .navigation > li ul li.active > a {
 
 color: #D74D4D !important;
}

.highlighted-column{background: #EEE !important; color:#28C76F !important}
.border-highlight:not(.has-charter){background: #EEE;}
.border-highlight span:not(.has-charter) {color:#28C76F !important}


.ui-datepicker{z-index: 9999 !important}


.page-item.active .page-link {
  
  background-color: #a4a4a4;
  
}

.nav-pills .nav-link.active {
  border-color: #a4a4a4;
  box-shadow: none;
}
.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
  color: #fff;
  background-color: #a4a4a4;
}

label{font-weight: 500}

.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: 0.65;
    background-color: #DDD;
	cursor: not-allowed !important;
}


.main-menu.menu-fixed .app-version{
	 display: none;
}

.main-menu.menu-fixed.expanded .app-version{
	display: block !important
}


.signature-dashboard svg{max-width: 150px; max-height: 150px}

.tooltip-success .tooltip-inner {
    background-color: #28C76F;
    box-shadow: 0px 0px 4px black;
    opacity: 1 !important;
}
.tooltip-success.bs-tooltip-right .tooltip-arrow::before {
    border-right-color: #28C76F !important;
}
.tooltip-success.bs-tooltip-left .tooltip-arrow::before {
    border-left-color: #28C76F !important;
}
.tooltip-success.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: #28C76F !important;
}
.tooltip-success.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: #28C76F !important;
}

/*
.main-menu-content .uk-nav-icon .las:before{color:#7367f0}
.main-menu-content .uk-nav-icon .la:before{color:#7367f0}
.menu-content .uk-nav-icon .las:before{color:#999}*/



.bg-light-warning a {
    background: rgba(255, 159, 67, 0.12) !important;
    color: #ff9f43 !important;
}

.card-profile .avatar, .card-profile .avatar-content{ width:100px !important; height: 100px !important; font-size: 1.5em}

html .navbar-sticky .app-content {
    padding: calc(2rem + 3.45rem) 2rem 0 2rem;
}

.btn-sm .las{ font-size:14px !important}

.subform-table-layout  .table-responsive{ overflow: visible !important;}

.subform-repeteable-small th{ font-size: 14px; text-transform: none !important; white-space: nowrap; vertical-align: middle !important}
.subform-repeteable-small td form-check{margin: 0 auto !important}
.subform-repeatable .form-check-inline{ margin-right: 0px !important}

.form-select {
   
    padding: 0.25rem 2rem 0.25rem 1rem;
	line-height: 2;
}

.td-signature svg{width:30px; height: 30px}

.page-item,.page-item a,.page-item span{ height:32px;}

.card-icon-left{border-radius:  0.428rem 0 0 0.428rem;}

.bg-success-bordered{
	background-color:#FFFFFF;
	color: #28C76F;
	border: 1px solid #28C76F;
}

.bg-primary-bordered{
	background-color:#FFFFFF;
	color: #d74d4d ;
	border: 1px solid #d74d4d ;
}


.bg-secondary-light{background: #F0F0F1 !important;}

.btn-xs, .btn-group-xs > .btn {
    padding: 0.200rem 0.7rem;
    font-size: 12px;
    border-radius: 0.2rem;
}

.pad-button{border-radius: 0px !important}

.avatar-group .avatar .avatar-content {
     background: rgba(215, 77, 77, 0.12) !important;
}

.bg-light-primary{
	
    background: rgba(215, 77, 77, 0.12) !important;
    color: #d74d4d !important;
}


#profile-avatar .avatar{ background: rgba(255,255,255,0.3) !important; width: 40px !important;
    height: 40px !important;}


#profile-avatar .avatar .avatar-content img{ width: 40px !important;
    height: 40px !important;
    
}
.avatar.avatar-md .avatar-content {
    width: 40px !important;
    height: 40px !important;
    font-size: 1.3rem !important;
}

.avatar.avatar-md {
    width: 40px !important;
    height: 40px !important;
    font-size: 1.3rem !important;
}

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

.btn-xs > .las, .btn-group-xs > .btn > .las {
    
	font-size: 1.1rem !important;
}



.input-group-sm {
 
    min-height: 2.142rem;
}

.select2.form-select-sm .select2-selection{
	
	min-height: 2.141rem;
    padding: 0px;
   
} 


joomla-toolbar-button{ margin-right: 10px; margin-bottom: 10px;}


.cursor-pointer{ cursor:pointer !important}

.divider i{margin-right: 5px !important;
}


.wf-media-wrapper .modal div.modal-body {
    max-height: 100%!important;
    width: 100%;
    overflow: hidden;
    padding: 0;
	height: 90vh !important;

}


joomla-field-media .field-media-preview {
    
    max-width: 100% !important;

}

/*.btn-secondary {
  background-color: #CCC !important;
  color: #FFF !important;
}

.btn-secondary {
  border-color: #CCC !important;
}*/


.tr-header-1 th{ background-color: #7367F0 !important; vertical-align: top;
text-transform: uppercase;
font-size: .857rem;
letter-spacing: .5px; color:#FFF !important}

.tr-header-1 th:hover{background-color: #7367F0 !important;}

.tr-header-2 th{background-color: #EEECFE !important; vertical-align: top;
text-transform: uppercase;
font-size: .857rem;
letter-spacing: .5px;}

.tr-header-2 th:hover{background-color: #EEECFE !important;}







div.calendar-container table th, .calendar-container table td {
 
    padding: 8px 0 !important;
   
}

.form-switch input{ cursor:pointer !important}

.pagination .page-link > span{line-height: 1.8}
/*
.form-select {
  
    
    padding: 0.571rem 2rem 0.571rem 1rem;
    
}



.form-select-sm {
    padding-top: 0.188rem;
    padding-bottom: 0.188rem;
    padding-left: 0.857rem;
    font-size: 0.857rem;
	padding-right: 0.5rem;
}*/

.form-select-sm {
    min-height: 2.142rem;
    padding: 0.188rem 2rem  0.188rem  0.857rem;
    font-size: 0.857rem;
    border-radius: 0.357rem;
}

.input-group input{ border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important;}

.btn-micro{ padding: 0px}

.btn-micro i{font-size: 1.3em}

.form-switch-sm .form-check-input {
    height: 1.2rem;
	width: 2.5rem;
}

.btn-outline-muted{ border:1px solid #d8d6de !important; background: #eee;}

#profile-picture-container:hover .profile-picture-actions{ display:block !important;}

#profile-picture-container{ overflow: hidden !important}

#delete-profile-picture:hover{ color: #EA5455}
#edit-profile-picture:hover{ color: #7367F0}

.profile-picture-actions{position: absolute; padding-top: 50px;  top:0px; left:0px;   display: none; width: 115px; margin: 0 auto;  background: rgba(255,255,255,0.7); height: 115px; z-index: 99999; }

.profile-picture-actions i{cursor: pointer;   font-size: 20px; z-index: 99999; color: #222;}


.vertical-layout.vertical-menu-modern.menu-expanded .main-menu .navigation  i:before, .vertical-layout.vertical-menu-modern.menu-expanded .main-menu .navigation  svg:before {
    height: 20px;
    width: 20px;
    font-size: 20px;
}

.la, .las{ font-size:18px !important}

.la-2x {
    font-size: 1.5em !important;
}

.btn-sm .las.la-2x {
    font-size: 2em !important;
}


.accordion-margin .accordion-item {
    
    box-shadow: none !important;
   
}

.accordion-body {
    padding: 0px !important;
}

.bg-muted{background:#F3F2F7 !important}

.tooltip-danger > .tooltip-inner{
	--bs-bg-opacity: 1;
background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}

.tooltip-danger.bs-tooltip-top > .tooltip-arrow::before{
	--bs-bg-opacity: 1;
border-top-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}

.tooltip-danger.bs-tooltip-start > .tooltip-arrow::before{
	--bs-bg-opacity: 1;
border-left-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}

/* ==========================================
   ESTILOS PARA TARJETAS DE BARCOS
   ========================================== */

/* Tarjeta base */
.boat-card {
  position: relative;
  cursor: pointer;
  transition: all 0.3s ease;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.boat-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.boat-card.selected {
  border-color: #2fb66c;
  box-shadow: 0 0 0 3px rgba(47, 182, 108, 0.2);
}

/* Campos personalizados en barcos seleccionados */
.boat-card-body .form-label.small {
  font-size: 0.75rem;
  color: #666;
  margin-bottom: 4px;
}

.boat-card-body .form-control-sm {
  font-size: 0.85rem;
  padding: 6px 10px;
  border-radius: 6px;
  border: 1px solid #e0e0e0;
  transition: all 0.2s ease;
}

.boat-card-body .form-control-sm:focus {
  border-color: #696cff;
  box-shadow: 0 0 0 3px rgba(105, 108, 255, 0.1);
  outline: none;
}

.boat-card-body .form-control-sm::placeholder {
  color: #aaa;
  font-size: 0.8rem;
}

.boat-custom-price {
  text-align: right;
}

.boat-custom-comment {
  resize: vertical;
  min-height: 50px;
}

/* Ajustar altura de tarjetas seleccionadas */
.selected-boat-item {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.selected-boat-item .boat-card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.selected-boat-item .boat-card-image-wrapper {
  height: 140px;
}

/* Contenedor de imagen con overlay */
.boat-card-image-wrapper {
  position: relative;
  width: 100%;
  height: 180px;
  overflow: hidden;
  background: #f5f5f5;
}

.boat-card-image {
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
}

.boat-card:hover .boat-card-image {
  aspect-ratio: 16 / 9;
}

/* ✅ Checkbox como overlay mejorado */
.boat-card .boat-card-checkbox,
input.boat-card-checkbox[type="checkbox"] {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  width: 32px !important;
  height: 32px !important;
  cursor: pointer !important;
  z-index: 10 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 2.5px solid rgba(0, 0, 0, 0.12) !important;
  border-radius: 50% !important;
  box-shadow: 
    0 2px 8px rgba(0, 0, 0, 0.1),
    0 1px 2px rgba(0, 0, 0, 0.08) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  outline: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.boat-card .boat-card-checkbox:hover,
input.boat-card-checkbox[type="checkbox"]:hover {
  background: rgba(255, 255, 255, 1) !important;
  border-color: #2fb66c !important;
  transform: scale(1.12) !important;
  box-shadow: 
    0 4px 16px rgba(47, 182, 108, 0.25),
    0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.boat-card .boat-card-checkbox:checked,
input.boat-card-checkbox[type="checkbox"]:checked {
  background: linear-gradient(135deg, #2fb66c 0%, #2fb66c 50%, #2fb66c 100%) !important;
  border-color: #2fb66c !important;
  box-shadow: 
    0 4px 12px rgba(47, 182, 108, 0.4),
    0 2px 4px rgba(47, 182, 108, 0.2),
    inset 0 1px 2px rgba(255, 255, 255, 0.3) !important;
}

/* ✅ Checkmark circular - Forzar estilos */
.boat-card .boat-card-checkbox:checked::before,
input.boat-card-checkbox[type="checkbox"]:checked::before,
.boat-card .boat-card-checkbox:checked::after,
input.boat-card-checkbox[type="checkbox"]:checked::after {
  content: '✓' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) scale(1) !important;
  color: white !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
  animation: checkPop 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55) !important;
  border: none !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
}

/* ✅ Eliminar el segundo ::after de Bootstrap */
.boat-card .boat-card-checkbox::after {
  display: none !important;
}

@keyframes checkPop {
  0% {
    transform: translate(-50%, -50%) scale(0) rotate(-45deg);
    opacity: 0;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.3) rotate(10deg);
  }
  100% {
    transform: translate(-50%, -50%) scale(1) rotate(0deg);
    opacity: 1;
  }
}

/* ✅ Focus */
.boat-card .boat-card-checkbox:focus,
input.boat-card-checkbox[type="checkbox"]:focus {
  box-shadow: 
    0 0 0 4px rgba(105, 108, 255, 0.15),
    0 4px 12px rgba(105, 108, 255, 0.3) !important;
  outline: none !important;
}

/* ✅ Active state */
.boat-card .boat-card-checkbox:active,
input.boat-card-checkbox[type="checkbox"]:active {
  transform: scale(1.05) !important;
}

/* ✅ Efecto ripple al seleccionar */
.boat-card:has(.boat-card-checkbox:checked)::after {
  content: '' !important;
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(105, 108, 255, 0.3) 0%, transparent 70%) !important;
  animation: ripple 0.6s ease-out !important;
  pointer-events: none !important;
  z-index: 5 !important;
}

@keyframes ripple {
  0% {
    transform: scale(0.5);
    opacity: 1;
  }
  100% {
    transform: scale(2.5);
    opacity: 0;
  }
}

/* ✅ Anular estilos de Bootstrap específicamente */
.boat-card-checkbox.form-check-input {
  background-image: none !important;
  background-color: rgba(255, 255, 255, 0.98) !important;
}

.boat-card-checkbox.form-check-input:checked {
  background-image: none !important;
  background-color: #2fb66c !important;
}

.boat-card-checkbox.form-check-input:focus {
  border-color: #2fb66c !important;
  box-shadow: 0 0 0 4px rgba(105, 108, 255, 0.15) !important;
}


/* ✅ Botón de eliminar para barcos seleccionados */
.remove-boat {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
  height: 32px;

  border: none;
  border-radius: 50%;
  color: darkred;
  font-size: 18px;
  cursor: pointer;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;

}



.remove-boat i {
  pointer-events: none;
}

/* Cuerpo de la tarjeta */
.boat-card-body {
  padding: 12px;
  background: white;
}

.boat-card-title {
  font-size: 15px;
  font-weight: 600;
  margin-bottom: 8px;
  color: #333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.boat-card-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.boat-card-info > div {
  font-size: 13px;
  color: #666;
  display: flex;
  align-items: center;
  gap: 6px;
}

.boat-card-info i {
  font-size: 16px;
  color: #2fb66c;
}

/* Estilos para barcos seleccionados en la vista principal */
.selected-boat-item {
  height: 100%;
}

.selected-boat-item .boat-card-image-wrapper {
  height: 150px;
  aspect-ratio: 16 / 9;
}



/* Responsive */
@media (max-width: 768px) {
  .boat-card-image-wrapper {
    height: 140px;
  }
  
  .selected-boat-item .boat-card-image-wrapper {
    height: 120px;
  }
  
  .boat-card-checkbox {
    width: 24px;
    height: 24px;
  }
  
  .remove-boat {
    width: 28px;
    height: 28px;
    font-size: 16px;
  }
}

