/*
 * Autor: Martin Carrillo
 * Email: martin@nubix.com.ar
 * Web: nubixstore.com.ar
 * 
 * Mejora la compatibilidad y experiencia del checkout de la tienda utilizando Modernizr
 * Da soporte a aquellos clientes que no tienen soporte JS o bien lo tienen deshabilitado
 * 
 */

/* Format all tempaltes */
.alert {
	margin: 0;
}

/* DEPRECATED - NECESITA MODERNIZR

 Si no tiene habilitada funciones Javascript

.no-js #address-checkout,
.no-js #terminal-checkout,
.no-js #shipping-type-checkout,
.no-js #billing-checkout {
	display:inline;	
}

.no-js .js-widget {
   display:none;
}

 Si tiene habilitada funciones Javascript

.js #address-checkout,
.js #terminal-checkout,
.js #shipping-type-checkout,
.js #billing-checkout {
   display:none;
}
*/

#address-checkout,
#terminal-checkout,
#shipping-type-checkout,
#billing-checkout {
	display: none;
}

/* chekout */

/* Contenedor del loading */
.ns-checkout-loading {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 15px;
	border: 1px dashed #135e96;
	/* azul nubixstore */
	border-radius: 10px;
	background: #f8fbfd;
	font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	color: #135e96;
	animation: fadeIn 0.3s ease-in-out;
}

/* Spinner circular */
.ns-spinner {
	width: 32px;
	height: 32px;
	border: 3px solid #cfe3f2;
	border-top: 3px solid #135e96;
	border-radius: 50%;
	animation: spin 1s linear infinite;
	margin-bottom: 8px;
}

/* Texto */
.ns-checkout-loading-text {
	font-size: 14px;
	font-weight: 500;
	text-align: center;
	margin: 0;
}

/* Animaciones */
@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: scale(0.95);
	}

	to {
		opacity: 1;
		transform: scale(1);
	}
}

/* NubixStore Form */

/* .ns-form input::placeholder { text-transform: uppercase; } */

.ns-form label {
	font-weight: normal
}

.ns-form input,
.ns-form textarea,
.ns-form select {
	border: 0 !important;
	border-bottom: 1px solid #999 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.ns-form input::placeholder {
	color: #999
}

.ns-form label,
.ns-form select:hover,
.ns-form input[type=radio]:hover {
	cursor: pointer !important;
}

.ns-form label span {
	color: #ca3c24;
}

.ns-form select:required,
.ns-form input:required {
	border: 0;
	border-bottom: 1px solid darkred
}

.ns-form select:required:invalid,
.ns-form input:required:invalid,
.ns-form textarea:required:invalid {
	border-bottom-color: #ca3c24;
}

.ns-form input:required:valid,
.ns-form select:valid,
.ns-form input[type="email"]:valid,
.ns-form textarea:valid {
	border: 0;
	border-bottom: 1px solid #21A117;
}

.ns-form input[type="number"]:valid {
	border: 1px solid #21A117;
}

.ns-form select:focus,
.ns-form input:required:focus,
.ns-form textarea:focus {
	border-bottom-color: #444;
}

.ns-pay-option {
	display: none;
}


/* Captcha inputs */

#ns-kinputs,
#calculating,
#review-sending,
#sending,
.mail,
.yeah {
	display: none;
}

.mail,
.yeah {
	visibility: hidden;
}

#calculating {
	width: 30px
}

#calculating,
#sending,
#review-sending {
	padding-left: 20px;
	background: url('https://cdn.nubixstore.com.ar/images/nubixstore/loading.gif') no-repeat;
}

#checkout-form #sending {
	margin-left: 10px;
}

#calculating a,
#sending a,
#review-sending a {
	color: #222;
	text-decoration: none
}

.error,
select.error,
textarea.error,
input.error,
label.error,
.error-message {
	color: #AC2925;
}

.ns-help-cursor {
	cursor: help
}

.ns-check,
.ns-cursor,
select,
.cursor {
	cursor: pointer;
}

.ns-copy {
	white-space: pre !important;
	user-select: all;
	cursor: copy;
}

.ns-cursor-disabled {
	cursor: not-allowed !important;
}

/* CSS Stocks color defaults */

.ns-stock-1 {
	color: #468847;
	background: none
}

.ns-stock-2 {
	color: #000;
	background: none
}

.ns-stock-3 {
	color: #b94a48;
	background: none
}

.ns-stock-4 {
	color: #9F6000;
	background: none
}

.ns-stock-5 {
	color: brown;
	background: none
}

.ns-stock-6 {
	color: #316ac5;
	background: none
}

/* Formato de precios */

.ns-from-price {
	color: #999
}

.ns-second-price,
.ns-price {
	font-size: 16px;
	font-weight: normal;
}

.ns-price {
	color: #c00;
}

.ns-second-price {
	color: #222222;
}

.ns-item .ns-second-price,
.ns-item .ns-price {
	font-size: 24px;
}

.ns-item-brand-logo img {
	margin: 10px;
	max-height: 80px
}

.ns-item-grid .ns-second-price,
.ns-item-grid .ns-price {
	font-size: 16px;
}

/* Formato por default en lista de productos */

.ns-item-list-brand-name {
	text-align: center;
	font-weight: bold;
	text-transform: uppercase;
}

.ns-item-list-mini-thumb {
	height: 40px;
	width: 40px;
	background-size: 40px 40px;
}

.is-mobile .ns-item-list-mini-thumb {
	height: 20px;
	width: 20px;
	background-size: 20px 20px;
}

.ns-old-price {
	font-weight: normal;
	font-size: 10px;
	text-decoration: line-through;
	color: #444444
}

/* NubixStore Badges / Cucardas */

.ns-badge-md,
.ns-badge-sm,
.ns-badge {
	border-radius: 2px;
	padding: 1px 3px;
	margin: 0 1px;
	position: relative;
	z-index: 0
}

