/*------------------------------------------------------------------------ 
INPUTS  -  GENERAL  /////////////////////////////////////////////////////
------------------------------------------------------------------------*/
/*--------------------------------------------------- 
--- TAMAÑOS  ///////////////////////////////////
---------------------------------------------------*/
/*

large -   46px 
default - 42px 
medium -  38px 
small -   32px 
xsmall -  26px

*/


/*--------------------------------------------------- 
--- INPUTS RESET  ///////////////////////////////////
---------------------------------------------------*/

/* Outline 0 */
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]), 
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]):focus,
textarea,
textarea:focus,
select,
select:focus,
div.input,
div.input > span {
	box-shadow:none!important;
	margin:0px!important;
	padding:0px!important;
	outline:0px!important;
	text-indent:12px!important;	}


/* Flex */
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]),
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]):focus,
textarea,
div.input > span,
div.select > select{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	flex-grow:9;
	justify-content:flex-start;
	position:relative;
	width:60%;
	}



/*--------------------------------------------------- 
--- INPUTS FONT  ////////////////////////////////////
---------------------------------------------------*/
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]),
input:where([type=text], [type=number], [type=password], [type=email], [type=tel], [type=search]):focus,
textarea,
select,
div.input,
div.input > span,
::placeholder{
	font-size:0.8rem!important;
	line-height:1!important;
	font-weight:inherit!important;
	font-family:inherit!important;
	}




/* Placeholder
------------------------------*/
::placeholder {
	color:var(--color-neutro);
	}




/*--------------------------------------------------- 
--- LABELS  ////////////////////////////////////////
---------------------------------------------------*/
/* Labels
------------------------------*/
label.title{
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	flex-grow:9;
	gap:4px;
	height:18px;
	justify-content:flex-start;
	text-transform:uppercase;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	margin:4px 0px 2px 0px;
	text-align:left;
	width:100%;
	}


label.title .svg-icon{
	fill:var(--color-black);
	height:18px;
	margin:0px;
	width:18px;
	}





/*--------------------------------------------------- 
--- INPUTS FORMULARIO FORM  ////////////////////////
---------------------------------------------------*/

/* Formulario
----------------------------------------*/
.formulario {
	gap:var(--gap-small);
	height:auto;
	width:100%;
	}



/* Form
----------------------------------------*/
form {
	align-items:flex-start;
	border:0px;
	display:flex;
	flex-flow:row wrap;
	gap:var(--gap-small);
	height:auto;
	justify-content:space-between;
	padding:0px;
	margin:0px!important;
	outline:0px;
	width:100%;
	}





/*--------------------------------------------------- 
--- INPUTS ALERTS   ////////////////////////////////
---------------------------------------------------*/
.alert{
	color:var(--color-neutro);
	font-size:0.5rem;
	height:auto!important;
	margin:0px 0px;
	letter-spacing:0.6px;
	text-align:left;
	text-transform:uppercase;
	overflow:hidden;
	padding:0px 0px;
	width:auto;
	}



.alert.color-ok,
.alerterror {
	color:var(--color-ok);
	}

.alert.color-warning,
.alertok {
	color:var(--color-warning);
	}





/*--------------------------------------------------- 
--- ALTURA  LARGE  ///////////////////////////////////
---------------------------------------------------*/
header nav.nav-main-large > ul > li > *:where( a, span, label, .button),
form.inputs-large input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
form.inputs-large select,
form.inputs-large div.input,
form.inputs-large div.input > span,
form.inputs-large div.input .svg-icon,
input.large:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
select.large,
div.input.large,
div.input.large > span,
div.input.large .svg-icon,

/* buscador */
div.box-search.large form input[type=search],
div.box-search.large form input[type=submit] + label,

/* select */
div.select.large,
div.select.large:after,
div.select.large select,


/* botones */
.button.large,
.add-button.large .button,


/* checkbox radio*/
div.checkbox-set.large input[type=checkbox] + label span,
div.checkbox-set.large input[type=radio] + label span{
	height:clamp(46px, 5vh, 52px);
	/*min-width:46px;*/
	}


/* Icons
------------------------------*/
.button.large .svg-icon,
.add-button.large .button .svg-icon,
div.checkbox-set.large input[type=checkbox] + label span .svg-icon,
nav.nav-main-large > ul > li > *:where( a, span, label, .button):not(.btn-dropdown) .svg-icon  {
	aspect-ratio: 1 / 1;
	height:46px;
	padding:6px;
	width:clamp(46px, 5vh, 52px);
	}




