.lccp-el-wrap {
    position: relative;
    display: inline-block;
}
.lccp-hidden {
    display: none !important;
}
.lccp-wrap-full {
    width: 100%;
}
.lccp-pad-right > input:not([type="color"]) {
    padding-right: 35px;
}
.lccp-pad-left > input:not([type="color"]) {
    padding-left: 35px;
}
.lccp-el-wrap > input {
    margin: 0;
    min-width: 100%;
    max-width: 100%;
    width: auto;
}
.lccp-preview,
.lccp-preview-bg {
    display: inline-block;
    position: absolute;
    cursor: pointer;
    z-index: 15;
}
.lccp-preview-bg {
    z-index: 10;
}
.lccp-preview-right .lccp-preview { 
    border-left: 1px solid #ccc;
}
.lccp-preview-left .lccp-preview { 
    border-right: 1px solid #ccc;
}
.lccp-preview-right .lccp-preview,
.lccp-preview-right .lccp-preview-bg {
    width: 30px;
    right: 1px;
    top: 1px;
    height: calc(100% - 2px);
}
.lccp-preview-left .lccp-preview,
.lccp-preview-left .lccp-preview-bg {
    width: 30px;
    left: 1px;
    top: 1px;
    height: calc(100% - 2px);
}
.lccp-direct-cp-f {
    padding: 0 !important;
    margin: 0 !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute;
    bottom: 0;
    visibility: hidden;
}
.lccp-preview-right .lccp-direct-cp-f { 
    right: 0;
}
.lccp-preview-left .lccp-direct-cp-f{ 
    left: 0;
}
#lc-color-picker,
#lc-color-picker * {
    box-sizing: border-box;
    font-family: sans-serif;
}
#lc-color-picker {
    visibility: hidden;
    z-index: -100;
    opacity: 0;
    position: absolute;
    top: -9999px;
    z-index: 9999999999;
    width: 280px;
    background: #fff;
    box-shadow: 0px 2px 13px -2px rgba(0, 0, 0, .18);
    border-radius: 4px;
    overflow: hidden;
    padding: 10px;
    border: 1px solid #ccc;
    transition: opacity .15s ease;
}
#lc-color-picker.lccp-shown {
    visibility: visible;
    opacity: 1;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