.ns-badge-md {
	padding: 4px;
	font-size: 12px
}

.ns-badge-sm {
	padding: 2px;
	font-size: 10px
}

.ns-badge i {
	color: #ffffff !important;
}

.ns-badge-off,
.ns-off {
	color: #fff !important;
	background-color: #cc0000
}

.ns-badge-ml-off {
	color: #fff;
	background-color: #F0AD4E;
}

.ns-badge-variable-price,
.ns-badge-hot-off,
.ns-hot-off {
	color: #fff;
	background-color: darkorange
}

.ns-badge-presale,
.ns-presale {
	color: #fff;
	background-color: yellowgreen
}

.ns-badge-private,
.ns-private {
	color: #fff;
	background-color: #d4af37
}

.ns-badge-new,
.ns-new {
	color: #fff;
	background-color: #222
}

.ns-badge-filter {
	background-color: #f7ecb5;
	color: #c87f0a;
}

.ns-badge-filter i {
	color: #9E2424;
}

.ns-badge-combo,
.ns-combo {
	color: #fff !important;
	background-color: #0C7FCC
}

.ns-badge-pack,
.ns-pack {
	color: #fff !important;
	background-color: #0C7FCC
}

.ns-badge-promo,
.ns-promo {
	color: #fff;
	background-color: #0C7FCC
}

.ns-badge-cupon,
.ns-cupon {
	background: none;
	border: 1px dotted #222;
	color: #222
}

.ns-badge-free-shipping,
.ns-free-shipping {
	color: #fff;
	background-color: #25ba2d
}

.ns-txt-free-shipping {
	color: #25ba2d
}

.ns-text-muted {
	color: #999
}

.ns-badge-brand-line {
	color: #fff;
	background-color: #2596be;
	border: 0;
	border-radius: 0
}

.ns-badge-verified {
	color: #fff;
	background-color: #1DA1F2
}

.ns-badge-vip {
	color: #fff;
	background-color: #d4af37
}

.ns-badge-pickup-store {
	color: #1B5E20;
	background-color: #E8F5E9;
}

.ns-txt-pickup-store {
	color: #1B5E20
}

.ns-badge-online-sale {
	color: #9E2424;
	background-color: pink;
}

.ns-txt-online-sale {
	color: #9E2424
}

.ns-txt-cart-alert {
	color: #9E2424
}

.ns-badges {
	position: absolute;
	/* Posición absoluta para badges */
	top: 0;
	/* Coloca los badges en la parte superior del contenedor */
	left: 0;
	/* Coloca los badges en la esquina superior izquierda del contenedor */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.ns-badge {
	margin-bottom: 5px;
	/* Espacio entre badges */
}

.ns-opacity-low {
	opacity: .7
}

.ns-opacity-medium {
	opacity: .5
}

.ns-opacity-high {
	opacity: .2
}

/* END Badges / Cucardas */

.ns-off-price {
	color: #c00;
	font-weight: normal
}

.ns-off-price-sm {
	font-size: 15px;
	color: #c00;
	font-weight: normal
}

.ns-tiny-off {
	font-size: 10px;
	color: #4b9c3f;
	font-weight: normal
}

/* NubixStore Widths */
.ns-width100 {
	width: 100% !important;
}

.ns-width99 {
	width: 99% !important;
}

.ns-width95 {
	width: 95% !important;
}

.ns-width90 {
	width: 90% !important;
}

.ns-width80 {
	width: 80% !important;
}

.ns-width50 {
	width: 50% !important;
}

.ns-width33 {
	width: 33% !important;
}

.ns-width25 {
	width: 25% !important;
}

/* NubixStore Google Maps CSS Config */
#ns-gmap {
	height: 500px;
	width: 100%;
	background-color: grey;
	margin: 10px 0;
}

/* Front Top Bar */

#clearfix-ns-bar {
	clear: both;
	height: 28px;
}

#ns-bar {
	width: 100%;
	background: #222;
	color: #fff !important;
	font-size: 14px;
	height: 28px !important;
	padding: 4px;
	z-index: 999;
	position: fixed;
	clear: both
}

#ns-bar.non-fixed {
	position: relative;
}

#ns-bar a {
	color: #FFF
}

#ns-bar a:hover {
	color: #e7b900
}

#ns-bar .title {
	color: #e7b900;
	font-size: 14px !important;
	background: none
}

#ns-bar .refresh {
	color: #09b800
}

#ns-bar .new {
	font-weight: bold;
	color: #e7b900;
	background: none
}

#ns-bar .upper {
	text-transform: uppercase
}

#ns-bar .strong {
	font-weight: bold
}

#ns-bar .alert {
	position: absolute;
	top: 5px;
	right: 5px;
	width: 20%
}

#ns-bar .alert .close {
	color: #000;
	padding: 0 3px;
}

#ns-bar .alert .alert-link {
	color: inherit;
	font-weight: bold
}

.is-backend .alert,
.is-ajax .alert,
.ns-cart-alert {
	position: fixed;
	bottom: 10px;
	right: 10px;
	width: 20%;
	z-index: 99999;
	display: none;
	padding: 10px;
}

@media (max-width: 480px) {

	.is-backend .alert,
	.is-ajax .alert,
	.ns-cart-alert {
		width: 65%;
		text-transform: initial;
		font-size: 12px;
	}
}

#ns-bar #ns-bar-txt {
	text-align: center;
	text-transform: uppercase;
}

#ns-bar #ns-bar-txt a,
#ns-bar #ns-bar-txt b,
#ns-bar #ns-bar-txt strong {
	text-align: center;
	color: #e7b900;
	text-decoration: none
}