/*------------------------------------------------------------------------ 
INPUTS  -  ALTURA  ///////////////////////////////////////////////////////
------------------------------------------------------------------------*/
/*--------------------------------------------------- 
--- ALTURA  ///////////////////////////////////////
---------------------------------------------------*/

header nav.nav-main > ul > li > *:where( a, span, label, .button),
form.inputs input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
form.inputs select,
form.inputs div.input,
form.inputs div.input > span,
form.inputs div.input .svg-icon,

/* inputs */
input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
select,

/* div input */
div.input,
div.input > span,
div.input .svg-icon,

/* buscador */
div.box-search form input[type=search],
div.box-search form input[type=submit] + label,

/* div select */
div.select,
div.select:after,
div.select select,

/* botones */
.button,
.icon,

/* checkbox radio*/
div.checkbox-set input[type=checkbox] + label span,
div.checkbox-set input[type=radio] + label span {
	height:clamp(42px, 5vh,46px);	
	/*min-width:42px;*/
	}



.button .svg-icon,
.add-button .svg-icon,
div.checkbox-set input[type=checkbox] + label span .svg-icon,
nav.nav-main > ul > li > *:where( a, span, label, .button):not(.btn-dropdown) .svg-icon {
	aspect-ratio: 1 / 1;
	height:42px;
	padding:6px;
	width:clamp(42px, 5vh, 46px);
	}



/* -------------------------------------
+++     PILL     /////////////////
-------------------------------------*/
form.inputs.pill input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
form.inputs.pill textarea,
form.inputs.pill select,
form.inputs.pill div.input,


/* inputs */
input.pill:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
select.pill,


/* div input */
div.input.pill,


/* buscador */
div.box-search.pill,

/* div select */
div.select.pill,

/* botones */
.button.pill,
.pill .button,


[class*="-pill"] .button,
[data-element*='-pill'] > .button{
	border-radius:9999px!important;
	}







/*--------------------------------------------------- 
--- ALTURA  MEDIUM /////////////////////////////////
---------------------------------------------------*/
header nav.nav-main-medium > ul > li > *:where( a, span, label, .button),
form.inputs-medium input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
form.inputs-medium select,
form.inputs-medium div.input,
form.inputs-medium div.input > span,
form.inputs-medium div.input .svg-icon,
input.medium:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
select.medium,
div.input.medium,
div.input.medium > span,
div.input.medium .svg-icon,

/* buscador */
div.box-search.medium form input[type=search],
div.box-search.medium form input[type=submit] + label,

/* select */
div.select.medium,
div.select.medium:after,
div.select.medium select,


/* botones */
.button.medium,
.add-button.medium  .button,


/* checkbox radio*/
div.checkbox-set.medium input[type=checkbox] + label span,
div.checkbox-set.medium input[type=radio] + label span{
	height:clamp(38px, 4vh, 46px);
	min-width:38px;
	}

/* Icons
------------------------------*/
.button.medium .svg-icon,
.add-button.medium .button .svg-icon,
div.checkbox-set.medium input[type=checkbox] + label span .svg-icon,
nav.nav-main-medium > ul > li > *:where( a, span, label, .button):not(.btn-dropdown) .svg-icon {
	aspect-ratio: 1 / 1;
	height:38px;
	padding:4px;
	width:clamp(38px, 4vh, 46px);
	}




/*--------------------------------------------------- 
--- ALTURA  SMALL //////////////////////////////////
---------------------------------------------------*/
header nav.nav-main-small > ul > li > *:where( a, span, label, .button),
form.inputs-small input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
form.inputs-small select,
form.inputs-small div.input,
form.inputs-small div.input > span,
form.inputs-small div.input .svg-icon,
input.small:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
select.small,
div.input.small,
div.input.small > span,
div.input.small .svg-icon,

/* buscador */
div.box-search.small form input[type=search],
div.box-search.small form input[type=submit] + label,

/* select */
div.select.small,
div.select.small:after,
div.select.small select,


/* botones */
.button.small,
.add-button.small .button,

/* tag  */
.add-button.small button,
.tag.small,
ul.add-tag.small li > *:not(a, p, input, .button), 


