﻿* {
	font-family: 'Montserrat', sans-serif;
}

.height-control {
	height: calc(3.5rem + 2px) !important;
}

.bg-color-blue {
	background-color: #1C4771 !important;
}

.text-color-blue {
	color: #1C4771 !important;
}

.bg-color-button-add {
	background-color: #385E83 !important;
}

.bg-color-button-remove {
	background-color: #DC0004 !important;
}

.bg-color-button-show-errors {
	background-color: #79C6E8 !important;
}

.bg-color-button-suggestion {
	color: #79C6E8 !important;
}

.bg-color-select {
	background-color: #E1EBFF !important;
}

.bg-color-nav {
	/*background-color: #B5B5B5 !important;*/
	background-color: #d9d9d9 !important;
}

.text-color-inactive-nav {
	color: #727272 !important;
}

.bg-color-control {
	background-color: #E1E1E1 !important;
}
.navbar-nav .nav-link#helpCenterDropdown:not(.active):not(.show) {
	color: rgba(255, 255, 255, 0.6);
}
.remove-border-nav {
	border: 0 !important;
	border-top-left-radius: 0 !important;
	border-top-right-radius: 0 !important;
}

.nav-link.active {
	border-top: 4px solid #1C4771 !important;
}

.nav-link:hover {
	/*border-color: transparent !important;*/
	outline: none !important;
	box-shadow: none !important;
}

.form-floating > .form-control:focus ~ label::after {
	background-color: transparent !important;
}

.form-floating > .form-control:not(:placeholder-shown) ~ label::after {
	background-color: transparent !important;
}

.ui-datepicker {
	z-index: 1000 !important;
}

.form-control.is-invalid {
	background-image: none !important;
}

.select2-result-item {
	display: flex;
	flex-direction: column;
}

.select2-title {
	font-weight: bold;
	font-size: 14px;
	color: #333;
}

.select2-description {
	font-size: 12px;
	color: #777;
}

.select2-container--bootstrap-5 .select2-selection {
	height: calc(3.5rem + 2px) !important; /* Coincide con el tamaño de Bootstrap */
}

.select2-container--bootstrap-5 .select2-selection__rendered {
	/*padding-left: 0.75rem !important; /* Ajustar el padding */
}

.select2-container .select2-selection--single {
	display: flex !important;
	align-items: end !important; /* Centra verticalmente el texto */
	padding-left: 0.75rem !important;
}

.select2-results__option--highlighted {
	background-color: rgba(28,71,113, 0.2) !important;
}

.select2-results__option--selected {
	background-color: rgba(28, 71, 113, 0.5) !important; /* Un azul más visible */
	color: #fff !important;
}

.select2-container .select2-selection--single {
	background-color: #E1E1E1 !important; /* Color gris */
}