#ns-bar {
	position: fixed;
	/* cambiá a fixed si querés que quede siempre arriba */
	top: 0;
	z-index: 9991;
	min-height: 30px !important;

	/* Degradé institucional (azul -> verde) */
	background: linear-gradient(90deg,
			#00033d 0%,
			#004a99 28%,
			#00cfae 58%,
			#00dc86 78%,
			#1ca56a 100%);

	/* Look moderno */
	box-shadow: 0 10px 26px rgba(0, 0, 0, .18);
	border-bottom: 1px solid rgba(255, 255, 255, .12);

}

/* Overlay oscuro sutil para asegurar contraste del blanco */
#ns-bar::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg,
			rgba(0, 0, 0, .35) 0%,
			rgba(0, 0, 0, .22) 45%,
			rgba(0, 0, 0, .28) 100%);
	pointer-events: none;
}

/* Línea de brillo mínima arriba */
#ns-bar::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	height: 1px;
	background: rgba(255, 255, 255, .22);
	pointer-events: none;
}

/* Contenedor interno (si no lo tenés, podés agregarlo dentro del div) */
#ns-bar .ns-bar-inner {
	position: relative;
	/* para quedar arriba del overlay */
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 0 10px 0 0;
}

/* Texto + links + iconos en blanco, siempre legibles */
#ns-bar,
#ns-bar a,
#ns-bar button,
#ns-bar {
	color: #fff;
}

/* Links modernos */
#ns-bar a {
	text-decoration: none;
	font-weight: 600;
	font-size: 13px;
	padding: 8px 10px;
	border-radius: 10px;
	opacity: .95;
	transition: transform .12s ease, background .12s ease, opacity .12s ease;
}

#ns-bar a:hover {
	background: rgba(255, 255, 255, .12);
	opacity: 1;
	transform: translateY(-1px);
}

/* CONTACT FIXED BUTTON
   v2 (2026-04-30) — FAB de WhatsApp moderno: SVG inline + pulse + a11y.
   Wrapper #ns-contact-btn conservado para no romper referencias externas. */

#ns-contact-btn {
	position: fixed;
	right: 75px;
	bottom: 75px;
	z-index: 999;
}

.ns-wa-fab {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #25D366;
	color: #fff;
	box-shadow: 0 6px 18px rgba(37, 211, 102, .35), 0 2px 6px rgba(0, 0, 0, .18);
	text-decoration: none;
	isolation: isolate;
	transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
}

.ns-wa-fab:hover,
.ns-wa-fab:focus-visible {
	background: #1da851;
	color: #fff;
	transform: translateY(-2px) scale(1.05);
	box-shadow: 0 10px 24px rgba(37, 211, 102, .45), 0 3px 8px rgba(0, 0, 0, .22);
	text-decoration: none;
	outline: none;
}

.ns-wa-fab:focus-visible {
	box-shadow: 0 0 0 3px rgba(37, 211, 102, .45), 0 6px 18px rgba(37, 211, 102, .35);
}

.ns-wa-fab__icon {
	position: relative;
	z-index: 1;
	width: 32px;
	height: 32px;
	display: block;
	transition: transform .25s ease;
}

.ns-wa-fab:hover .ns-wa-fab__icon {
	transform: rotate(-6deg) scale(1.05);
}

.ns-wa-fab__pulse {
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background: #25D366;
	z-index: 0;
	opacity: .55;
	animation: ns-wa-pulse 2.4s cubic-bezier(0.4, 0, 0.6, 1) infinite;
	pointer-events: none;
}

@keyframes ns-wa-pulse {
	0% {
		transform: scale(1);
		opacity: .55;
	}

	70% {
		transform: scale(1.6);
		opacity: 0;
	}

	100% {
		transform: scale(1.6);
		opacity: 0;
	}
}

@media (prefers-reduced-motion: reduce) {

	.ns-wa-fab,
	.ns-wa-fab__icon {
		transition: none;
	}

	.ns-wa-fab__pulse {
		display: none;
		animation: none;
	}
}

@media (max-width: 575.98px) {
	#ns-contact-btn {
		right: 16px;
		bottom: 60px;
	}

	.ns-wa-fab {
		width: 54px;
		height: 54px;
	}

	.ns-wa-fab__icon {
		width: 28px;
		height: 28px;
	}
}

.cake-sql-log {
	display: none
}

.is-brander .cake-sql-log,
.is-deposit .cake-sql-log,
.is-dispatch .cake-sql-log,
.is-admin .cake-sql-log {
	display: inline
}

/* NubixStore SSL Logo */
.ns-ssl-logo {
	height: 65px;
	padding: 2px;
}

@media (max-width: 1024px) {
	#ns-bar {
		display: none
	}
}

/* NubixStore QR AFIP */
.ns-qr-afip {
	height: 50px;
	margin-top: 0;
	padding: 0 5px;
	float: left
}

/* Social Media Colors

.fa-instagram { color: #bc2a8d!important; }
.fa-whatsapp { color: #4dc247!important; }
.fa-facebook { color: #3b5998!important; }
.fa-twitter { color: #55acee!important; }
.fa-youtube { color: #ff0000!important; }
.fa-googleplus { color: #dd4b39!important; }
.fa-linkedin { color: #007bb5!important; }
.fa-pinterest { color: #cb2027!important; }
.fa-snapchat { color: #fffc00!important; }

*/

.ns-no-border {
	border: 0
}

.ns-no-background {
	background: none
}

.ns-right {
	float: right
}

.ns-left {
	float: left
}

.ns-padding0 {
	padding: 0 !important;
}

.ns-padding1 {
	padding: 1px !important;
}

.ns-padding2 {
	padding: 2px !important;
}

.ns-padding3 {
	padding: 3px !important;
}

.ns-padding4 {
	padding: 4px !important;
}

.ns-padding5 {
	padding: 5px !important;
}

.ns-padding8 {
	padding: 8px !important;
}