/* checkbox radio*/
div.checkbox-set.small input[type=checkbox] + label span,
div.checkbox-set.small input[type=radio] + label span {
	height:clamp(32px, 3vh, 40px);
	/*min-width:32px;*/
	}


/* Icons
------------------------------*/
.button.small .svg-icon,
.add-button.small .button .svg-icon,
div.checkbox-set.small input[type=checkbox] + label span .svg-icon,
nav.nav-main-small > ul > li > *:where( a, span, label, .button):not(.btn-dropdown) .svg-icon {
	aspect-ratio: 1 / 1;
	height:32px;
	padding:4px;
	width:clamp(32px, 3vh, 40px);
	}





/*--------------------------------------------------- 
--- ALTURA  XSMALL //////////////////////////////////
---------------------------------------------------*/
header nav.nav-main-xsmall > ul > li > *:where( a, span, label, .button),
form.inputs-xsmall input:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
form.inputs-xsmall select,
form.inputs-xsmall div.input,
form.inputs-xsmall div.input > span,
form.inputs-xsmall div.input .svg-icon,
input.xsmall:where([type=text], [type=number], [type=password], [type=email], [type=tel]),
select.xsmall,
div.input.xsmall,
div.input.xsmall > span,
div.input.xsmall .svg-icon,

/* buscador */
div.box-search.xsmall form input[type=search],
div.box-search.xsmall form input[type=submit] + label,

/* select */
div.select.xsmall,
div.select.xsmall:after,
div.select.xsmall select,


/* botones */
.button.xsmall,
.add-button.xsmall .button,


/* checkbox radio*/
div.checkbox-set.xsmall input[type=checkbox] + label span,
div.checkbox-set.xsmall input[type=radio] + label span{
	height:clamp(26px, 2vh, 34px);
	min-width:26px;
	}


/* Icons
------------------------------*/
.button.xsmall .svg-icon,
.add-button.xsmall .button .svg-icon,
div.checkbox-set.xsmall input[type=checkbox] + label span .svg-icon,
nav.nav-main-xsmall > ul > li > *:where( a, span, label, .button):not(.btn-dropdown) .svg-icon {
	height:26px;
	padding:2px;
	width:clamp(26px, 2vh, 34px);
	}







/*------------------------------------------------------------------------ 
INPUTS  -  BOTONES ///////////////////////////////////////////////////////
------------------------------------------------------------------------*/
/*--------------------------------------------------- 
--- BOTON  /////////////////////////////////////////
---------------------------------------------------*/
.button,
.add-button .button{
	align-items:center;
	border:0px;
	cursor: pointer;
	display:inline-flex!important;
	flex-direction:row;
	font-size:1rem;
	justify-content:center;
	gap:var(--gap-small);
	margin:0px;
	outline:0;
	padding:0px;
	position:relative;
	text-decoration:none;
	text-transform:uppercase;
	transition:all 0.12s;
	width:auto;
	}


/* TXT SPAN
------------------------------*/
.button > span,
.add-button .button > span {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	font-size:1em;
	line-height:1.2em;
	letter-spacing:1px;
	
	}


.button > span,
.add-button .button > span {
	padding-inline-end:clamp(8px, 5vw, 16px);
	padding-inline-start:clamp(8px, 5vw, 16px);
	}


/* IF span padding
------------------------------*/
.button:has(> svg + span) span,
.add-button .button:has(> svg + span) span{
	padding-inline-start:clamp(0px, 0vw, 0px);
	padding-inline-end:clamp(0px, 0vw, 0px);
	}

/* aplicamos padding caso de existir un span y un span dentro */
/* al inico del boton */
.button:has(> svg + span),
.add-button .button:has(> svg + span){
	padding-inline-start:clamp(3px, 3vw, 6px)!important;
	padding-inline-end:clamp(8px, 5vw, 16px);
	}

/* al fnal del boton */
.button:has(> span + svg) span,
.add-button .button:has(> span + svg) span  {
	padding-inline-start:clamp(8px, 5vw, 16px);
	padding-inline-end:clamp(3px, 3vw, 6px)!important;
	}




/* If input
------------------------------*/
input.button[type=submit],
input.button[type=button],
input.button[type=file],
input.button[type=checkbox],
input.button[type=radio],
.add-button  input[type=submit],
.add-button  input[type=button],
.add-button  input[type=file],
.add-button  input[type=checkbox],
.add-button  input[type=radio]{
	display:none;
	visibility: hidden;
	}






