.controls-side-panel {
	
	height: 100%;
	overflow-y: auto;
	min-width: 300px;
	width: 300px;
	
}

.controls-panel-section {
	
/* 	width: 300px; */
	height: 100%;
	border-left: 1px solid #2a2a2a;
}

.control-panel-header,.control-panel-footer {
	
	padding: 15px;
	display: none;
	justify-content: space-between;
	align-items: center;
}

.control-header-sticky {
	
	background: #0d0d0d;
    position: sticky;
    top: 0;
    z-index: 1;
    border-bottom: 1px solid #2a2a2a;
    margin-bottom: 15px;
    padding: 0px;
    height: 49px;
}

.control-header-back {
	
	display: none;
}

.control-header-sticky > .control-header-back {
	
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	cursor: pointer;
	width: 44px;
	min-width: 44px;
}

.control-header-sticky > .control-options {
	
	width: 44px;
	height: 100%;
	border-radius: 0px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	padding: 0px;
	min-width: 44px;
}

.control-header-sticky > .control-title {
	
	width: 100%;

}

.control-panel-footer {
	
	border-top: 1px solid #2a2a2a;
	position: sticky;
	bottom: 0px;
	background: var(--header-bg-color);
}

.control-title {
	
	font-size: 14px;
	font-weight: 500;
	word-break: break-word;
}

.control-options {
	
	padding: 8px;
	width: 20px;
	border-radius: 5px;			
	cursor: pointer;
}

/*
.control-options:hover {
	
	background: #555;
}
*/

.control-remove {
	
	padding: 8px;
	border-radius: 5px;			
	cursor: pointer;
	color: red;
	font-size: 14px;
	font-weight: 500;
}

.control-remove:hover {
	
	background: #333;
}


/* IMAGE CONTROL START */

.box-control {
	
	padding: 15px;
	padding-top: 5px;
	padding-bottom: 20px;
	position: relative;
}

.control-name {
	
	font-size: 13px;
	margin-bottom: 8px;
}

.image-upload {
	
	border-radius: 8px;
	border:1px solid #2a2a2a;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 70px;
	cursor: pointer;
	background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    flex-direction: column;
    padding-top: 15px;
    padding-bottom: 15px;
    gap:15px;
}

.image-upload:hover {
	
	background-color: #111;
}

.image-upload-btn {
	
	padding: 8px;
	background: #333;
	color: white;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
}

.image-upload-btn:hover {
	
	background: #555;
}

.image-control-dismiss {
	
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 8px;
	width: 20px;
	border-radius: 8px;
	position: relative;
	cursor: pointer;
}

.image-control-holder{
	
	display: none;
	align-items: center;
	gap:10px;
	width: calc(100% - 30px);
	padding-left: 15px;
	padding-right: 15px;
	border-bottom: 1px solid #333;
	padding-bottom: 15px;
	
}

.image-control-text{
	
	word-break:break-word;
	font-size: 13px;
}

.image-control-img {
	
	width: 30px;
	min-width: 30px;
	height: 30px;
	border-radius: 8px;
	object-fit:cover;
	background: #000;
	border:1px solid #333;
}

/* IMAGE CONTROL END */


/* SEGMENT CONTROL START */

.segment-control {
	
	display: flex;
	justify-content: space-between;
	overflow: hidden;
	background: #222;
	border-radius: 8px;
}

.segment-text-btn {
	
	display: flex;
	justify-content: center;
	align-items: center;
	color: white;
	font-size: 13px;
	border-radius: 8px;
	padding: 8px;
	width: 100%;
	cursor: pointer;
}

.segment-text-btn:hover{
	
	background: #333;
}

.segment-text-btn-active {
	
	background: #555;
}

.segment-text-btn-active:hover {
	
	background: #555;
}

/* SEGMENT CONTROL END */



/* CUSTOM SELECT CONTROL START */

.custom-select-input-holder {
	position: relative;
}

.custom-select-active-icon {
	
	display: none;
    align-items: center;
    justify-content: center;
    position: absolute;
    height: 100%;
    top: 0px;
    width: 40px;
    font-size: 14px;
}

.dismiss-custom-select-items {
	
	position: absolute;
    display: none;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    border: 1px solid gray;
    border-radius: 50%;
    min-width: 16px;
    min-height: 16px;
    top: calc(50% - 9px);
    right: 5px;
    cursor: pointer;
}

.dismiss-custom-select-items:hover {
	
	background: #555;
}

.simple-input-custom-active {
	
	padding-left: 40px !important;
	padding-right: 40px !important;
	width: calc(100% - 82px) !important;
}

.input-controls {
	
	display: flex;
    flex-direction: column;
    background: #222;
    border-radius: 8px;
}

.controls-item {
	
	display: flex;
	font-size: 13px;
	gap:15px;
	align-items: center;
	margin: 8px;
}