.ns-padding10 {
	padding: 10px !important;
}

.ns-padding20 {
	padding: 20px !important;
}

.ns-margin0 {
	margin: 0 !important;
}

.ns-margin1 {
	margin: 1px !important;
}

.ns-margin2 {
	margin: 2px !important;
}

.ns-margin3 {
	margin: 3px !important;
}

.ns-margin4 {
	margin: 4px !important;
}

.ns-margin5 {
	margin: 5px !important;
}

.ns-margin8 {
	margin: 8px !important;
}

.ns-margin10 {
	margin: 10px !important;
}

.ns-margin20 {
	margin: 20px !important;
}

.ns-pm0 {
	margin: 0 !important;
	padding: 0 !important;
}

.ns-pm1 {
	margin: 1px !important;
	padding: 1px !important;
}

.ns-pm2 {
	margin: 2px !important;
	padding: 2px !important;
}

.ns-pm4 {
	margin: 4px !important;
	padding: 4px !important;
}

.ns-pm5 {
	margin: 5px !important;
	padding: 5px !important;
}

.ns-pm8 {
	margin: 8px !important;
	padding: 8px !important;
}

.ns-pm10 {
	margin: 10px !important;
	padding: 10px !important;
}

.ns-pm20 {
	margin: 20px !important;
	padding: 20px !important;
}

.ns-mt0 {
	margin-top: 0 !important;
}

.ns-mt1 {
	margin-top: 1px !important;
}

.ns-mt2 {
	margin-top: 2px !important;
}

.ns-mt3 {
	margin-top: 3px !important;
}

.ns-mt4 {
	margin-top: 4px !important;
}

.ns-mt5 {
	margin-top: 5px !important;
}

.ns-mt8 {
	margin-top: 8px !important;
}

.ns-mt10 {
	margin-top: 10px !important;
}

.ns-mt20 {
	margin-top: 20px !important;
}

.ns-mt25 {
	margin-top: 25px !important;
}

.ns-mt50 {
	margin-top: 50px !important;
}

.ns-mb0 {
	margin-bottom: 0 !important;
}

.ns-mb1 {
	margin-bottom: 1px !important;
}

.ns-mb2 {
	margin-bottom: 2px !important;
}

.ns-mb3 {
	margin-bottom: 3px !important;
}

.ns-mb4 {
	margin-bottom: 4px !important;
}

.ns-mb5 {
	margin-bottom: 5px !important;
}

.ns-mb8 {
	margin-bottom: 8px !important;
}

.ns-mb10 {
	margin-bottom: 10px !important;
}

.ns-mb20 {
	margin-bottom: 20px !important;
}

.ns-mb25 {
	margin-bottom: 25px !important;
}

.ns-mb50 {
	margin-bottom: 50px !important;
}

.ns-full-height {
	height: 100% !important;
}

/* NubixStore Moda configu */

.ns-modal .modal-body .ns-modal-full-img {
	width: 100%;
}

.ns-modal-iframe .modal-body {
	padding: 10px;
	height: calc(100vh - 200px) !important;
	overflow-y: auto;
}

.ns-modal-iframe .modal-body iframe {
	width: 100%;
	height: 100%
}

.ns-modal-iframe .modal-content .close {
	font-size: 60px;
	font-weight: bold;
	color: #000 !important;
	position: absolute;
	margin: -30px 15px 0 0;
	right: 10px;
	padding: 0
}

.ns-modal-iframe .modal-content .close:hover {
	color: darkred !important;
}

/* NubixStore Modal Fullscreen */
.ns-modal-fs {
	width: 95%;
	height: 95%;
	margin: 2% 0 0 2.5%;
	padding: 0;
}

.ns-modal-fs .modal-body {
	height: auto;
	min-height: 95%;
	border-radius: 0;
	overflow-y: hidden;
}

/* NubixStore Modal Alert */
.ns-modal-alert {
	margin-top: 10%;
}

/* Ajax Modal Add2Cart Option */

.ns-option {
	float: left;
	color: #222;
	margin-bottom: 2px;
}

.ns-option input[type="number"] {
	float: left;
	margin: 8px 5px 8px -12px;
}

.ns-option input[type=number]::-webkit-inner-spin-button,
.ns-option input[type=number]::-webkit-outer-spin-button {
	opacity: 1;
	-webkit-appearance: textfield;
	margin: 1px;
}

/* Para que e4ra esto ?
.ns-modal-iframe .modal-dialog,
.ns-modal-iframe .modal-content {
	height: 90%;
}
 */

/* Modal in mobile */
.modal {
	top: 5%;
}

.is-mobile .modal {
	top: 0;
	width: 100% !important;
	height: 120% !important;
	z-index: 99999999999999999;
	padding: 0;
	margin: 0;
	border: 0
}

.is-mobile .modal-dialog {
	padding: 0;
	margin: 0;
	border: 0
}

/* NubixStore Select Cart */

.ns-cart-select {
	clear: both;
}

.ns-cart-select-title {
	text-transform: uppercase;
	margin-bottom: 4px;
}

.ns-cart-group-select-txt-option {
	clear: both;
}

.ns-cart-select-color-option,
.ns-cart-select-img-option,
.ns-cart-select-txt-option {
	float: left;
	margin: 0 4px 4px 0;
	border: 1px solid #ccc;
	cursor: pointer;
}

.ns-cart-select-color-option,
.ns-cart-select-txt-option {
	color: #222222;
	padding: 10px 15px;
}

.ns-cart-select-color-option,
.ns-cart-select-txt-option a {
	color: #222222;
}

.ns-cart-select-img-option {
	padding: 0;
}

.ns-cart-select-img-option img {
	width: 50px;
}

.ns-cart-select-img-option.disable img {
	opacity: 0.3;
}