/*--------------------------------------------------- 
--- BUTTON INLINE  //////////////////////////////////
---------------------------------------------------*/
.button-inline,
.button-inline + label,
.add-button-inline .button,
.add-button-inline input[type=submit] + label,
.add-button-inline input[type=button] + label,
.add-button-inline input[type=file] + label,
.add-button-inline input[type=checkbox] + label,
.add-button-inline input[type=radio] + label,
.add-button-inline button {
	background-color:transparent!important;
	border:0px;
	color:inherit;
	outline:none;
	}


/* +  iconos
------------------------------*/
.button-inline .svg-icon,
.button-inline + label .svg-icon,
.add-button-inline .button .svg-icon,
.add-button-inline input[type=submit] + label .svg-icon,
.add-button-inline input[type=button] + label .svg-icon,
.add-button-inline input[type=file] + label .svg-icon,
.add-button-inline input[type=checkbox] + label .svg-icon,
.add-button-inline input[type=radio] + label .svg-icon,
.add-button-inline button .svg-icon{
	fill:inherit;
	}


/* Hover
------------------------------*/
.button-inline:hover,
.button-inline + label:hover,
.add-button-inline .button:hover,
.add-button-inline input[type=submit] + label:hover,
.add-button-inline input[type=button] + label:hover,
.add-button-inline input[type=file] + label:hover,
.add-button-inline input[type=checkbox] + label:hover,
.add-button-inline input[type=radio] + label:hover,
.add-button-inline button:hover {
	background-color:none;
	color:inherit;
	text-decoration:underline;
	}


.button-inline:hover .svg-icon,
.button-inline + label:hover .svg-icon,
.add-button-inline  .button:hover .svg-icon,
.add-button-inline input[type=submit] + label:hover .svg-icon,
.add-button-inline input[type=button] + label:hover .svg-icon,
.add-button-inline input[type=file] + label:hover .svg-icon,
.add-button-inline input[type=checkbox] + label:hover .svg-icon,
.add-button-inline input[type=radio] + label:hover .svg-icon,
.add-button-inline button:hover .svg-icon{
	fill:inherit;
	}



/* General
------------------------------*/
.button-inline,
.button-inline + label,
.add-button-inline .button,
.add-button-inline input[type=submit] + label,
.add-button-inline input[type=button] + label,
.add-button-inline input[type=file] + label,
.add-button-inline input[type=checkbox] + label,
.add-button-inline input[type=radio] + label,
.add-button-inline button {
	display:inline;
	flex-direction:row;
	font-size:inherit;
	font-weight:inherit;
	height:auto;
	justify-content:flex-start;
	cursor: pointer;
	gap:6px;
	margin:0px;
	overflow:hidden;
	position:relative;
	transition:all 0.12s;
	text-decoration:underline;
	width:auto;
	}


input.button-inline[type=submit],
input.button-inline[type=button],
input.button-inline[type=file],
.add-button-inline input[type=submit],
.add-button-inline input[type=button],
.add-button-inline input[type=file],
.add-button-inline input[type=checkbox],
.add-button-inline input[type=radio] {
	display:none;
	visibility: hidden;
	}



/* +  iconos
------------------------------*/
.button-inline .svg-icon,
.button-inline + label .svg-icon,
.add-button-inline .button .svg-icon,
.add-button-inline input[type=submit] + label .svg-icon,
.add-button-inline input[type=button] + label .svg-icon,
.add-button-inline input[type=file] + label .svg-icon,
.add-button-inline input[type=checkbox] + label .svg-icon,
.add-button-inline input[type=radio] + label .svg-icon,
.add-button-inline button .svg-icon {
	display:inline;
	aspect-ratio: auto 1 / 1; 
	height:16px;
	margin:0px 0px -3px 0px;
	padding:0px;
	width:16px;
	}






/*------------------------------------------------------------------------ 
INPUTS  -  MENUS ////////////////////////////////////////////////////////
------------------------------------------------------------------------*/

/*--------------------------------------------------- 
--- MENU  //////////////////////////////////////////
---------------------------------------------------*/
ul[class^="menu"]{
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	gap:var(--gap-medium);
	height:auto;
	margin:0px 0px;
	padding:0px 0px;
	width:100%;
	}


/* Alineaciones
----------------------------------------*/
ul[class^="menu"].center{
	justify-content:center!important;
	}