.select2-container--bootstrap-5 .select2-results__options {
	max-height: 220px !important; /* Altura para que se vean 4 opciones aprox. */
	overflow-y: auto;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

input[type=number] {
	-moz-appearance: textfield;
}

.form-floating label {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
	width: 100%;
	text-align: left;
	transform-origin: left top;
	transition: transform 0.2s ease-out;
}

.form-floating.input_textarea label {
	min-width: 97%;
}

.form-floating.input_textarea label::before {
	content: "";
	position: absolute;
	top: 0.5em;
	z-index: -1;
	width: 100%;
	height: 1.9em;
	background-color: #E1E1E1;
}

.form-floating.input_textarea > .form-control:focus ~ label, .form-floating.input_textarea > .form-control:not(:placeholder-shown) ~ label, .form-floating.input_textarea > .form-select ~ label {
	opacity: 1;
}

.form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control:focus {
	/*padding-top: 1.625rem;
	padding-bottom: 0.625rem;*/
}

.form-floating > label {
	transform: scale(0.85) translateY(-0.5rem);
	/*top: 0.5rem;*/
	/*left: 0.75rem;*/
	opacity: 1;
}

.scroll-button-top,
.scroll-button-bottom {
	position: fixed;
	right: 7px;
	z-index: 9999;
}

.scroll-button-top {
	top: 20px;
}

.scroll-button-bottom {
	bottom: 50px;
}

	.scroll-button-top button,
	.scroll-button-bottom button {
		width: 45px;
		height: 45px;
		border: none;
		border-radius: 50%;
		background-color: #007bff;
		color: white;
		font-size: 18px;
		cursor: pointer;
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
		transition: background-color 0.3s;
	}

		.scroll-button-top button:hover,
		.scroll-button-bottom button:hover {
			background-color: #0056b3;
		}

.scrollable-card-body {
	max-height: 180px;
	overflow-y: auto;
}

.scrollable-card-body-tax {
	max-height: 360px;
	overflow-y: auto;
}

.scrollable-card-body-discount {
	max-height: 272px;
	overflow-y: auto;
}

.scrollable-card-body-tiered-detail {
	max-height: 315px;
	overflow-y: auto;
}

.form-floating input::placeholder {
	opacity: 0.5 !important; /* Ajusta el color si lo quieres más tenue */
	color: #6c757d; /* Color de placeholder Bootstrap */
}





:root {
	--tooltip-color: #2564A9;
}

.tooltip {
		opacity: 1 !important; 
}

.tooltip-icon {
	position: absolute;
	right: .75rem !important;
	top: 29%;
	transform: translateY(-50%);
	z-index: 10;
	cursor: pointer;
	color: #6c757d;
	font-size: 16px;
	transition: color 0.3s ease;
}

.tooltip-icon:hover {
		color: var(--tooltip-color);
}

.form-floating input {
		padding-right: 45px !important;
}

.tooltip .tooltip-inner {
	background-color: #2564A9 !important;
	color: #fff;
	padding: 0.5rem 0.75rem;
	text-align: left;
	max-width: 250px;
	width: fit-content; 
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
	border-radius: 0.5rem;
	font-size: 0.875rem;
}

.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,
.bs-tooltip-top .tooltip-arrow::before {
	border-top-color: #2564A9 !important;
}

.tooltip.bs-tooltip-top .tooltip-arrow {
		left: auto !important;
		right: 1.25rem !important; / Puedes ajustar este valor 
}


.select2-container--bootstrap-5 .select2-selection--single {
	padding: .375rem .75rem .375rem 2rem; 
	background-position: right .75rem bottom 10px;
}

.options-card {
	width: 100% !important;
	border-radius: 10px;
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.3);
	background: linear-gradient(346deg, rgba(227,251,255,0.7) 0%, rgba(236,242,255,0.7) 100%);
	padding: 10px 15px 10px;
}


/*.scroll-buttons {
	position: fixed;
	right: 20px;
	z-index: 1050;
	display: none;
}

.scroll-btn {
	position: fixed;
	right: 15px;
	width: 40px;
	height: 40px;
	border: none;
	border-radius: 50%;
	background-color: #007bff;
	color: white;
	font-size: 20px;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(0,0,0,0.3);
	z-index: 9999;
	display: none;
}

	.scroll-btn.down {
		bottom: 15px;
	}

	.scroll-btn.up {
		bottom: 60px;
	}*/


.floating-scroll-buttons {
	position: fixed;
	right: 20px;
	bottom: 70px;
	display: none;
	flex-direction: column;
	gap: 10px;
	z-index: 1050;
}

.floating-scroll-btn {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: none;
	background: linear-gradient(135deg, #007bff, #0056b3);
	color: white;
	box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	cursor: pointer;
}

	.floating-scroll-btn:hover {
		transform: translateY(-2px) scale(1.05);
		box-shadow: 0 6px 20px rgba(0, 123, 255, 0.4);
		background: linear-gradient(135deg, #0056b3, #004085);
	}

	.floating-scroll-btn:active {
		transform: translateY(0) scale(0.95);
	}

/* Animación de entrada */
.floating-scroll-buttons.show {
	display: flex;
	animation: slideInUp 0.3s ease-out;
}

.floating-scroll-buttons.hide {
	animation: slideOutDown 0.3s ease-in;
}

@keyframes slideInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes slideOutDown {
	from {
		opacity: 1;
		transform: translateY(0);
	}

	to {
		opacity: 0;
		transform: translateY(30px);
	}
}

/* Pulso suave para indicar disponibilidad */
.floating-scroll-btn.pulse {
	animation: pulse 2s infinite;
}

@keyframes pulse {
	0% {
		box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
	}

	50% {
		box-shadow: 0 4px 25px rgba(0, 123, 255, 0.5);
	}

	100% {
		box-shadow: 0 4px 15px rgba(0, 123, 255, 0.3);
	}
}