.ns-cart-select-color-option:hover,
.ns-cart-select-img-option:hover,
.ns-cart-select-txt-option:hover {
	border: 1px solid #222;
}

.ns-cart-select-option.active {
	background: #222;
	color: #fff;
	border: 1px solid #222;
}

.ns-cart-select-option.active img {
	border: 2px solid #222;
}

.ns-cart-select-option.active a {
	color: #fff;
}

.ns-cart-select-option.disable {
	border: 1px solid #ccc;
	color: #ccc;
	cursor: not-allowed !important;
	background-color: transparent;
}

.ns-cart-select-option.disable a {
	cursor: not-allowed !important;
	color: #ccc;
}

.ns-cart-select-option.disable a .ns-hexa-color {
	opacity: 0.15 !important;
}

.ns-new-option {
	color: #fff;
	font-weight: bold;
	background: #cb1d1d;
	font-size: 9px;
	padding: 4px;
	float: right;
	margin-top: -20px;
	margin-left: -30px;
}

.ns-price-option {
	color: #111;
	border: 1px solid #111;
	font-weight: bold;
	background: #fff;
	font-size: 11px;
	padding: 2px 4px;
	float: right;
	margin: 0;
	margin-top: -18px;
	margin-left: -40px;

}

.ns-select-message {
	margin: 4px 0 4px 0;
	padding: 4px 0;
	font-size: 12px;
	color: #bb0c21;
}

.ns-select-message i {
	margin-top: -4px
}

.ns-cart-select-color-option {
	border: 0 !important;
	padding: 0;
}

.ns-cart-select-color-option .tooltip.top {
	margin-left: 15px
}

.ns-hexa-color {
	width: 35px;
	height: 35px;
	padding: 0;
	margin: 0;
	border-radius: 25px;
	border: 1px solid #ccc;
}

.is-mobile .ns-hexa-color {
	width: 25px;
	height: 25px;
	border-radius: 15px
}

.ns-cart-select-color-option.active {
	background: none
}

.ns-cart-select-color-option.active .ns-hexa-color {
	border: 1px solid #222;
}

/* NubixStore Order Status DIV */

.ns-status,
.ns-order-status {
	padding: 1px 2px;
	color: #FFF;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 10px;
	text-align: center;
}

.ns-alert-error,
a .ns-alert-error {
	background: red !important;
	color: #fff !important;
	text-decoration: none !important;
}

/* NubixStore Table */

.ns-table {
	background: none
}

.ns-table a {
	text-decoration: none
}

.ns-table .td-info {
	background: #222;
	color: #eee;
	text-align: center
}

.ns-table .td-delete i,
.ns-table .td-action-2 i,
.ns-table .td-action i {
	font-size: 18px;
	margin-right: 4px;
}

.ns-table .fa-copy {
	font-size: 10px
}

.ns-item-description table>tbody>tr>td,
.ns-table>tbody>tr>td {
	border-top: 0 !important;
	border-right: 0 !important;
	border-bottom: 1px solid #e0e0e0;
	vertical-align: middle !important;
	text-align: left;
}

.ns-table,
.ns-item-description table {
	border: 0;
	width: 100%
}

.ns-table tr:nth-child(odd),
.ns-item-description table tr:nth-child(odd) {
	background: #ededed;
}

.ns-table tr.ns-table-sub {
	background-color: #fff3cd;
}

.ns-item-description table tr td,
.ns-table tr td {
	border: 0;
	padding: 4px !important;
	text-align: left
}

.ns-item-description table tr:hover,
.ns-table tr:hover {
	background: #ccc;
	cursor: pointer
}

.ns-table>tfoot>tr>td {
	border-bottom: 0 !important;
	border-right: 0 !important;
	border-top: 1px solid #444;
	vertical-align: middle !important;
	text-align: left;
	font-weight: bold;
}

.ns-table tr.ns-table-head,
.ns-table tr.ns-table-head td,
.ns-table tr.ns-table-head th {
	text-transform: uppercase;
	font-weight: bold;
	text-align: center !important
}

.ns-table tr.ns-table-head td i,
.ns-table tr.ns-table-head th i {
	color: #fff;
	font-size: 14px;
}

.ns-table-scrollable {
	overflow: auto;
	height: 550px;
}

.ns-table-scrollable thead th {
	position: sticky;
	top: 0;
	z-index: 1;
	background: #eee;
}

.btn-danger,
.btn-error,
.ns-error,
.ns-background-error,
.ns-background-danger,
.ns-table tr.ns-tr-error td {
	background: #d31e00 !important;
	color: #fff !important;
}

.ns-disabled,
.ns-background-disabled,
.ns-table tr.ns-tr-disabled td {
	background: lightpink;
}

.ns-info {
	background: #0C7FCC;
	color: #fff;
}

.ns-warning,
.ns-background-warning,
.ns-table tr.ns-tr-warning td {
	background: #fcbe03;
	color: #fff;
}

.ns-enabled,
.ns-background-enabled,
.ns-table tr.ns-tr-enabled td {
	background: lightgreen;
}

.btn-success,
.ns-success,
.ns-background-success,
.ns-table tr.ns-tr-success td {
	background: #0b890b !important;
	color: #fff !important;
}

.btn-default,
.ns-default,
.ns-table tr.ns-tr-default td {
	background: none;
	color: #222;
	border: 1px solid #222
}

.btn-default:hover {
	background: #222 !important;
	color: #FFF !important;
}

.ns-black {
	background: #222;
	color: #fff;
	border: 1px solid #222
}

.ns-tr-error .btn,
.ns-tr-disabled .btn,
.ns-tr-warning .btn,
.ns-tr-enabled .btn,
.ns-tr-success .btn {
	color: #fff !important;
}


/* NubixStore Table TD Sizes */
.ns-td-xxs {
	width: 15px
}

.ns-td-xs {
	width: 30px
}