.item-control {
	
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	border-radius: 8px;
	background: #333;
	min-width: 25px;
	width: 25px;
    height: 25px;
}

.full-item-control {
	
	width: 100%;
	height: 100%;
	background: none;
	justify-content: flex-end;
}

.custom-select {
  position: relative;
  display: inline-block;
}

.select-selected {
  
  padding: 8px 16px;
  border: 1px solid #3f3f3f;
  border-radius: 4px;
  cursor: pointer;
}

.select-items {
  display: none;
  position: absolute;
  background-color:#333;
  box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
  z-index: 1;
  max-height: 400px;
  overflow-y: auto;
}

.select-item {
  padding: 8px 15px;
  display: block;
  cursor: pointer;
}

.select-item:hover {
  background-color: #444;
}

.item-control-active {
	
	background: #000;
	color: var(--main-bright-accent);
}

.custom-select-holder {
	
	display: none;
	flex-direction: column;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #444;
    background: #222;
    position: absolute;
    bottom: 60px;
    width: calc(100% - 30px);
    z-index: 1;
/*
    max-height: 339.50px;
    overflow-y: auto;
*/
}

.custom-select-item {
	
    display: flex;
    width: calc(100% - 20px);
    padding: 10px;
    align-items: center;
    font-size: 14px;
    cursor: pointer;
    border-bottom: 1px solid #333;
    gap:10px;
	
}

.custom-select-item:hover {
	
	background: #333;
}

.custom-select-item-active {
	
	background: #333;
}

.custom-select-item-active > .custom-select-icon {
	
	color: var(--main-accent-color);
}

.custom-select-icon {
	
	display: flex;
	align-items: center;
	justify-content: center;
}

/* CUSTOM SELECT CONTROL START */

/* SIMPLE SELECT/INPUT START */


/* SIMPLE SELECT/INPUT START */

.simple-select,.simple-input {
	
	background: #222;
    color: white;
    width: calc(100% - 16px);
    padding: 8px;
    border-radius: 8px;
    border: 1px solid #3f3f3f;
    font-size: 13px;
    outline-color: var(--main-accent-color);
/*     position: relative; */
}

.simple-select {
	
	cursor: pointer;
}


.simple-input-full  {
	
	border:none;
	border-top: 1px solid #3f3f3f;
	border-radius: 0px;
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
}

.simple-input {
	
	width: calc(100% - 16px);
}

.simple-flex-box {
	
	display: flex;
	align-items: center;
}

.simple-color-input {
	
	margin-right: 15px;
    width: 80px;
    border-radius: 8px;
    background: #222;
    height: 33px;
    padding: 3px;
    border: 1px solid #3f3f3f;
    cursor: pointer;

}

.color-picker-holder {
	
	cursor: pointer;
	position: relative;
}

.color-preview-circle {
	
	width: 30px;
	height: 30px;
	border-radius: 50%;
	
	position: relative;
	cursor: pointer;
	background-image: url(data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAQDAwMDAwQDAwQGBAMEBgcFBAQFBwgGBgcGBggKCAkJCQkICgoMDAwMDAoMDA0NDAwRERERERQUFBQUFBQUFBT/2wBDAQQFBQgHCA8KCg8UDg4OFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAoACgDAREAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAUGCP/EACIQAQAABQMFAQAAAAAAAAAAAAAFFUNjgqLB4RESEzVRkf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwDv4AE6K0stgTgAaIAE6K0stgTgAUZra1cATW1q4A9na8WXXu/PgEqu6eQJVd08gnAAowqrjuCiADOgAowqrjuCiAD/2Q==);
    background-repeat: repeat;
    background-size: 15px;
  
}

.color-preview-small {
	
	width: 100%;
	height: 100%;
	position: absolute;
	top: -1px;
	left: -1px;
	border: 1px solid #9f9f9f;
	border-radius: 50%;
}

.input-slider-control {
	
	margin-right: 15px;
    width: 100%;
    border-radius: 8px;
    background: #222;
    height: 33px;
    accent-color: white;
    height: 1px;
    border: 1px solid #3f3f3f;
    cursor: pointer;
}



.input-box-holder {
	
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width:100px;
}

.input-box-holder > .simple-input {
	
	padding-right: 35px;
}

.input-box-holder > .simple-input::-webkit-outer-spin-button,
.input-box-holder > .simple-input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

.input-box-holder > .simple-input[type=number] {
    -moz-appearance:textfield; /* Firefox */
}

.input-label {
	
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 0px;
	font-size: 12px;
	color: #a9a9a9;
	margin-right: 15px;
}

.checkbox-label {
	
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	color: #a9a9a9;
	margin-left: 10px;
}

.input-control-container {
	
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	width: 100%;
	height: 33px;
/* 	background: red; */
}

