:root { --shadow-offset: 8px; --blur-radius: 16px; --is-inset: inherit; } .neomorph { box-shadow: calc(-1 * var(--shadow-offset)) calc(-1 * var(--shadow-offset)) var(--blur-radius) var(--light-shadow), var(--shadow-offset) var(--shadow-offset) var(--blur-radius) var(--dark-shadow); background-color: var(--background); &Inset { box-shadow: inset var(--shadow-offset) var(--shadow-offset) var(--blur-radius) var(--dark-shadow), inset calc(-1 * var(--shadow-offset)) calc(-1 * var(--shadow-offset)) var(--blur-radius) var(--light-shadow); background-color: var(--background); &.is-nxxsmall { --shadow-offset: 2px; --blur-radius: 4px; &-sm { @include MediaQuery(sm) { --shadow-offset: 2px; --blur-radius: 4px; } } &-md { @include MediaQuery(md) { --shadow-offset: 2px; --blur-radius: 4px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 2px; --blur-radius: 4px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 2px; --blur-radius: 4px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 2px; --blur-radius: 4px; } } } &.is-nxsmall { --shadow-offset: 3px; --blur-radius: 6px; &-sm { @include MediaQuery(sm) { --shadow-offset: 3px; --blur-radius: 6px; } } &-md { @include MediaQuery(md) { --shadow-offset: 3px; --blur-radius: 6px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 3px; --blur-radius: 6px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 3px; --blur-radius: 6px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 3px; --blur-radius: 6px; } } } &.is-nsmall { --shadow-offset: 6px; --blur-radius: 12px; &-sm { @include MediaQuery(sm) { --shadow-offset: 6px; --blur-radius: 12px; } } &-md { @include MediaQuery(md) { --shadow-offset: 6px; --blur-radius: 12px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 6px; --blur-radius: 12px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 6px; --blur-radius: 12px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 6px; --blur-radius: 12px; } } } } &.is-nxxsmall { --shadow-offset: 2px; --blur-radius: 4px; &-sm { @include MediaQuery(sm) { --shadow-offset: 2px; --blur-radius: 4px; } } &-md { @include MediaQuery(md) { --shadow-offset: 2px; --blur-radius: 4px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 2px; --blur-radius: 4px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 2px; --blur-radius: 4px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 2px; --blur-radius: 4px; } } } &.is-nxsmall { --shadow-offset: 3px; --blur-radius: 6px; &-sm { @include MediaQuery(sm) { --shadow-offset: 3px; --blur-radius: 6px; } } &-md { @include MediaQuery(md) { --shadow-offset: 3px; --blur-radius: 6px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 3px; --blur-radius: 6px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 3px; --blur-radius: 6px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 3px; --blur-radius: 6px; } } } &.is-nsmall { --shadow-offset: 6px; --blur-radius: 12px; &-sm { @include MediaQuery(sm) { --shadow-offset: 6px; --blur-radius: 12px; } } &-md { @include MediaQuery(md) { --shadow-offset: 6px; --blur-radius: 12px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 6px; --blur-radius: 12px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 6px; --blur-radius: 12px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 6px; --blur-radius: 12px; } } } &.is-nnormal { --shadow-offset: 8px; --blur-radius: 16px; &-sm { @include MediaQuery(sm) { --shadow-offset: 8px; --blur-radius: 16px; } } &-md { @include MediaQuery(md) { --shadow-offset: 8px; --blur-radius: 16px; } } &-lg { @include MediaQuery(lg) { --shadow-offset: 8px; --blur-radius: 16px; } } &-xl { @include MediaQuery(xl) { --shadow-offset: 8px; --blur-radius: 16px; } } &-2xl { @include MediaQuery(2xl) { --shadow-offset: 8px; --blur-radius: 16px; } } } } button.neo, .neo { &Btn { background-image: linear-gradient(145deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); border: none; -webkit-backface-visibility: hidden; backface-visibility: hidden; &:focus { background-image: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); border: none; } &Small { background-image: linear-gradient(145deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); border: none; &:focus { background-image: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); border: none; &:not(:active) { background-image: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); } & input[type=file] { background-image: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); } } @include MediaQuery(phone) { &-mobile { background-image: linear-gradient(145deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); border: none; &:focus { background-image: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); border: none; &:not(:active) { background-image: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); } } } } &Plain { background: var(--background); box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); border: none; &:focus { box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); border: none; } @include MediaQuery(phone) { &-mobile { box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); border: none; &:focus { box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); border: none; } } } } &InsetPlain { background-image: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; &:focus { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; } @include MediaQuery(phone) { &-mobile { background-image: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; &:focus { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; } } } } &XInsetPlain { background-image: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); border: none; &:focus { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); border: none; } @include MediaQuery(phone) { &-mobile { background-image: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); border: none; &:focus { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); border: none; } } } } } &InsetPlain { background-image: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; &:focus { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; &:not(:active) { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); } } @include MediaQuery(phone) { &-mobile { background-image: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; &:focus { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); border: none; &:not(:active) { background-image: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); } } } } } } &File { box-shadow: 0px 0px 0px var(--light-shadow), 0px 0px 0px var(--dark-shadow); transition: all .2s linear; -webkit-backface-visibility: hidden; backface-visibility: hidden; @include MediaQuery(phone) { box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); background: var(--primary-color); } &:hover { box-shadow: -3px -3px 6px var(--light-shadow), 3px 3px 6px var(--dark-shadow); } &:focus-visible { background: linear-gradient(-45deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); outline: none; } &.isSelected { background: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); &:focus-visible { background: linear-gradient(-45deg, var(--primary-gradiend-lighter), var(--primary-gradiend-darker)); outline: none; } } &.is-active, &.active { box-shadow: inset 3px 3px 6px var(--dark-shadow), inset -3px -3px 6px var(--light-shadow); color: var(--black); } } &Input { box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); background: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); border: none; &:focus { background: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); border: none; } } &Select { & > select { box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); background: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); border: none; &:focus { background: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)); border: none; } } } } .neoCheckbox { opacity: 0; width: 0; &:focus + label:before { background: linear-gradient(145deg, var(--primary-gradiend-darker), var(--primary-gradiend-lighter)) !important; } &Container { position: relative; } & + label { padding: .15rem .15rem .15rem 2rem; cursor: pointer; font-size: 1rem; line-height: 1.5; &:before { animation-name: none; width: 1.5rem; height: 1.5rem; border-radius: 100px; position: absolute; left: 0; top: 0rem; content: ''; border: none; box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); background: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)) !important; } } &:checked.is-checked-bold + label { font-weight: bold } &:checked + label:after { display: inline-block; width: .375rem; height: .6rem; top: .35rem; left: .55rem; transform: translateY(0rem) rotate(45deg); border-width: .1rem; border-top-width: 0.1rem; border-left-width: 0.1rem; border-style: solid; border-top-style: solid; border-left-style: solid; border-color: var(--text-color); border-top: 0; border-left: 0; position: absolute; content: ''; } } hr.neoSeparator { &Flat { height: 10px; border: none; border-radius: 20px; box-shadow: -2px -2px 4px var(--light-shadow), 2px 2px 4px var(--dark-shadow); background: var(--background); } &Pressed { height: 10px; border: none; border-radius: 20px; box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); background: linear-gradient(145deg, var(--primary-gradiend-dark), var(--primary-gradiend-light)); } } input.neoRange[type=range] { height: 30px; -webkit-appearance: none; width: 100%; background: transparent; &:focus { outline: none; } &::-webkit-slider-runnable-track { width: 100%; height: 20px; cursor: pointer; animate: 0.2s; border-radius: 20px; box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); background: linear-gradient(90deg, hsl(0, 90%, 80%), hsl(10, 90%, 80%), hsl(20, 90%, 80%), hsl(30, 90%, 80%), hsl(40, 90%, 80%), hsl(50, 90%, 80%), hsl(60, 90%, 80%), hsl(70, 90%, 80%), hsl(80, 90%, 80%), hsl(90, 90%, 80%), hsl(100, 90%, 80%), hsl(110, 90%, 80%), hsl(120, 90%, 80%), hsl(130, 90%, 80%), hsl(140, 90%, 80%), hsl(150, 90%, 80%), hsl(160, 90%, 80%), hsl(170, 90%, 80%), hsl(180, 90%, 80%), hsl(190, 90%, 80%), hsl(200, 90%, 80%), hsl(210, 90%, 80%), hsl(220, 90%, 80%), hsl(230, 90%, 80%), hsl(240, 90%, 80%), hsl(250, 90%, 80%), hsl(260, 90%, 80%), hsl(270, 90%, 80%), hsl(280, 90%, 80%), hsl(290, 90%, 80%), hsl(300, 90%, 80%), hsl(310, 90%, 80%), hsl(320, 90%, 80%), hsl(330, 90%, 80%), hsl(340, 90%, 80%), hsl(350, 90%, 80%), hsl(359, 90%, 80%)) !important; } &::-webkit-slider-thumb { border: none; height: 26px; width: 26px; border-radius: 20px; box-shadow: 2px 2px 4px var(--dark-shadow), -2px -2px 4px var(--light-shadow); background: linear-gradient(145deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)) !important; cursor: pointer; -webkit-appearance: none; margin-top: -3px; } &:focus::-webkit-slider-runnable-track { background: linear-gradient(90deg, hsl(0, 90%, 80%), hsl(10, 90%, 80%), hsl(20, 90%, 80%), hsl(30, 90%, 80%), hsl(40, 90%, 80%), hsl(50, 90%, 80%), hsl(60, 90%, 80%), hsl(70, 90%, 80%), hsl(80, 90%, 80%), hsl(90, 90%, 80%), hsl(100, 90%, 80%), hsl(110, 90%, 80%), hsl(120, 90%, 80%), hsl(130, 90%, 80%), hsl(140, 90%, 80%), hsl(150, 90%, 80%), hsl(160, 90%, 80%), hsl(170, 90%, 80%), hsl(180, 90%, 80%), hsl(190, 90%, 80%), hsl(200, 90%, 80%), hsl(210, 90%, 80%), hsl(220, 90%, 80%), hsl(230, 90%, 80%), hsl(240, 90%, 80%), hsl(250, 90%, 80%), hsl(260, 90%, 80%), hsl(270, 90%, 80%), hsl(280, 90%, 80%), hsl(290, 90%, 80%), hsl(300, 90%, 80%), hsl(310, 90%, 80%), hsl(320, 90%, 80%), hsl(330, 90%, 80%), hsl(340, 90%, 80%), hsl(350, 90%, 80%), hsl(359, 90%, 80%)) !important; } &::-moz-range-track { width: 100%; height: 20px; cursor: pointer; border-radius: 20px; box-shadow: inset 2px 2px 4px var(--dark-shadow), inset -2px -2px 4px var(--light-shadow); background: linear-gradient(90deg, hsl(0, 90%, 80%), hsl(10, 90%, 80%), hsl(20, 90%, 80%), hsl(30, 90%, 80%), hsl(40, 90%, 80%), hsl(50, 90%, 80%), hsl(60, 90%, 80%), hsl(70, 90%, 80%), hsl(80, 90%, 80%), hsl(90, 90%, 80%), hsl(100, 90%, 80%), hsl(110, 90%, 80%), hsl(120, 90%, 80%), hsl(130, 90%, 80%), hsl(140, 90%, 80%), hsl(150, 90%, 80%), hsl(160, 90%, 80%), hsl(170, 90%, 80%), hsl(180, 90%, 80%), hsl(190, 90%, 80%), hsl(200, 90%, 80%), hsl(210, 90%, 80%), hsl(220, 90%, 80%), hsl(230, 90%, 80%), hsl(240, 90%, 80%), hsl(250, 90%, 80%), hsl(260, 90%, 80%), hsl(270, 90%, 80%), hsl(280, 90%, 80%), hsl(290, 90%, 80%), hsl(300, 90%, 80%), hsl(310, 90%, 80%), hsl(320, 90%, 80%), hsl(330, 90%, 80%), hsl(340, 90%, 80%), hsl(350, 90%, 80%), hsl(359, 90%, 80%)) !important; border: none; } &::-moz-range-thumb { border: none; height: 26px; width: 26px; border-radius: 20px; box-shadow: 2px 2px 4px var(--dark-shadow), -2px -2px 4px var(--light-shadow); background: linear-gradient(145deg, var(--primary-gradiend-light), var(--primary-gradiend-dark)) !important; cursor: pointer; } }