.ns-td-s {
	width: 60px
}

.ns-td-sm {
	width: 120px
}

.ns-td-md {
	width: 240px
}

.ns-td-l {
	width: 340px
}

.ns-td-xl {
	width: 800px
}

.ns-td-xxl {
	width: 1024px
}

.ns-td-icons {
	width: 20px !important
}

.ns-td-delete {
	background: #F2CEE3;
	padding: 4px 0 0 10px;
	width: 20px
}

.ns-td-delete a i {
	color: #8B0000 !important;
	font-size: 12px;
}

.ns-td-delete:hover {
	background: #FC4E6B !important
}

.td-action,
.ns-td-action {
	padding: 4px;
	width: 20px;
	text-transform: uppercase !important;
}

.td-action a,
.ns-td-action a {
	text-transform: uppercase !important;
}

.td-action a:hover,
.ns-td-action a:hover {
	color: #F0AD4E !important;
}

.td-action a i,
.ns-td-action a i {
	font-size: 12px;
}


/* NubixStore Table Default Colors */
.ns-table a {
	color: #222
}

.ns-table a:hover {
	color: #000
}


/* NubixStore FiLter Forms */
.ns-filter div {
	padding: 0 6px
}

.ns-filter .btn {
	margin: 0;
}

.is-frontend #FiltroSearch {
	height: 30px
}

.ns-filter.ns-filter-active input,
.ns-filter.ns-filter-active select {
	background: #fff1f2;
	color: #444;
}

.ns-filter.ns-filter-active select::placeholder {
	color: #444 !important;
}

#filtro input,
#filtro select,
.ns-filter input,
.ns-filter select {
	text-transform: uppercase !important;
}

/* HACKS PARA VENEDOR */
.ns-cart-select-img-option .tooltip.top {
	margin-left: 25px;
}

/* NubixStore Thumb Sizes */
.ns-thumb-xxs {
	height: 20px !important;
	width: auto !important;
	padding: 1px;
	border: 0
}

.ns-thumb-xs {
	height: 30px !important;
	width: auto !important;
	padding: 1px;
	border: 0
}

.ns-thumb-sm {
	height: 60px !important;
	width: auto !important;
	padding: 1px;
	border: 0
}

.ns-thumb-md {
	height: 90px !important;
	width: auto !important;
	padding: 1px;
	border: 0
}

.ns-thumb-lg {
	height: 120px !important;
	width: auto !important;
	padding: 1px;
	border: 0
}

.ns-popup-img {
	position: absolute;
	margin-top: -400px;
	margin-left: 100px;
	border: 1px dotted darkred;
	display: none
}

/* POSITIONS */
.ns-fixed {
	position: fixed
}

/* TEXT */
.ns-txt-wavy {
	text-decoration-line: underline;
	text-decoration-style: wavy;
	text-decoration-color: #222;
}

.ns-txt-top {
	vertical-align: top !important
}

.ns-txt-middle {
	vertical-align: middle !important
}

.ns-txt-bottom {
	vertical-align: bottom !important
}

.ns-center,
.center,
.ns-txt-center {
	text-align: center !important
}

.ns-txt-justify {
	text-align: justify !important
}

.ns-txt-right {
	text-align: right !important;
}

.ns-txt-left {
	text-align: left !important;
}

.ns-xxl-txt,
.ns-xxl-txt i,
.ns-xxl-txt input {
	font-size: 35px !important
}

.ns-xl-txt,
.ns-xl-txt i,
.ns-xl-txt input {
	font-size: 30px !important
}

.ns-lg-txt,
.ns-lg-txt i,
.ns-lg-txt input {
	font-size: 25px !important
}

.ns-md-txt,
.ns-md-txt i,
.ns-md-txt input {
	font-size: 18px !important;
	line-height: 25px
}

.ns-sm-txt,
.ns-sm-txt i,
.ns-sm-txt input {
	font-size: 14px !important
}

.ns-xs-txt,
.ns-xs-txt i,
.ns-xs-txt input {
	font-size: 12px !important
}

.ns-xxs-txt,
.ns-xxs-txt i,
.ns-xxs-txt input {
	font-size: 10px !important;
}

.ns-txt-black {
	color: black !important;
}

.ns-txt-white {
	color: white !important;
}

.ns-txt-red {
	color: darkred !important;
}

.ns-txt-green {
	color: darkgreen !important;
}

.ns-txt-yellow {
	color: #987c00 !important;
}

.ns-upper {
	text-transform: uppercase !important
}

.ns-bold {
	font-weight: bold !important;
}

.ns-italic {
	font-style: italic !important
}

.ns-capitalize {
	text-transform: capitalize;
}

.ns-ub {
	text-transform: uppercase !important;
	font-weight: bold !important;
}

.ns-underline {
	text-decoration-line: underline !important;
}

.ns-verified {
	text-transform: uppercase !important;
	font-weight: bold !important;
	color: #009aee !important;
}

.ns-error-txt,
.ns-error-txt i {
	color: #AC2925 !important;
}

.ns-success-txt,
.ns-success-txt i {
	color: #0b890b !important;
}

/* LINKS */
.ns-link {
	color: #095fe8 !important;
}

.ns-free,
.ns-free i {
	color: #25ba2d !important;
}

.ns-external-link {
	padding: 0 16px 0 0;
	background: url(../../img/admin/link.png) center right no-repeat
}

.ns-txt-line-through {
	text-decoration: line-through
}

.ns-hide {
	display: none;
}

.ns-block {
	display: inline-block;
}

.ns-inline {
	display: inline;
}

.ns-no-border {
	border: 0 !important;
}

.ns-invisible {
	visibility: hidden !important;
}

@media (max-width: 480px) {
	.ns-mobile-invisible {
		visibility: hidden !important;
		display: none !important;
	}
}

