:root {
	--bgl: #f8f8f1;
	--bgl: #f8fafc;
	--text-dark: #1e293b;
	--text-gray: #64748b;
	--bg-color: #f8fafc;
	--card-bg: #ffffff;
	--radius: 8px;

}

body {
	margin: 0;	padding: 0;	font-size: 12px;
	font-family: Helvetica, Arial,  sans-serif;
	xfont-family: Arial,  sans-serif;
	xfont-family: 'Open Sans', Arial,  'sans-serif';
	color: #3E3E3E;
	color: #222;
	color: var(--text-dark);
}

p { margin: 5px 0; clear: both; }
img {border: 0; }
ul { margin: 0; padding: 0; }

a { font-size: 14px; line-height: 19px; color: #2276BB; text-decoration: none; }
a { color : #114455; }
a { color : #789; }
a { color: #005599; }

a:hover, a:visited, a:link, a:active, a:focus
{
	text-decoration: none;
}

a.link-button, a.link-hlt {
    -moz-border-radius: 0 0 0 0;
    color: #2276BB;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
}
a.link-button {
    padding: 2px 29px 3px 0;
}
a.hlt { color: #a7a; font-weight: bold; }

h4 {font-size: 15px; margin: 5px 0 2px 0; font-weight: normal; color: #778899; }
h3 {font-size: 15px; margin: 5px 0 5px 0; line-height: 20px; color: #777; }
h2 { font-size: 15px; margin: 10px 0; }
h2 { font-size: 16px;  font-weight: normal; margin: 5px 0; }

h1 {margin: 10px 0 10px 0; font-size: 17px;  font-weight: bold;}
h1 {margin: 5px 0 5px 0; font-size: 20px;  font-weight: normal;}
h1 { color: #EF4C79; }
h1 { color: #FF0084; }
h1 { color: #FF0000; }
h1 { color: #3E3E3E; }
#h1 { color: #999; }

.smooth {
	-webkit-font-smoothing: antialiased;
}

/* forms */
select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input { padding: 5px 3px; }

textarea {font-family: 'Open Sans', Arial,  'sans-serif'}

.input-append .add-on, .input-prepend .add-on { padding: 5px 3px; }

.label { font-family: arial; font-size: 11px; font-weight: normal; }
.label-info, .badge-info {  text-shadow: none; }

.btn { padding: 3px 12px; border-radius: 3px; }
.btn-mini { padding: 0 12px;  }
.navbar .btn-navbar { margin-top: 5px; }

.label-category, .badge-category {
	background-color: #e56666; color: #fff;
	text-shadow: none;
}

.label-pcategory {
	background-color: #edf6f7;
	border: 1px solid #cae0ee;
    line-height: 18px;
	color: #3a8fba;
	padding: 3px 9px;
	font-size: 12px;
	margin-right: 5px;
	font-weight: bold;
	text-shadow: none;
	margin-bottom: 5px;
}

.label-category-same, .label-tag {
	background-color: #edf6f7; border: 1px solid #cae0ee; color: #3a8fba; font-size: 11px;
	text-shadow: none;  margin-bottom: 2px;

}
.categories-list {
	background-color: var(--bgl);  padding: 5px;
	border-radius: 5px;
}
.categories-items {
	margin-top: 5px;
}
.cat-toggle-btn {
	/* background: #fff; */border-radius: 12px;
	padding: 8px 6px;display: flex;align-items: center;justify-content: space-between;
	/* box-shadow: 0 1px 3px rgba(0,0,0,0.1); */
	cursor: pointer;transition: all 0.2s ease;
}
.bigger { border-left: 5px solid #eee; padding-left: 5px; margin-bottom: 10px; }
.bigger label { font-size: 1.2em; font-weight: bold;  }

.row-my { margin-bottom: 15px; }

/* navigation */
.navbar-inner { background-image: none; filter: none; background-color: #456; padding-right: 5px;}

.navbar .nav > li > a { color: #fefefe; font-size: 17px; font-weight: normal; text-shadow: none; padding-top: 10px; padding-bottom: 10px; }
.navbar .nav > li > a:focus,
.navbar .nav > li > a:hover { color: #fefefe; background-color: #567; }
.navbar a.brand { color: #de0 ; colpadding-top: 10px; font-size: 26px; text-shadow: none;  }

.navbar .nav li.dropdown.open > .dropdown-toggle {  background-color: #fb5642; color: #fff; }


/**/
[class^="icon-"], [class*=" icon-"] { opacity: 0.8; margin-top:0; }
.icon-phone {background-position: -168px -1px;}

.logo { text-decoration:none; font-size: 35px; font-family: Times New Roman; color: #a7a}
.logo:hover { text-decoration:none; }

input.input { padding: 3px; font-size: 13px;}

.submit {
	-moz-box-shadow: none;
	-moz-border-radius: 0.3em 0.3em 0.3em 0.3em;
	-webkit-border-radius: 0.3em;

	outline: 0;
    background: -webkit-gradient(linear, center top, center bottom, from(#E4E4E4), to(#F6F6F6));
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#E4E4E4', endColorstr='#F6F6F6') chroma(color=#000000);

    text-shadow: 0 -1px 0 rgba(255, 255, 255, 0.5);
    border: 1px solid #AFAEAE;
    border-radius: 0.3em;

    color: #4F4F4F;
    cursor: pointer;
	display: inline-block;
	vertical-align: top;

	/* fix */
	padding: 5px 11px 4px 11px;	line-height: 15px;
	padding: 0 15px; line-height: 28px;
    font-size: 14px;
}

.tooltip.right { min-width: 150px; }
.tooltip-inner { text-align: left; }

/* submit ok */

.submit-ok, .submit-ok-green {
	background-color: #d14836;
    background-image: none;
    filter: none;
	color: #fff;
	border: 0;
	text-shadow: none;
}
.submit-ok:hover, .submit-ok-green:hover,
.submit-ok:active, .submit-ok-green:active,
.submit-ok:visited, .submit-ok-green:visited {
	color: #fff; text-decoration: none;
}

.submit-ok-green { background-color: #00aa00; font-weight: bold; }

.submit-green {
	border: 1px solid #35a694;
    background-image: none;
    filter: none;
    background-color: #35a694;
    text-shadow: none;
    color: #fff;
}
.submit-green:hover {
	color: #fff; text-decoration: none;
	background-color: #259684;
}

/* */

.strong { font-weight: bold; }
.hand { cursor: hand; cursor: pointer; }
.hide { display: none !important; }
.ta-class {padding: 3px; }

input.text-class {padding: 3px; border: 1px solid #ccc; color: #555; }

label { line-height: 27px; margin-bottom: 0; }
label { line-height: 18px; margin-top: 3px; }
label.checkbox { line-height: 23px;  }
label.checkbox input[type="checkbox"] { margin-top: 0; float: none; }


fieldset { border: 0; margin: 0; padding: 0; clear: both;}
fieldset legend {font-size: 21px;  font-weight: normal;  padding: 20px 0 1px 0;  width: 80%; margin: 0 0 3px 0; display: block; }
fieldset legend { padding-top: 5px; }
fieldset legend, a.link-button { border-bottom: 1px solid #ddd; }
legend + * {
  -webkit-margin-top-collapse: separate;
  margin-top: 10px;
}

legend { color: #999; }

ul.list { margin: 5px ; padding: 0; list-style-position: inside; }
ul.list li { margin: 0; padding: 3px 0 ;}

div.account a { font-size: 12px; }

ul.flat { list-style-type: none;  }
ul.flat li { display: block; float: left;  	}

a.selected { background-color: #F6F6F6; font-weight: bold; font-size: 10.5px;  color: #2276BB !important;	}
a.selected:hover { background-color: #abc; text-decoration: none; }

span.selected { color: #fff; }

p.text { line-height: 20px; font-size: 13px;}

div.listing span {
	padding: 1px 7px; line-height: 16px; font-size: 12px; border: 1px solid #ccc;
	background-color: #fff; display: inline-block;
	margin: 0 2px;
}

div.listing a {
	padding: 1px 7px; line-height: 16px; font-size: 12px; border: 1px solid #ccc;
	background-color: #eee; display: inline-block;
	margin: 0 2px;
}

/* menu flat */
div.menu-flat { height: 25px; }
div.menu-flat ul { list-style-type: none;  }
div.menu-flat ul li { display: block; float: left; line-height: 20px; padding: 0 8px;  }

/* tabels */

table.tab-wide {	}
table.tab-wide td {	padding: 5px 5px; }

.w1 { width: 100%; }
.w50 { width: 50px }
.w100 { width: 100px }
.w70 { width: 70px }

/* right */

div.right {display: inline; float: left; }


/* form standard */

.form-base .form-item {
	margin-bottom: 10px;
}
.form-base .form-element,
.form-base .form-help,
.form-base .form-error {
	margin-left: 150px;
}

.form-base .form-element input {
	margin-bottom: 0;
}
.form-base .form-element select {
	width: auto;
}

.form-base .form-help {
	font-size: 11px;
	color: #666;
}

.form-base .form-label {
	float: left;
	width: 140px;
	padding-top: 0;
	text-align: right;

}

.form-base .form-label xlabel {
	font-weight: normal;
	line-height: 18px;

	font-size: 14px;
	color: #789;
	margin-top: 5px;
	margin-top: 3px;
	font-family: Ubuntu, sans-serif;
}

.form-base .form-error { font-size: 1em; font-weight: 100; color: #c00; }

/* form new, client */

.form-new { /* width: 600px; */; margin-bottom: 15px; }
.form-new label {

} /* 135 offer,add.html */
label.larger {width: 100%; }

.form-new label.normal { margin: auto; float: none; }

.form-new div.form-line {
	/* width: 630px; */
	margin-bottom: 5px; clear: left;
}
.form-new div.form-line label {  text-align: right;   }
.form-new div.form-line input, .form-new div.form-line select {  padding: 3px;  margin-bottom: 5px; }
.form-new div.form-line select { width: auto; }
.form-new div.form-line input.submit { padding: 5px 11px 4px 11px; }

.form-new div.checkbox2 label { text-align: left; font-weight: normal; }

.form-new small { margin-left: 130px; clear: both; display: block; font-size: 10px; }
.form-new desc { margin-top: 7px; clear: both; display: block; font-size: 10px; }
.form-new p {/* width: 560px;*/  margin-bottom: 15px; }

.form-base .form-label label,
.form-new label {

	margin-left: 0;
    margin-right: 5px;    padding-top: 0;
	/* width: 90px; */

	text-align: right;
	display: block;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: bold;
	color: #122B53;
}
.form-new label {
	float: left;
}

/* #client_form div.form-line label { width: 95px; } */
div.client_form div.form-line label { width: 95px; }
#user_form div.form-label label { width: 144px ; }
#product_form div.form-label label  { width: 150px ; }

div.form-line input.simplebox {  width: 40%; min-width: 70px; margin:0;  outline: none;  border:none !important;  box-shadow:none !important; }

.form-config label { width: 140px; }
.form-config input.submit { margin-left: 145px; }


/* campaign box line */

.form-new div.form-line-box {
	margin-bottom: 5px; clear: left;
}
.form-new div.form-line-box label {
	float: left; width: 22%;}
.form-new div.form-line-box input { width: 75%; }


/* box error/info box */

div.box2 { padding: 10px 5px ; border: 2px solid #ECEBEA; background-color: #FBFAF9}


/* login */

div.recovery { float: left; margin: 9px; border: 1px solid #eee; padding: 10px;  }


/* clear */

div.clear {clear: both; float: none; height: 1px; font-size: 1px;}


/* errors */

p.error { line-height: 20px; color: #c00; }
div.error-info { font-weight: bold; color: #c00; line-height: 18px; margin-bottom: 10px; }
input.form_error { border:1px solid #f00 !important;  }
select.form_error { border:1px solid #f00 !important;  }
label.form_error { color: #f00; }

label.required { color: #293; font-weight: bold; font-size: 12px; }


/* span texts info */

.info { font-size: 12px;   font-weight: bold;   margin: 5px 0; }
.nowrap { white-space: nowrap; }

.sp1 { font-size: 1.1em; color: #567; font-weight: bold;  }
.sp2 { font-size: 1.2em; color: #567; font-weight: bold;  }
.sp3 { font-size: 1.3em; color: #567; font-weight: bold;  }

/* prices */

table.prices {}
table.prices td {border-bottom: 1px dotted #aaa; padding: 10px 0; }


/* main list table */

table.full-list { margin-bottom: 15px; border: 0; background-color: #fff; }
table.full-list tr.even td { background-color: #fafafa; background-color: rgba(243,243,243,.85); }
table.full-list th {text-align: left; padding: 2px 5px; border: 1px solid #F0F0F0; background-color:#ddd; background-color: #cde; }
table.full-list th a {  font-size: 12px; }

table.full-list td { border: 1px dotted #eee; padding: 5px 5px; font-size: 13px; }
table.full-list td a {  font-size: 13px; }
table.full-list tr.updatedRow td { background-color: #f9e9c9; }

table.full-list td.imp { color: #567; font-weight: bold; font-size: 13px; line-height: 28px;}

/* table */

table tr.sel td { background-color: #e9f4ff; border: 1px solid #abc; background-color: #fafaff;  }
table tr.sel td label { font-weight:bold; }

table tr.error td { background-color: #e9f4ff; border: 1px solid #a00; background-color: #fafaff;  }

td.hlt { font-weight: bold; }

table tr.clickable td { cursor: pointer; }
table tr.clickable:hover td { background-color: #cde; }

/* import - sample row */

table.import-sample { }
table.import-sample td { border: 1px solid #eee; padding: 2px 10px; background-color: #fff; }


/* table - dashboard small */

table.small-list { width: 100%; }
table.small-list td { border: 1px solid #eee; padding: 2px 5px; font-size: 12px; }
table.small-list td a { font-size: 12px; display: block; }


/* search box */

.box { z-index: 109;  padding: 2px; margin: 0;
		background-color: #bcd;	   border: 1px solid #789;
	    position: absolute; top: 100px; left: 0;
	    -moz-border-radius: 3px;	   -webkit-border-radius: 3px;	   border-radius: 3px;
	   }

.shadow {
	-webkit-box-shadow: 0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.5);
  	-moz-box-shadow: 0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.5);
	box-shadow: 0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.5);
	box-shadow: 0 4px 12px rgba(0,0,0,.7),inset 0 1px 10px rgba(77,77, 77,.5);
	}

.rounded { -moz-border-radius: 3px;	   -webkit-border-radius: 3px;	   border-radius: 3px; }

li.search-item { padding: 5px;  border-bottom: 1px dotted #abc; background-color: #fff }
li.search-item-selected { background-color: #ddd }
li.note-item { border-left: 2px solid #fff; }
li.note-item a { font-size: 12px }

a.list-element { color: rgb(51, 51, 51); font-size: 12px; font-family: Arial, sans-serif; display: block; padding: 2px; }
a.list-element:hover { text-decoration: none; background-color: #eee; background-color: #e7eef5; }
a.list-selected { background-color: #e0e3ee;  }


#{* note *}

.note-red { color: #d00; font-weight: bold; }
.note-item { clear: both; }

#{* board *}


div.box-plugin { float: left; width: 100%; margin: 2px 2px 10px 2px; border: 1px solid #eee; padding: 10px;  }
div.box-bg { background-color: #eaf2f7; background-color: #f1f4f4; border: 1px solid #e0e3e4; }
div.box-width { width: 470px; }
div.box-spaced { margin: 20px 10px 0 0; padding: 5px 10px; }


span.like-label, label.inline-list {
	padding: 0px 4px 0px 4px; margin: 2px 10px 4px 0;
	border: 1px solid #ccc;	border-radius: 3px;
	background-color: #f4f4f4; color: #000; }
span.like-label { }

label.inline-list { padding-left: 24px;  display: inline-block; }
label.inline-list-checked { color: #fff; background-color: #789; border: 1px dotted #678;  }
label.inline-list-radio { padding-left: 6px;  display: inline-block; }
input[type="radio"] {
    vertical-align: top;
    margin-top: 5px;
}

.row-spaced { margin-top: 15px;}

.higher { height: 230px; }


/* article  */

.features-box p {
	font-size: 14px;
	color: #4a5860;
	line-height: 22px;
	font-family: 'Lucida Grande', Helvetica, Verdana, sans-serif;
}

/* group tag on clients list */

.group-item { width: 108px; padding: 2px 5px; margin:0; border: 1px solid  #fafafa; float: left; color: #333; font-size: 12px; }
.group-item:hover { border: 1px solid #4d90fe; background-color: rgba(0,0,0,.1); text-decoration: none; }

.row-inline { display: inline-block; vertical-align: top; }

.menu-active  { background-color: #fb5642}
.tag-small { background-color: #edf6f7; border: 1px solid #cae0ee; color: #3a8fba; font-size: 11px;
	float: left; margin: 2px 5px 2px 2px; padding: 0 2px;
	-webkit-border-radius: 0.3em;	-moz-border-radius: 0.3em;	border-radius: 0.3em; }
.tag-small span { margin-right: 3px; }
.tag-wrapper { margin-bottom:5px; width: 206px; border: 1px solid #ccc; display:inline-block; padding:0; cursor: text; }
.tag-prompt { position: absolute; top: 0; left:0; max-height: 200px; overflow-y: auto; width: 193px; background-color: #fff;
			padding: 2px; /* border: 1px solid #789; */
					}
.tag-prompt-item { cursor: pointer; display: block; padding: 2px 5px; color: #3a8fba;
font-size: 11px; border: 1px solid #ccc; margin: 2px; background-color: #edf6f7;
border: 1px solid #cae0ee; -webkit-border-radius: 0.3em; -moz-border-radius: 0.3em; border-radius: 0.3em; }

.line-text { display: inline-block; padding: 6px; }

.secondary { font-size: 12px; color: #666; line-height: 18px; margin-bottom: 15px; }
.primary { font-size: 13px; color: #444; line-height: 20px; margin-bottom: 15px;  }
.welcome { color: #a2a19f; line-height: 1.6; margin-bottom: 40px; }


/* label on filter */

.label-filter {
		vertical-align: top;
		margin-bottom: 0;
		line-height: 20px; }

/* report - campaign view */

.stats-badge { float: left;
	padding: 5px 10px; margin: 5px 15px 5px 0;
	font-size: 14px; color: #666; font-weight: bold; border: 1px solid #ccc;
	border-radius: 10px
	}
.badge-number { background-color: #eee; color: #444; font-size: 14px; padding: 2px 5px; }

.report-section { margin-bottom: 15px; padding-bottom: 10px; border-bottom: 1px solid #ccc; }
.report-title { font-size: 16px; margin-bottom: 7px; font-weight: bold; color: #999;}
.report-text { color: #777; font-weight: 400; margin-bottom: 10px;
	font-size: 13px; font-family: 'Open Sans',"Helvetica Neue",Helvetica,Arial,sans-serif }
span.sub-info { color: #444; font-weight: bold }


/* sort icons on list */

.sort1, .sort2 { display: inline-block; content: "";
	width: 0; height: 0; margin-left: 3px; vertical-align: middle;
	border-right: 4px solid transparent; border-left: 4px solid transparent;
	border-top: 4px solid #000000;
}
.sort2 { border-top: 0; border-bottom: 4px solid #000000; }

/* board */

div.board-details { margin-top: 5px; background-color: #fff; }

.hltText { font-size: 26px; font-weight: normal; color: #777; line-height: 32px;  vertical-align: top; margin-right: 15px; }


/* ckeditor changes */

.cke_button__maximize_label { display: inline important!; font-weight: bold important!;  }

.cke_top { padding: 3px 3px 0 3px; }

/* input shadow */

input.shadow {
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border linear .2s, box-shadow linear .2s;
  -moz-transition: border linear .2s, box-shadow linear .2s;
  -o-transition: border linear .2s, box-shadow linear .2s;
  transition: border linear .2s, box-shadow linear .2s;
}

/* text for more visible input, ie add to cart or change price */
input.cart-add {
    padding: 4px;
    font-weight: bold;
    font-size: 15px;
    width: 45px
}

/**/
.email-preview {}
.email-preview ul { margin: 5px ; padding: 0; list-style-position: inside; }
.email-preview ul li { margin: 0; padding: 3px 0 ;}

/* file uploader */
.fbox.has-advanced-upload {  background-color: white;
    outline: 2px dashed #666;
    outline-offset: -10px;  width: 140px;
    height: 60px;}
.fbox.has-advanced-upload .box__dragndrop { display: inline;}

.box__dragndrop,
.box__uploading,
.box__success,
.box__error {
    display: none;
}
.fbox.is-dragover {
    background-color: grey;
}
.box__file {
    width: 0.1px; height: 0.1px;  opacity: 0;  overflow: hidden; position: absolute;  z-index: -1;
}

.box__input label {
    font-weight: bold;   padding: 15px;
}
.fbox.is-uploading .box__uploading {
    display: block;
}

/* global */

.navbar a.brand { margin-right: 2px; font-family: 'Rokkitt', sans-serif;  color: #e0ecf1;
        color: #eee; background-color: #c55; line-height: 27px;  font-weight: 700;
		background-color: #456; color: #cc0;
}

.alert-info { font-size: 1.1em; }

.h50 { height: 50px; }
.h150 { height: 150px; }

.cancel { margin-left: 10px; line-height: 26px; }

.tar { text-align: right; }

.mr10 { margin-right: 10px; }
.mr5 { margin-right: 10px; }
.mb20 { margin-bottom: 20px; }
.mb10 { margin-bottom: 10px !important; }
.mb0 { margin-bottom: 0; }
.mt10 { margin-top: 10px; }
.mt0 { margin-top: 0 !important; }
.mt5 { margin-top: 5px; }

.grayed { background-color: #e9e9e9; border: #e6e6e6; }
.greened { background-color: #eafaea; border: 1px solid #009900; }
.blued { background-color: #eaeafa; border: 1px solid #000099; }

.sml { font-size: 15px; font-weight: normal; line-height: 32px; }
.smla { font-weight: normal; line-height: 22px; font-size: 13px; }
.cart {
	border: 1px solid #eee; padding: 10px;
}
.recom { border: 1px solid #ffdd00;}
.recom td { background-color: #fafbff; }

@media print {.noprint {display:none;} }
@media print { a[href]:after { content: none !important; }}
@page
{
    size: auto;   /* auto is the initial value */

    /* this affects the margin in the printer settings */
    margin: 20mm 20mm 20mm 20mm;
}

/* bottom sticky icon menu */
body.has-bottom-menu {
    /* leave space for the bar + iOS safe area */
    padding-bottom: calc(56px + env(safe-area-inset-bottom));
}
.bottom-sticky-menu {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 56px;
    background: #fff;
    border-top: 1px solid #ddd;
    display: flex;
    justify-content: space-around;
    align-items: center;
    z-index: 2000; /* above navbar and other UI */
    box-shadow: 0 -2px 6px rgba(0,0,0,.08);
    width: 100%;
    padding-bottom: env(safe-area-inset-bottom);
    -webkit-transform: translateZ(0); /* avoid iOS repaint glitches */
    transform: translateZ(0);
    color: #1F2937; /* icons and labels color */
}
.bottom-sticky-menu .bottom-item .bottom-item-text{
	margin-bottom: 5px;
}
.bottom-sticky-menu .bottom-item {
    flex: 1 1 33.33%;
    text-align: center;
    font-size: 12px;
	line-height: 1.1;
    padding: 4px 2px 6px;
    color: inherit;
}
.bottom-sticky-menu .bottom-item svg {
    display: block;
    width: 24px;
    height: 24px;
    margin: 0 auto 3px;
    stroke: currentColor;
}
.bottom-sticky-menu .bottom-item span { display: block; }
.bottom-sticky-menu .bottom-item:hover,
.bottom-sticky-menu .bottom-item:focus {
    color: #345;
}

/* Ensure collapsed nav can expand properly on small screens */
.navbar .nav-collapse.in { height: auto !important; }

.yellow-b1 {
	background-color: #ff0;
	background-color: #FACC15;
	background-color: #ffd024;
	padding: 2px 5px;
	font-size: 18px;
	border-radius: 5px; font-weight: normal;
}
a.yellow-b1 {
	color: #1F2937;
	display: block; line-height: 1.1
}

.block-on-desktop { display: block; }
.flex-on-mobile { display: none; }


/* Optional: remove bottom borders that visually double up in grid rows */
.products-list .product-item {
	border-bottom: 1px solid #eee;
}

.cart-added {
	background-color: #eafaea; border-radius: 5px; padding: 5px;
	font-weight: normal; font-size: 14px; margin-top: 6px;
}

.product-edits { margin-top: 5px; text-align: right; background-color: #f3f3f3; border-radius: 5px; padding: 4px 6px; }
.product-title {
	font-size: 16px; line-height: 20px; color: #333; font-weight: bold; display: inline-block;
}
.product-novelty {
	position: absolute; top: 0; left: 0; background: #ff0; color: #000; padding: 2px 5px; font-size: 11px; font-weight: bold; z-index: 5;
}
.product-gratis { font-weight: bold; background-color: #ff0; color: #000; display: inline-block; padding: 2px 4px; margin-top: 4px; }

button.close { margin-top: -3px;}

.cart-controls .submit-ok-green { font-size: 20px;}

.client-info {
		display: flex; align-items: center; gap: 0.75rem; background: var(--bgl);
	padding: 8px; border-radius: var(--radius); box-shadow: var(--shadow-sm); border: 1px solid var(--border-color);
}
.client-card {
	padding: 6px;
	background: var(--card-bg);
	xborder-radius: var(--radius-md);
	xbox-shadow: var(--shadow-sm);
	xborder: 1px solid var(--border-color);
}
.client-card-foot {
	border-bottom: 1px solid var(--border-color); padding-top: 8px; display: flex; justify-content: space-between; align-items: center;
}

input.search {
	width: 100%; padding: 5px 25px; height: 30px;
	border-radius: 12px; border: 1px solid #E5E7EB;
	background-color: #FFFFFF;
	font-size: 15px;
	box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);outline: none; box-sizing: border-box;
}
.search-icon {
	position: absolute; left: 6px; top: 44%; transform: translateY(-50%); color: #6B7280; pointer-events: none;
}

.edit-mode { display: none;}


/* edit mode Toggle Switch */

.switcher {
	position: relative;
	display: inline-block;
	width: 40px;
	height: 22px;
	vertical-align: middle;
	margin-right: 10px;
}

.switcher input {
	opacity: 0;
	width: 0;
	height: 0;
}

.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .4s;
	transition: .4s;
	border-radius: 22px;
}

.slider:before {
	position: absolute;
	content: "";
	height: 16px;
	width: 16px;
	left: 3px;
	bottom: 3px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
	border-radius: 50%;
}

input:checked + .slider {
	background-color: #2196F3;
}

input:focus + .slider {
	box-shadow: 0 0 1px #2196F3;
}

input:checked + .slider:before {
	-webkit-transform: translateX(18px);
	-ms-transform: translateX(18px);
	transform: translateX(18px);
}

.edit-mode-label {
	vertical-align: middle;
	font-weight: normal;
	margin-right: 15px;
	cursor: pointer;
	display: inline-block;
}

#invite_user {
	width: 90%;
	padding: 8px 8px;
	border: 1px solid var(--border-color);
	border-radius: 6px;
	font-size: 16px;
	transition: border-color 0.2s, box-shadow 0.2s;
	box-sizing: border-box;
	background: #fff;
	height: auto;
}

.warn-info { display:none; font-size: 12px; padding: 6px 10px; color: #b45309; background: #FFFBEB; border: 1px solid #FDE68A; }

/* two-rows variant for sticky menu (mobile) */
@media (max-width: 924px) {
    .bottom-sticky-menu.with-top-row {
        xheight: 102px; /* two rows */
        height: auto; /* two/three rows */
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }
    .bottom-sticky-menu.with-top-row .top-row {
        text-align: center;
        border-bottom: 1px solid #eee;
        flex: 0 0 46px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fff;
    }
    .bottom-sticky-menu.with-top-row .bottom-row {
        display: flex;
        flex: 1 1 auto;
        align-items: center;
        justify-content: space-around;
        background: #fff;
    }
    .bottom-sticky-menu.with-top-row .top-row .submit.submit-ok {
        font-size: 14px;
        padding: 8px 12px;
        line-height: 1.1;
    }

	.flex-on-mobile { display: flex; }
	.block-on-desktop { display: none; }
	.mhide { display: none; }
	div.box-width { width: 100%; }
	.navbar {margin-bottom: 10px;}
	.search-container { width: 100% }
	div.box-plugin {box-sizing: border-box;}

	div.form-line label.send_invitation {
		text-align:left;
	}
}

/*
  Desktop: show two products side-by-side inside products-list
  Mobile/tablet: keep single column
*/
@media (min-width: 925px) {
	.dhide { display: none; }

	/* Use CSS Grid for reliable two-column layout */
	.products-list {
		display: grid;
		grid-template-columns: 1fr 1fr; /* two equal columns */
		column-gap: 16px;
		row-gap: 12px;
	}

	/* Ensure product items adapt to grid cells */
	.products-list .product-item {
		width: auto; /* override potential width constraints */
		float: none; /* neutralize floats if any */
	}
	.search-container { width: 400px }
}

@media (min-width: 1224px) {
	.md70 { width: 70%; }

	.products-list {
		grid-template-columns: 1fr 1fr 1fr; /* two equal columns */

	}
}

/* between 1024 and 1224 */
@media (min-width: 924px) and (max-width: 1224px) {
	.md70 { width: 70%; }
	.order-summary-info { width: 24%; }

}

/* Unit Switcher */
.unit-switcher {
    display: inline-flex;
    background-color: #f0f0f0;
    border-radius: 20px;
    padding: 2px;
    width: fit-content;
    margin-bottom: 6px;
}

.unit-switcher .switch-label {
    position: relative;
    cursor: pointer;
    margin: 0;  padding: 0;
    display: flex; /* Ensure proper alignment if needed, though block is fine inside flex items usually */
}

.unit-switcher .switch-label input[type="radio"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

.unit-switcher .switch-option {
    display: block;
    padding: 4px 12px;
    font-size: 13px;
    color: #666;
    border-radius: 18px;
    transition: all 0.2s ease;
    user-select: none;
    line-height: 1.2;
}

.unit-switcher .switch-label input[type="radio"]:checked + .switch-option {
    background-color: #2196F3;
    color: #fff;
    font-weight: 500;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