ul[class^="menu"].left{
	justify-content:flex-start!important;
	}
ul[class^="menu"].right{
	justify-content:flex-end!important;
	}



ul[class^="menu"] li {
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	gap:var(--gap-inside);
	list-style:none;
	padding:0px;
	margin:0px;
	position:relative;
	width:auto;
	}




/*--------------------------------------------------- 
+++ MENU ACTIONS 
---------------------------------------------------*/
ul.menu-actions li {
	justify-content:center!important;
	}


ul.menu-actions .alert {
	text-align:left;
	}



/*--------------------------------------------------- 
+++ MENU ICONS 
---------------------------------------------------*/
ul[class^="menu-icons"] > li > .button > *:not(.svg-icon),
li[data-element^='icon'] > .button > *:not(.svg-icon){
	display:none!important;
	}

ul[class^="menu-icons"] > li > .button:has(> svg + span),
li[data-element^='icon'] > .button:has(> svg + span) {
	padding-inline-start:0px!important;
	padding-inline-end:0px!important;
	}



/*                                       
------------------------------------- MOVIL 620 ---
--------------------------------------------------*/
@media only screen and (max-width:620px) {

	ul.menu-actions{
	padding-inline:clamp(0px, 5vw, 40px);
	font-size:1rem;
	}
	ul.menu-actions li{
	width:100%!important;
	}
	ul.menu-actions li > *{
	max-width:100%;
	min-width:0px;
	width:100%!important;
	}
	ul.menu-actions .alert {
	width:100%;
	}
	ul.menu-actions .alert {
	text-align:center;
	}

}




/* ------------------------------------
+  ALINEACIONES  /////////////////////
-------------------------------------*/
ul.menu.center,
ul.menu-actions.center{
	justify-content:center;
	}

ul.menu.center .alert,
ul.menu-actions.center .alert {
	width:100%;
	}

ul.menu.center .alert,
ul.menu-actions.center .alert{
	text-align:center;
	width:100%;
	}

ul.menu.left,
ul.menu-actions.left {
	justify-content:flex-start;
	}

ul.menu.right,
ul.menu-actions.right {
	justify-content:flex-end;
	}




/* ------------------------------------
+  VERTICAL  /////////////////////////
-------------------------------------*/
ul[class^="menu"].vertical{
	align-items:flex-start;
	flex-flow:column wrap;
	width:100%;
	}


ul[class^="menu"].vertical li {
	width:100%;
	}

ul.menu-actions.vertical li > *{
	max-width:380px;
	min-width:220px;
	flex-grow:99;
	width:auto;
	}
	

/* Alineaciones
----------------------------------------*/
ul[class^="menu"].vertical.left li{
	justify-content:flex-start;
	}



/*--------------------------------------------------- 
--- MENU CATEGORIES ////////////////////////////////
---------------------------------------------------*/
ul.menu-categories {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	gap:4px;
	height:auto;
	margin:0px 0px;
	padding:0px 0px;
	width:100%;
	}


ul.menu-categories li {
	align-items:center;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:center;
	list-style:none;
	padding:0px;
	margin:0px;
	position:relative;
	width:auto;
	}


ul.menu-categories > li input[type=checkbox],
ul.menu-categories > li input[type=radio] {
	visibility: hidden;
	display: none;
	}


ul.menu-categories > li input[type=checkbox] + label,
ul.menu-categories > li input[type=radio] + label,
div.tab-box.categories > label {
	align-items:center;
	align-content:center;
	cursor:pointer;
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	font-size:var(--fs-small);
	font-weight:var(--fw-normal);
	gap:2px;
	justify-content:flex-start;
	height:28px;
	letter-spacing:1px;
	line-height:28px;
	outline:0;
	padding:0px 8px;
	position:relative;
	margin:0px;
	text-decoration:none;
	transition:all 0.12s;
	text-transform:uppercase;
	width:auto;
	}




ul.menu-categories > li input[type=checkbox] + label,
ul.menu-categories > li input[type=radio] + label,
div.tab-box.categories > label  {
	background-color:var(--color-second-softer);
	border:1px solid var(--color-second-soft);
	color:var(--color-second-soft);
	border-radius:14px;
	}


/*  +  iconos
------------------------------*/
ul.menu-categories .svg-icon,
div.tab-box.categories > label .svg-icon {
	height:28px;
	margin:0px 0px 0px -8px;
	padding:4px;
	width:28px;
	}