#lccp_modes_wrap {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
    margin-bottom: 10px;
}
#lccp_modes_wrap span,
.pccp_circle_f_wrap span {
	display: inline-block;
	border: 1px solid #e8e8e8;
	background: #e8e8e8;
    opacity: .78;
	padding: 4px 7px;
	font-size: 11.5px;
	border-radius: 3px;
	line-height: normal;
    cursor: pointer;
    user-select: none; 
    transition: all .2s ease;
}
#lccp_modes_wrap span.lccp_sel_mode,
.pccp_circle_f_wrap span.pcpp_circle_btn_active {
	border: 1px solid #bbb;
	background: #fff;
    opacity: 1;
	cursor: default;
}
.lccp_gradient_wizard,
.lccp_gradient_ranges {
    position: relative;
}
.lccp_gradient {    
    height: 35px;
    border: 1px solid #aaa;
    cursor: crosshair;
    position: relative;
    z-index: 10;
    user-select: none;
}
.lccp_gradient-bg {
	position: absolute;
	top: 0;
	z-index: 0;
	width: 100%;
	margin: 0;
}
.lccp_gradient_ranges {
    margin: 2px 7px 25px 8px;
    height: 20px;
}
.lccp_gradient_range {
	display: inline-block;
	width: 13px;
	height: 13px;
	border: 1px solid #ccc;
	border-radius: 0 50% 50% 50%;
	transform: rotate(45deg) translate3d(-5px, 5px, 0);
	cursor: col-resize;
	position: absolute;
    top: 3px;
}
.lccp_gradient_range img {
	width: 13px;
	position: relative;
	top: 11px;
	left: 11px;
	opacity: .3;
	cursor: pointer;
    transition: all .2s ease;
}
.lccp_gradient_range img:hover {
    opacity: .5;
}
.lccp_sel_step {
    border: 1px solid #333;
    box-shadow: 0 0 2px 1px teal;
}
.pccp_deg_f_wrap,
.pccp_circle_f_wrap {
    margin-bottom: 10px;
}
.pccp_circle_f_wrap * {
    float: left;
}
.pccp_circle_f_wrap:after {
    content: "";
    clear: both;
    display: block;
}
.pccp_circle_f_wrap img {
    position: relative;
    top: 4px;
}
.pccp_circle_f_wrap span {
    margin-left: 13px;
}
.pccp_circle_f_wrap span:not(.pcpp_circle_btn_active) {
    cursr: pointer;
}
.pccp_deg_f_wrap,
.pccp_color_f_wrap,
.pccp_opacity_f_wrap {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    clear: both;
}
.pccp_deg_f_wrap input,
.pccp_color_f_wrap input,
.pccp_opacity_f_wrap input {
    border: 1px solid #aaa;
    border-radius: 3px;
    padding: 0;
}
.lccp-preview-bg,
.pccp_color_f_wrap div,
.lccp_gradient-bg {  
    background: url('data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAQDAwMDAwQDAwQGBAMEBgcFBAQFBwgGBgcGBggKCAkJCQkICgoMDAwMDAoMDA0NDAwRERERERQUFBQUFBQUFBT/2wBDAQQFBQgHCA8KCg8UDg4OFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBT/wAARCAAoACgDAREAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAUGCP/EACIQAQAABQMFAQAAAAAAAAAAAAAFFUNjgqLB4RESEzVRkf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/xAAUEQEAAAAAAAAAAAAAAAAAAAAA/9oADAMBAAIRAxEAPwDv4AE6K0stgTgAaIAE6K0stgTgAUZra1cATW1q4A9na8WXXu/PgEqu6eQJVd08gnAAowqrjuCiADOgAowqrjuCiAD/2Q==') repeat;
    background-size: 15px;
}
#lc-color-picker hr {
	margin: 14px 0 0;
	height: 0;
	border-width: 1px 0;
	border-style: dashed;
	border-color: #e3e3e3;
}
.pccp_color_f_wrap div {    
    width: calc(100% - 25px - 85px);
    height: 25px;
    border: 1px solid #aaa;
    border-radius: 2px;
    overflow: hidden;
}
.pccp_deg_f_wrap img,
.pccp_circle_f_wrap img,
.pccp_color_f_wrap img, 
.pccp_opacity_f_wrap img {
	max-width: 15px;
	opacity: .6;
    cursor: help;
    user-select: none;  
}
.pccp_color_f_wrap input[type=color] {   
    -webkit-appearance: none;
    padding: 0;
    width: 110%;
    height: 110%;
    transform: translate(-5%, -5%);
    cursor: pointer;
    border: none;
}
.pccp_color_f_wrap input:focus {
    outline: none;
}
.pccp_color_f_wrap input::-webkit-color-swatch-wrapper {
    padding: 0;
}
.pccp_color_f_wrap input::-webkit-color-swatch {
    border: none;
}
.pccp_color_f_wrap input[name=hex] { 
    width: 70px;
    height: 25px;
    text-align: center;
}
.pccp_color_f_wrap {
    margin-top: 17px;
}
.pccp_color_f_wrap.lccp-no-gradient {
    margin-top: 0;
}
.pccp_opacity_f_wrap {
    margin-top: 10px;
}
.pccp_deg_f_wrap input[type=range],
.pccp_opacity_f_wrap input[type=range] {
    width: calc(100% - 25px - 70px);
    height: 25px;
}
.pccp_deg_f_wrap input[type="number"],
.pccp_opacity_f_wrap input[type="number"] {
	width: 53px;
	height: 25px;
	text-align: center;
}
.pccp_deg_f_wrap input[type=range],
.pccp_opacity_f_wrap input[type=range] {
    -webkit-appearance: none;
    height: 5px;
    background: #d5d5d5;
    outline: none;
    border: none;
}
.pccp_deg_f_wrap input::-webkit-slider-thumb,
.pccp_opacity_f_wrap input::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 17px;
    height: 17px;
    background: #888;
    cursor: pointer;
    border-radius: 50%;
    border: 1px solid #aaa;
    box-shadow: 0 0 0 5px #fff inset, 0 0 2px rgba(0,0,0,.15);
}
.pccp_deg_f_wrap input::-moz-range-thumb,
.pccp_opacity_f_wrap input::-moz-range-thumb {
    width: 15px;
    height: 15px;
    background: #888;
    cursor: pointer;
    border-radius: 50%;
    border: 1px solid #aaa;
    box-shadow: 0 0 0 5px #fff inset, 0 0 2px rgba(0,0,0,.15);
}

#lc-color-picker.lccp_dark_theme {
    background: #333;
    border-color: #505050;
}
.lccp_dark_theme img {
	filter: invert(100%);
    opacity: .85;
}
.lccp_dark_theme .lccp_gradient_range img {
	opacity: .6;
}
.lccp_dark_theme .lccp_gradient_range img:hover {
    opacity: .8;
}
.lccp_dark_theme .lccp_gradient {
    border-color: #626262;
}
.lccp_dark_theme .lccp_sel_step {
	box-shadow: 0 0 2px 1px orange;
}
#lc-color-picker.lccp_dark_theme hr {
	border-color: #727272;
}
.lccp_dark_theme .pccp_deg_f_wrap input, 
.lccp_dark_theme .pccp_color_f_wrap input, 
.lccp_dark_theme .pccp_opacity_f_wrap input {
	border-color: #777;
	background: #505050;
	color: #f3f3f3;
}
.lccp_dark_theme input[type=range] {
    background: #808080;
}