.input-checkbox-control {
	
	cursor: pointer;
	height: 22px;
	width: 16px;
	accent-color:var(--main-accent-color);
	pointer-events: none;
}

.input-checkbox-holder {
	
	display: flex;
	align-items: center;
	cursor: pointer;
}

/* SIMPLE SELECT/INPUT END */


/* RICH TEXT START */
.quill-holder {
	
	border-radius: 8px;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}

.ql-container.ql-snow{
	
	border: 1px solid #3f3f3f !important;
}

.ql-toolbar.ql-snow {
	
	background: #222;
	border: 1px solid #3f3f3f !important;
	padding-right: 0px !important;
	border-top-left-radius:8px;
	border-top-right-radius:8px;
}


.ql-editor { 
	
	font-size: 14px !important;
}

.ql-picker-options {
	
	border:1px solid #3f3f3f !important;
	background: #222 !important;
}

/* RICH TEXT END */


.section-container {
	
	padding: 55px;
	position: relative;
	display: flex;
	justify-content: center;
	max-width:  var(--main-max-width);;
	margin-left: auto;
	margin-right: auto;
}

.full-flex-section {
	
	max-width: 100%;
	
}

.flex-section-container {
	
	position: relative;
	display: flex;
	justify-content: center;
	max-width:  var(--main-max-width);;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.section-half-left {
	
	display: flex;
	justify-content: center;
	align-items: center;
	width:auto;
	position: relative;
	width: 50%;
}

.section-half-left-cursor {
	
	cursor: pointer;
}

.section-half-right {
	
	display: flex;
	justify-content: center;
/* 	align-items: center; */
	flex-direction: column;
	width: 50%;
	padding-left: 40px;
	padding-right: 40px;
	position: relative;
}

.section-half-img {
	
	width: 100%;
	height:100%;
	aspect-ratio:2920/2080;
	object-fit:cover;
	border-radius: 8px;
	overflow: hidden;
	border-style: solid;
	border-width: 0px;
}

.section-half-img[src=""] {
	
	height: 200px;
	display: none;
}

.circle-play-btn {
	
	width: 45px;
	height: 45px;
	background: var(--main-accent-color);
	color: white;
	border-radius: 50%;
	position: absolute;
	display: none;
	justify-content: center;
	align-items: center;
}

.section-half-title {
	
/* 	text-align: center; */
	font-size: 26px;
}


.section-half-bio {
	
/* 	text-align: center; */
	font-size: 18px;
	margin-top: 15px;
}

.section-half-bio > p {
	
	margin: 0px;
}

/* // SIMPLE BUTTON START */

.simple-btn {
	
	padding: 8px;
    border-radius: 8px;
    padding-left: 15px;
    padding-right: 15px;
    background: #444;
    font-size: 13px;
    text-align: center;
    cursor: pointer;
    
}

.simple-btn:hover {
	
	background: #555;
}

/* // SIMPLE BUTTON END */

/* SIMPLE PADDING START */

.dot-padding-input-group {
	
	width: 100%;
	flex-basis:calc(50% - 5px);
}

.dot-padding-section {
	
  display: flex;
  font-size: 12px;
  flex-wrap: wrap;
  gap:10px;
}

.dot-padding-label {
 
  display: block;
  margin-bottom: 5px;
  margin-top: 5px;
}

.dot-padding-input {
  
  border-radius: 8px;
  padding: 0px;
  border: 1px solid #333;
  background-color: #222;
  color: #eee;
  font-size: 13px;
  width:100%;
  height: 33px;
  text-indent: 10px;
  outline-color: var(--main-bright-accent);
  
}

/*

SIMPLE PADDING END
*/


.link-holder {
	
	display: flex;
	flex-direction: column;
	gap:10px;
	justify-content: center;
	text-align: center;	
}

.link-item {
	
	font-size: 14px;
	color: white;
	display: flex;
	flex-direction: row;
	gap:10px;
	justify-content: center;
	background: #333;
	border-radius: 8px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-left: 5px;
	padding-right: 10px;
	position: relative;
	
}

.link-item-inner {
	
	display: flex;
	flex-direction: column;
	gap:10px;
	justify-content: center;
	width: 100%;
}

.add-quick-link {
	
	margin-top: 10px;
	
}

.remove-quick-link {
	
	width: 20px;
	height: 20px;
	min-width: 20px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	color:white;
	background:#111;
	cursor: pointer;
}

.font-stepper {
	
	display: inline-flex;
    align-items: center;
    background: #333;
    position: relative;
}

.step-num {
	
	display: flex;
    justify-content: center;
    align-items: center;
    width: 22px;
    height: 100%;
    font-size: 13px;
    cursor: pointer;
    position: relative;
}

.step-input {
	
	width: 50px;
    background: none;
    border: 1px solid #444;
    color: white;
    text-align: center;
    position: relative;
    font-size: 15px;
}