/*  +  iconos
------------------------------*/
ul.menu-categories .svg-icon,
div.tab-box.categories > label .svg-icon {
	fill:var(--color-second-soft);
	}


/* Hover
------------------------------*/
ul.menu-categories > li input[type=checkbox] + label:hover,
ul.menu-categories > li input[type=radio] + label:hover,
div.tab-box.categories > label:hover {
	background-color:var(--color-second-soft);
	border:1px solid var(--color-second-soft);
	color:var(--color-white);
	}

ul.menu-categories > li input[type=checkbox] + label:hover .svg-icon,
ul.menu-categories > li input[type=radio] + label:hover .svg-icon,
div.tab-box.categories > label:hover .svg-icon {
	fill:var(--color-white);
	}


/* Checker
------------------------------*/
ul.menu-categories > li input[type=checkbox]:checked + label,
ul.menu-categories > li input[type=radio]:checked + label,
div.tab-box.categories > input:checked + label{
	background-color:var(--color-second);
	border:1px solid var(--color-second);
	color:var(--color-white-90);
	}

ul.menu-categories > li input[type=checkbox]:checked + label .svg-icon,
ul.menu-categories > li input[type=radio]:checked + label .svg-icon,
div.tab-box.categories > input:checked + label {
	fill:var(--color-white-70);
	}



/*--------------------------------------------------- 
--- MENU SOCIAL BAR ////////////////////////////////
---------------------------------------------------*/
ul.social-bar {
	color:inherit;
	font-size:0.8rem;
	}

ul.social-bar li{
	color:inherit;
	font-size:0.8rem;
	}


ul.social-bar li[data-element='separator']{
	height:16px;
	width:1px;
	}
	@media only screen and (max-width:620px) {
	ul.social-bar li[data-element='separator']{
	display:none;
	}}




/*-------------------------------------------------------------------------- 
INPUTS /////////////////////////////////////////////////////////////////////
--------------------------------------------------------------------------*/






/* input a la mitad
------------------------------*/
form label.title.split,
input.split,
.inputs-group > .item {
	width:40%;
	}



textarea {
	line-height:36px;
	min-height:200px; 
	}
	@media only screen and (max-width:1500px) {
	textarea{
	line-height:26px;
	min-height:140px; 
	}}











/*-------------------------------------------------- 
---     INPUTS FONTS    ///////////////////////////
---------------------------------------------------*/










/* div input
------------------------------*/
div.input {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	position:relative;
	overflow:hidden;
	width:100%;
	}



div.input .svg-icon{
	padding:10px;
	width:60px;
	}
	@media only screen and (max-width:1500px) {
	div.input .svg-icon{
	padding:8px;
	width:40px;
	}}
	@media only screen and (max-width:620px) {
	div.input .svg-icon{
	padding:8px;
	width:50px;
	}}




/* escondemos input submit para sustituirlo por label*/
input[type=submit],
input[type=button] {
	display:none;
	visibility:hidden;
	}

input[type=range] {
	width:100%;
	}







/*------------------------------------------------------------------------ 
INPUTS  -  CHECKBOX Y RADIO  /////////////////////////////////////////////
------------------------------------------------------------------------*/
/*--------------------------------------------------- 
--- CHECKBOX SET  ///////////////////////////////////
---------------------------------------------------*/
div.checkbox-set {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	gap:var(--gap-inside);
	width:100%;
	}


div.checkbox-set input[type=checkbox],
div.checkbox-set input[type=radio] {
	visibility: hidden;
	display: none;
	}


/* label */
div.checkbox-set input[type=checkbox] + label,
div.checkbox-set input[type=radio] + label {
	align-items:center;
	cursor:pointer;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	height:auto;
	min-width:60%;
	padding:0px;
	margin:0px;
	width:auto;
	}

/* Check  */
div.checkbox-set input[type=checkbox] + label span,
div.checkbox-set input[type=radio] + label span{
	align-items: center;
	aspect-ratio: 1 / 1;
	display:flex;
	background-color:#fff;
	border:0px solid var(--color-neutro-soft);
	cursor: pointer;
	justify-content:center;
	margin-right:10px;
	outline:1px solid var(--color-neutro-soft);
	position: relative;
	transition:all 0.1s;
	}


div.checkbox-set input[type=radio] + label span {
	border-radius:50%;
	}


