@font-face {
    font-family: "Lato";
    src: url("fonts/Lato-Regular.ttf");
}

body,
p,
h1,
h2,
input {
    margin: 0;
    font-family: "Lato", sans-serif;
}
body {
    overflow: hidden;
}
a {
    color: inherit;
    text-decoration: none;
}

/* CLEAN OPTION */
.clean .toolbar,
.clean.darkMode .toolbar {
    border-bottom: 1px solid rgba(0, 0, 0, 0);
}
.clean .toolbar p:not(#clean_button),
.clean #app_buttons {
    opacity: 0.1;
}

.clean .inputs input,
.clean .value,
.clean .slider {
    opacity: 0;
}

/**
 * TOOLBAR
 */
.toolbar {
    margin: 3px;
    padding: 10px 20px 13px 20px;
    position: relative;
    display: flex;
    z-index: 10000;
    box-sizing: border-box;
    -webkit-app-region: drag;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    transition: border-bottom 0.4s;
}
.darkMode .toolbar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.toolbar p {
    color: rgba(0, 0, 0, 0.3);
    font-weight: bold;
    cursor: default;
    display: inline-block;
    margin-right: 30px;
    cursor: pointer;
    transition: 0.3s;
}
.toolbar p:hover {
    color: rgba(0, 0, 0, 0.4);
}
.toolbar .active {
    color: rgba(0, 0, 0, 0.5);
}
.darkMode p {
    color: rgba(255, 255, 255, 0.32);
}
.darkMode p:hover {
    color: rgba(255, 255, 255, 0.4);
}
.darkMode .active {
    color: rgba(255, 255, 255, 0.5);
}
.toolbar p::selection,
.toolbar li::selection,
.toolbar div::selection {
    background: rgba(0, 0, 0, 0);
}
.toolbar #home {
    position: absolute;
    z-index: 15;
    top: 10px;
    right: 10px;
    margin: 0;
    padding: 0;
    height: 100%;
}

/**
  * HEADER CSS
  */
header {
    position: absolute;
    z-index: 100;
    width: 100%;
    top: -10px;
    visibility: hidden;
    opacity: 0;
    transition: 0.6s;
}
header.shading {
    visibility: visible;
    opacity: 1;
    top: 46px;
}
header .shades,
header .tints,
header .naturals {
    display: flex;
}
header .shades aside,
header .tints aside,
header .naturals aside {
    flex: 1 100%;
    height: 10vmin;
    cursor: pointer;
}

/**
 * BOX COLORPICKER CSS
 */
.main {
    position: absolute;
    z-index: 200;
    bottom: 10px;
    left: 0;
    padding-top: 15px;
    padding-bottom: 3px;
    padding-left: 10px;
    width: 100%;
    text-align: center;
    display: flex;
    align-items: flex-end;
}

#red_bar,
#green_bar,
#blue_bar {
    margin: 0 15px;
    margin-top: 23px;
    margin-bottom: 15px;
    width: 210px;
}

.slider {
    transition: opacity 0.4s;
}
.noUi-connect {
    border-radius: 20px;
}

#red_bar .noUi-connect {
    background: rgb(255, 87, 57);
}
#green_bar .noUi-connect {
    background: rgb(105, 195, 59);
}
#blue_bar .noUi-connect {
    background: rgb(65, 165, 225);
}

/* INPUTS STYLE */
.inputs {
}
.inputs input {
    display: block;
    margin-bottom: 8px;
    margin-left: 10px;
}

.inputs input[type="number"]::-webkit-inner-spin-button,
.inputs input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

.inputs input[type="number"],
input[type="text"] {
    width: 40px;
    text-align: center;
    background: rgba(0, 0, 0, 0.08);
    color: rgba(0, 0, 0, 0.5);
    border: none;
    padding: 2px;
    font-size: 1.05em;
    font-weight: bold;
    outline: none;
    transition: 0.3s;
}
.darkMode .inputs input[type="number"],
.darkMode input[type="text"],
.darkMode .value p {
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.8);
}

.value {
    margin-bottom: 9px;
    margin-left: 10px;
    transition: opacity 0.4s;
}
.value input {
    display: block;
    width: 105px;
}

/* SLIDERS UI */

.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.noUi-base {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
    /* Fix 401 */
}
.noUi-connect {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
}
.noUi-origin {
    position: absolute;
    height: 0;
    width: 0;
}
.noUi-handle {
    position: relative;
    z-index: 1;
}
.noUi-state-drag * {
    cursor: inherit !important;
}
.noUi-base,
.noUi-handle {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.noUi-horizontal {
    height: 10px;
}
.noUi-horizontal .noUi-handle {
    width: 22px;
    height: 22px;
    left: -10px;
    top: -6px;
    border-bottom: 2px solid #f3f3f3;
}
.noUi-target {
    background: white;
    border-radius: 20px;
}
.noUi-handle {
    border-radius: 20px;
    background: white;
    cursor: pointer;
}

/**
 * RESPONSIVE CSS
 */
@media screen and (max-width: 700px) {
    .main {
        padding-left: 0;
    }
    .inputs input {
        margin-left: 1px;
        margin-bottom: 9px;
        margin-top: 20px;
    }
    #red_bar,
    #green_bar,
    #blue_bar {
        margin-left: 20px;
        width: 150px;
        margin-top: 30px;
    }
    .noUi-horizontal {
        height: 15px;
    }
    .noUi-horizontal .noUi-handle {
        width: 27px;
        height: 27px;
        left: -10px;
        top: -6px;
        border-bottom: 2px solid #f3f3f3;
    }
}

/**
 * VIEWPORT CSS
 */
@viewport {
    zoom: 1;
    width: extend-to-zoom;
}
@-ms-viewport {
    zoom: 1;
    width: extend-to-zoom;
}