.ns-visible {
	visibility: visible !important;
	display: inline !important;
}

.ns-banner {
	padding: 1px !important;
	margin: 0 !important;
}

/* NubixStore effects */

/* Blink text */
.ns-blink {
	animation: ns-blinker 3s linear infinite;
}

@keyframes ns-blinker {
	50% {
		opacity: .3;
	}
}

/* HACKS */
.btn-default:hover {
	color: #444;
}

/* NubixStore Buttons */
.ns-mini-btn {
	background: none;
	cursor: pointer;
	text-transform: uppercase;
	border: 1px solid #dedede;
	border-radius: 4px;
}

/* Backend help */

#ns-help-container {
	width: 260px;
	position: fixed;
	bottom: 70px;
	right: 0;
}

#ns-help-container h6 {
	text-align: right !important;
	color: #666;
	margin: 0;
	padding: 0;
	font-weight: bold;
}

.ns-help-btn {
	font-size: 14px;
	display: block;
	width: 100%;
	float: right;
	text-align: right !important;
	margin-bottom: 8px !important;
	border: 0;
	background: rgba(255, 255, 255, .9);
}

#ns-help {
	background: url('../../img/admin/60help_widget.png') no-repeat;
	width: 60px;
	height: 60px;
	position: fixed;
	bottom: 0;
	right: 0;
}

/* NubixStore RESPONSIVE DESIGN */
.ns-img-responsive {
	max-width: 100%;
	display: block;
	height: auto;
}

@media print {

	.ns-no-print,
	.ns-no-print * {
		display: none !important;
	}
}

/* NubixStore SPS DECIDIR SECURE FORM */

.ns-secure-background {
	background: #feffdb !important;
	border: 1px dotted #fff !important;
	border-bottom: 1px dotted #ffbf00 !important;
}

#sps-form {
	display: none;
}

#ns-credit-card-holder {
	margin: 0 auto;
	display: block;
	padding: 4px;
	background: #f5f7f6
}

#ns-credit-card-holder img {
	height: 40px;
	border: 1px solid #f5f7f6;
	margin: 0 5px;
}

.is-mobile #ns-credit-card-holder img {
	height: 30px;
	border: 1px solid #f5f7f6;
	margin: 0 3px;
}

#ns-credit-card-holder img:hover,
#ns-credit-card-holder a.active img {
	border: 1px solid #222
}

@media (max-width: 480px) {
	#ns-credit-card-holder {
		padding-left: 30px;
	}
}

#ns-credit-card-form select,
#ns-credit-card-form input {
	text-align: center;
	background: #feffdb !important;
	border: 1px dotted #fff !important;
	border-bottom: 1px dotted #ffbf00;
	text-transform: uppercase;
	margin: 1px;
	padding: 0;
	height: 50px
}

#ns-credit-card-form input::placeholder {
	text-align: center;
	color: #999 !important;
}

#ns-credit-card-form select:invalid,
#ns-credit-card-form input:invalid {
	border-bottom: 1px solid #9E2424 !important;
	background: #ffedf8
}

/* DIV Colums */
.ns-col-12 {
	width: 100%;
	padding: 0;
	margin: 0
}

.ns-col-11 {
	width: 89%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-10 {
	width: 82%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-9 {
	width: 76%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-8 {
	width: 64%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-7 {
	width: 56%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-6 {
	width: 49%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-5 {
	width: 32%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-4 {
	width: 32%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-3 {
	width: 22%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-2 {
	width: 16%;
	display: inline-block;
	padding: 0;
	margin: 0
}

.ns-col-1 {
	width: 8%;
	display: inline-block;
	padding: 0;
	margin: 0
}

/* NubixStore Admin Toolbar */
#ns-toolbar {
	border-radius: 7px 0 0 7px;
	position: fixed;
	top: 30%;
	background: #111;
	right: 1px;
	color: #FFF;
	width: 35px;
	text-align: center;
	-moz-box-shadow: inset 0 0 10px #999;
	-webkit-box-shadow: inset 0 0 10px #999;
	box-shadow: inset 0 0 10px #999;
}

#ns-toolbar i {
	color: #FFF;
	padding: 5px;
	font-size: 28px;
	display: block;
	text-align: center;
}

#ns-toolbar i:hover {
	color: darkgoldenrod;
}

#ns-toolbar .ns-sep {
	width: 100%;
	border-bottom: 1px solid #ccc;
}

#ns-mail-form {
	width: 500px;
}

.ns-tool-div {
	display: none;
	padding: 5px 10px 20px 10px;
	background: #4183c4;
	color: #FFF;
	border-radius: 5px;
	-moz-box-shadow: inset 0 0 10px #000000;
	-webkit-box-shadow: inset 0 0 10px #000000;
	box-shadow: inset 0 0 10px #000000;
}

.ns-tool-div h2,
.ns-tool-div h3 {
	width: 100%;
	border-bottom: 1px solid #eee;
	padding-bottom: 4px;
	text-transform: uppercase;
}

/* NubixStore Toolbars tools */

#ns-toolbar-tools {
	position: fixed;
	right: 5%;
	top: 30%;
}


/* NubixStore Calculator */
#ns-calc {
	padding: 10px 5px 20px 5px;
	background: #555;
	text-align: center;
	width: 214px;
	margin: 0 auto;
}

.ns-tool-close {
	background: #000;
	color: #fff;
	float: right;
	margin: -20px -12px 0 0;
	width: 23px;
	border-radius: 11px;
}

#ns-calc input[type='button'],
#ns-calc button {
	width: 50px;
	height: 50px;
	margin: 2px 0;
	cursor: pointer;
}

#ns-calc div input[type="text"] {
	height: 50px;
	width: 100%;
	background-color: #999;
	color: #fff;
	padding: 12px 20px;
	margin-top: 100px;
	margin-bottom: 4px;
	box-sizing: border-box;
	border-radius: 4px;
	border: 1px solid #777;
}