/* hover */
div.checkbox-set input[type=checkbox] + label span:hover,
div.checkbox-set input[type=radio] + label span:hover{
	box-shadow:0px 0px 4px rgba(0, 0, 0, 0.6);
	}


/* checked */
div.checkbox-set input[type=checkbox]:checked + label span,
div.checkbox-set input[type=radio]:checked + label span{
	background-color:var(--color-ok);
	outline:1px solid var(--color-neutro-soft);
	}
div.checkbox-set input[type=checkbox]:checked + label span{
	border:0px solid var(--color-white);
	}
div.checkbox-set input[type=radio]:checked + label span{
	border:4px solid var(--color-white);
	}

/* texto */
div.checkbox-set input[type=checkbox] + label i,
div.checkbox-set input[type=radio] + label i{
	align-items:center;
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	flex-grow:99;
	font-style: normal;
	height:auto;
	line-height:1.2em;
	overflow: hidden;
	text-overflow:ellipsis!important;
	white-space: nowrap!important;
	width:60px;
	}

/* icon */
div.checkbox-set input[type=checkbox] + label span .svg-icon{
	fill:transparent;
	}

div.checkbox-set input[type=checkbox]:checked + label span .svg-icon{
	fill:var(--color-white);
	}





/*--------------------------------------------------- 
--- BUSCADOR  ///////////////////////////////////////
---------------------------------------------------*/

/* Box search
------------------------------*/
div.box-search {
	align-items:center;
	align-content:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	font-size:0.8rem;
	height:auto;
	overflow:hidden;
	padding:0px!important;
	width:100%;
	}


/* Form
------------------------------*/
div.box-search form{
	align-items:center;
	display:flex;
	flex-flow:row nowrap;
	font-size:inherit;
	gap:0px;
	justify-content:flex-start;
	height: auto;
	width:100%;
	}



/* Inpur search
------------------------------*/
div.box-search form input[type=search] {
	background-color:transparent!important;
	margin:0px!important;
	width:100%;
	/*puntos suspensivos*/
	overflow: hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
	}



/* Botón */
div.box-search form input[type="submit"],
div.box-search form button{
	visibility: hidden;
	display:none;
	}



/* Boton buscar
------------------------------*/
div.box-search input[type=submit] + label,
div.box-search button + label {
	align-items:center;
	display:flex;
	background-color:var(--color-neutro);
	border-radius:0px 19px 19px 0px;
	cursor:pointer;
	flex-direction:row;
	justify-content:space-between;
	margin:0px!important;
	padding:0px 6% 0px 6%!important;
	width:auto;
	}
	@media only screen and (max-width:1500px) {
	div.box-search input[type=submit] + label,
	div.box-search button + label{
	border-radius:0px 14px 14px 0px;
	}}
	@media only screen and (max-width:620px) {
	div.box-search input[type=submit] + label,
	div.box-search button + label{
	border-radius:0px 19px 19px 0px;
	}}


/* Icono en boton
------------------------------*/
div.box-search input[type=submit] + label .svg-icon,
div.box-search button + label .svg-icon {
	height:28px;
	fill:var(--color-white)!important;
	padding:2px;
	margin:0px 4px!important;
	width:28px!important;
	}
	@media only screen and (max-width:1500px) {
	div.box-search input[type=submit] + label .svg-icon,
	div.box-search button + label .svg-icon{
	height:22px;
	padding:2px;
	width:22px!important;
	}}




/* Span texto como boton buscar
------------------------------*/
div.box-search input[type=submit] + label span,
div.box-search button + label span {
	display:block;
	color:var(--color-white);
	font-size:1em;
	font-weight:500;
	padding-right:16px!important;
	width:auto;
	}



/*---------------------------------
/// SELECT ///
----------------------------------*/

div.select {
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	justify-content:flex-start;
	margin:0px;
	padding:0px;
	position:relative;
	text-align:left;
	width:100%;
	}



div.select,
div.select:after,
div.select select {
	line-height:36px;
	} 




div.select select{
	background-color:transparent;
	border:0px;
	border-radius:0px;
	color:inherit;
	margin:0px;
	outline:none;
	overflow: hidden;
	text-shadow: none;
	text-align:left!important;
	-webkit-appearance:none!important;
	-moz-appearance: none!important;
	appearance: none!important;
	position:relative;
	width:100%;
	}

div.select:after {
	aspect-ratio: 1 / 1;
	color:inherit;
	content: "▼";
	position: absolute;
	top:0px!important;
	right:0;
	bottom:auto;
	font-size:0.6rem;
	text-align:center;
	margin:0px;
	padding:0px 0px;	
	pointer-events:none;
	}



div.select select option{
	border:0px!important;
	box-shadow: 0px;
	height: auto;
	margin:0px;
	outline:none;
	text-align:left!important;
	width:100%;
	}


/* Option: small
------------------------------*/

div.select.small,
div.select.small:after,
div.select.small select {
	line-height:30px;
	} 



/* Option: Half
------------------------------*/
div.select.half{
	margin:5px 0px 15px 1%;
	float:right;
	width:49%!important; 
	}
	@media only screen and (max-width:620px) {
	div.select.half{
	margin:5px 0px 5px 0%;
	/*float: left;*/
	width:100%!important; 
	}}



div.select.half:first-child{
	float:left;
	margin:5px 1% 15px 0%; 
	}
	@media only screen and (max-width:620px) {
	div.select.half:first-child{
	margin:5px 0% 5px 0%; 
	}}


/*---------------------------------
/// SELECT BUTTON ///
----------------------------------*/
div.select-button {
	align-items:center;
	display:flex;
	flex-flow:row wrap;
	font-size:inherit;
	height:40px;
	margin:0px;
	padding:0px;
	position:relative;
	width:40px;
	}

div.select-button .svg-icon{
	height:40px;
	width:40pxx;
	}


div.select-button select{
	appearance: none!important;
	background-color:transparent;
	border:0px;
	border-radius:0px;
	color:inherit;
	display:block;
	height:40px;
	margin:0px;
	outline:none;
	overflow: hidden;
	text-shadow: none;
	text-align:left!important;
	text-indent:6px;
	-webkit-appearance:none!important;
	-moz-appearance: none!important;
	min-width:100%;
	width:auto;

	position:absolute;
	top:0px;
	left:0px;
	}



div.select-button select option{
	background-color:transparent!important;
	border:0px!important;
	box-shadow: 0px;
	height: auto;
	margin:0px;
	outline:none;;
	width:auto;
	z-index:9;
	}


/*--------------------------------------------
ENABLE DISABLE //////////////////////////////
-------------------------------------------*/
/* Normal
------------------------------*/

input[type=checkbox].btn-enable-disable + label {
	border-radius:11px;
	height:28px;
	width:56px;
	}
input[type=checkbox].btn-enable-disable + label span{
	height:28px;
	width:28px;
	}
input[type=checkbox]:checked.btn-enable-disable+ label span{
	transform:translateX(28px);
	}



/* Medium
------------------------------*/

input[type=checkbox].btn-enable-disable.medium + label {
	border-radius:11px;
	height:22px;
	width:44px;
	}
input[type=checkbox].btn-enable-disable.medium + label span{
	height:22px;
	width:22px;
	}
input[type=checkbox]:checked.btn-enable-disable.medium + label span{
	transform:translateX(22px);
	}



/* Small
------------------------------*/

input[type=checkbox].btn-enable-disable.small + label {
	border-radius:9px;
	height:18px;
	width:36px;
	}
input[type=checkbox].btn-enable-disable.small + label span{
	height:18px;
	width:18px;
	}
input[type=checkbox]:checked.btn-enable-disable.small + label span{
	transform:translateX(18px);
	}


/* Base
------------------------------*/
input[type=checkbox].btn-enable-disable {
	display:none;
	visibility: hidden;
	}

input[type=checkbox].btn-enable-disable + label {
	align-items:center;
	background-color:var(--color-neutro-softer);
	border-radius:16px;
	outline:1px solid var(--color-neutro-softer);
	display:flex;
	flex-flow:row wrap;
	cursor:pointer;
	transition:all 0.25s;
	}
input[type=checkbox]:checked.btn-enable-disable + label {
	background-color:var(--color-ok);
	outline:1px solid var(--color-ok);
	}

input[type=checkbox].btn-enable-disable + label span{
	background-color:var(--color-white);
	border:1px solid var(--color-neutro-softer);
	border-radius:50%;
	display:block;
	transform: translateX(0px);
	transition:all 0.15s;
	}

/*--------------------------------------------
INPUT-FOR-LABEL /////////////////////////////
-------------------------------------------*/
input.input-for-label {
	display:none;
	}