#ns-calc div.results input,
#ns-calc div.results button {
	height: 50px;
}

#ns-calc div.results input,
#ns-calc div.results button {
	width: 52px;
}

#ns-calc div.results input {
	width: 156px;
}

#ns-calc div.results button {
	background-color: red;
	color: #fff;
	border: 1px solid red;
}

#ns-calc div.results input {
	background-color: #fd7202;
	color: #fff;
	border: 1px solid #fd7202;
}

#ns-calc span,
#ns-calc i {
	color: #fff
}

#plus,
#minus,
#by,
#devide,
#percent {
	background-color: green;
	color: #fff;
	border: 1px solid green;
	font-size: 16px;
}

/* BACKEND */
.is-backend h1 {
	color: #000
}

.is-backend h1 a.external {
	color: #777;
	border-bottom: 1px dotted;
}

.is-backend .ns-tip {
	background: darkgoldenrod;
	color: #FFF;
	width: 98%;
	margin-bottom: 5px;
	border-bottom: 1px solid #ccc
}

/* Buttons */
.ns-action-btn {
	text-transform: uppercase;
	text-align: center;
	vertical-align: middle;
}

.ns-action-btn:hover {
	font-weight: bold;
}

.ns-action-btn:hover i {
	display: inline-block
}

.ns-action-btn i {
	right: 0;
	display: none
}


/* Placeholder elements */

#ns-header-placeholder,
#ns-footer-placeholder {
	display: none
}

.ns-clearfix:after {
	content: " ";
	/* Older browser do not support empty content */
	visibility: hidden;
	display: block;
	height: 0;
	clear: both;
}

.ns-line {
	clear: both;
	height: 1px;
	background: #dedede;
	margin: 8px 0;
}


/* Floating placeholder */

.ns-floating-label {
	position: absolute;
	left: 20px;
	pointer-events: none;
	transition: 0.2s ease all;
	top: 18px;
	opacity: .8;
	text-transform: uppercase;
}

.ns-form input:focus~.ns-floating-label,
.ns-form input:valid~.ns-floating-label {
	top: -10px;
	bottom: 10px;
	font-size: 12px;
	opacity: 1;
}

/* Backend color icons */
i.fa-trash-alt {
	color: #8B0000;
}

i.fa-exclamation-triangle {
	color: orangered
}


.ns-side-filter {
	padding: 2px;
	margin: 2px
}

.ns-side-filter i {
	padding: 5px
}

.ns-input-active {
	background-color: #f7e1b5 !important;
	font-weight: bold;
}

/* SLIDE VIDEO BACKGROUND */
.ns-slide-background-video {
	width: 100vw;
	height: 100vh;
	object-fit: fill;
	position: fixed;
	z-index: -1;
}

/* Overlay oscuro */
.ns-slide-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.2);
	/* Ajustá la opacidad según lo necesites */
	z-index: 2;
}

.ns-slide-video-title,
.ns-slide-video-subtitle {
	color: white;
	font-weight: bold;
	text-align: center;
	width: 100vw;
}

.ns-slide-video-title {
	font-size: 6rem;
	margin-top: 15vh;
}

.ns-slide-video-subtitle {
	font-size: 3rem;
	margin-top: 25vh;
}

/* Estilos para el botón */
#ns-btn-entendido {
	background-color: #007bff;
	color: #fff;
	border: none;
	padding: 2px;
	cursor: pointer;
	border-radius: 3px;
	margin: 0;
}

.ns-input-xxxs {
	width: 5% !important
}

.ns-input-xxs {
	width: 10% !important
}

.ns-input-xs {
	width: 15% !important
}

.ns-input-sm {
	width: 25% !important
}

.ns-input-md {
	width: 55% !important
}

.ns-input-lg {
	width: 75% !important
}

.ns-input-xl {
	width: 100% !important
}

/* Carrito de compras */
.ns-cart-alert {
	right: 20px !important;
	bottom: 75% !important;
}

.is-backend .ns-cart-alert,
.is-mobile .ns-cart-alert {
	right: 1px !important;
	bottom: 53px !important;
}

/* [2026-08-18] El aviso "Se ha agregado ... al carrito" va POR DEBAJO del detalle del carrito.

   El aviso lo inyecta Layouts/ajax.ctp DENTRO de #ns-cart, pero al ser `position:fixed`
   flota sobre el header. Con z-index 99999 hacia dos cosas mal:
     1. tapaba el panel del carrito;
     2. le robaba el hover. El panel abre por CSS puro
        (`.navbar-expand-lg .dropdown:hover > .dropdown-menu`), y el aviso queda como hermano
        del .dropdown que abre el panel, no como descendiente: con el mouse encima del aviso
        el .dropdown deja de estar en :hover y el detalle se cierra solo.

   z-index < 1000 (el del .dropdown-menu de Bootstrap) lo manda debajo del panel, y
   `pointer-events:none` hace que el mouse lo atraviese, que es lo que corta el robo de hover.
   Sigue por encima del contenido de la pagina (que es z-index auto).

   Sólo frontend: en el backend el aviso SI puede traer un link clickeable
   (admin/mensajes.ctp renderiza `$mensaje['link']`), asi que ahi no se toca. */
.is-frontend .ns-cart-alert {
	z-index: 999;
	pointer-events: none;
}

/* CARTZILLA THEME COMMONS ( .cartzilla-theme ) */

.btn-share:hover {
	color: #000 !important;
	box-shadow: none
}
/* Error de carga en el checkout (AJAX de envios que falla) */
.ns-checkout-error {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px;
	border: 1px dashed #b32d2e;
	border-radius: 10px;
	background: #fdf7f7;
	font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
	color: #b32d2e;
	animation: fadeIn 0.3s ease-in-out;
}
