//////////////////////////////////////// ////////////// - Imports - ///////////// //////////////////////////////////////// @import "constants"; //////////////////////////////////////// //////////// - Variables - ///////////// //////////////////////////////////////// //////////////////////////////////////// ////////////// - Cards - /////////////// //////////////////////////////////////// .card { padding: 20px; border-radius: 3px; background-color: white; display: flex; flex-direction: row; align-items: flex-start; gap: 15px; transition: all 0.2s ease-out; border: 1px solid fade(@slate_200, 90%); position: relative; opacity: 1; //////////////////////////////////////// //////////////////////////////////////// &:hover { box-shadow: 0 0 20px -10px fade(@slate_500, 50%); border: 1px solid fade(@slate_400, 30%); } &.col { flex-direction: column; } &.no-hover:hover { box-shadow: none; border: 1px solid fade(@slate_200, 90%); } //////////////////////////////////////// //////////////////////////////////////// &.primary-bg { background-color: fade(@main_color, 5%); border-color: fade(@main_color, 20%); .title { color: darken(@main_color, 20%); } } &.green-bg { background-color: fade(@sec_color, 5%); border-color: fade(@sec_color, 20%); .title { color: darken(@sec_color, 20%); } } &.blue-bg { background-color: fade(@blue_color, 5%); border-color: fade(@blue_color, 20%); .title { color: darken(@blue_color, 20%); } } &.gray-bg { background-color: fade(@slate_500, 5%); border-color: fade(@slate_500, 20%); } &.light-gray-bg { background-color: fade(@slate_300, 10%); border-color: fade(@slate_300, 40%); } //////////////////////////////////////// //////////////////////////////////////// &.primary { border-left: 5px solid @main_color; .title { color: darken(@main_color, 20%); } &:hover { border-left: 5px solid @main_color; } } &.green { border-left: 5px solid @sec_color; .title { color: darken(@sec_color, 20%); } &:hover { border-left: 5px solid @sec_color; } } &.blue { border-left: 5px solid @blue_color; .title { color: darken(@blue_color, 20%); } &:hover { border-left: 5px solid rgb(37 99 35); } } &.gray { border-left: 5px solid @slate_500; .title { color: darken(@slate_500, 20%); } &:hover { border-left: 5px solid @slate_500; } } &.light-gray { border-left: 5px solid @slate_300; .title { color: darken(@slate_300, 20%); } &:hover { border-left: 5px solid @slate_300; } } //////////////////////////////////////// //////////////////////////////////////// .content-block, .card-content, .content { display: flex; flex-direction: column; gap: 10px; align-items: flex-start; } .title { font-weight: 600; color: @slate_800; font-size: 20px; color: @slate_800; } //////////////////////////////////////// //////////////////////////////////////// @media @media_md { & { flex-wrap: wrap; } &.col { flex-wrap: nowrap; } } @media @media_sm { & { padding: 10px; } } } //////////////////////////////////////// //////////////////////////////////////// html.dark .card { background-color: @slate_800; border: 1px solid fade(@slate_200, 10%); color: @slate_400; //////////////////////////////////////// //////////////////////////////////////// &:hover { box-shadow: 0 0 20px -10px @slate_900; border: 1px solid fade(@slate_200, 30%); } &.no-hover:hover { box-shadow: none; border: 1px solid fade(@slate_400, 10%); } //////////////////////////////////////// //////////////////////////////////////// &.primary-bg { background-color: fade(@main_color, 5%); border-color: fade(@main_color, 20%); .title { color: lighten(@main_color, 20%); } } &.green-bg { background-color: fade(@sec_color, 5%); border-color: fade(@sec_color, 20%); .title { color: lighten(@sec_color, 20%); } } &.blue-bg { background-color: fade(@blue_color, 5%); border-color: fade(@blue_color, 20%); .title { color: lighten(@blue_color, 20%); } } &.gray-bg { background-color: fade(@slate_500, 5%); border-color: fade(@slate_500, 20%); .title { color: lighten(@slate_500, 20%); } } &.light-gray-bg { background-color: fade(@slate_300, 10%); border-color: fade(@slate_300, 40%); .title { color: lighten(@slate_300, 20%); } } //////////////////////////////////////// //////////////////////////////////////// &.primary { border-left: 5px solid @main_color; .title { color: lighten(@main_color, 20%); } &:hover { border-left: 5px solid @main_color; } } &.green { border-left: 5px solid @sec_color; .title { color: lighten(@sec_color, 20%); } &:hover { border-left: 5px solid @sec_color; } } &.blue { border-left: 5px solid @blue_color; .title { color: lighten(@blue_color, 20%); } &:hover { border-left: 5px solid rgb(37 99 35); } } &.gray { border-left: 5px solid @slate_500; .title { color: lighten(@slate_500, 20%); } &:hover { border-left: 5px solid @slate_500; } } &.light-gray { border-left: 5px solid fade(@slate_300, 30%); .title { color: lighten(@slate_300, 20%); } &:hover { border-left: 5px solid fade(@slate_300, 30%); } } //////////////////////////////////////// //////////////////////////////////////// .title { color: white; } &.svg-inherit svg { color: fade(white, 60%); } // &.svg-main svg { // color: lighten(@main_color, 15%); // } } //////////////////////////////////////// ///////////// - Avatars - ////////////// //////////////////////////////////////// .avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; background-color: @slate_100; position: relative; &.small { width: 30px; height: 30px; } &.large { width: 60px; height: 60px; } &.outlined { outline: 5px solid fade(@slate_400, 50%); } //////////////////////////////////////// //////////////////////////////////////// .sub-img { width: 14px; height: 14px; overflow: hidden; position: absolute; z-index: 200; bottom: -2px; right: -2px; background-color: white; outline: 3px solid white; border-radius: 50%; } .sub-img img, img.sub-img { width: 14px; height: 14px; overflow: hidden; object-fit: cover; } } html.dark .avatar { background-color: @slate_300; &.outlined { outline: 5px solid fade(@slate_100, 5%); } .sub-img { background-color: @slate_800; outline-color: @slate_800; } } //////////////////////////////////////// ///////////// - Sections - ///////////// //////////////////////////////////////// .paper { padding: 20px; border-radius: 5px; background-color: white; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 20px; border: 1px solid fade(@slate_400, 30%); //////////////////////////////////////// //////////////////////////////////////// &.primary-bg { background-color: fade(@main_color, 5%); border-color: fade(@main_color, 20%); .title { color: darken(@main_color, 20%); } } &.green-bg { background-color: fade(@sec_color, 5%); border-color: fade(@sec_color, 20%); .title { color: darken(@sec_color, 20%); } } &.blue-bg { background-color: fade(@blue_color, 5%); border-color: fade(@blue_color, 20%); .title { color: darken(@blue_color, 20%); } } &.gray-bg { background-color: fade(@slate_500, 5%); border-color: fade(@slate_500, 20%); .title { color: darken(@slate_500, 20%); } } &.light-gray-bg { background-color: fade(@slate_300, 10%); border-color: fade(@slate_300, 40%); .title { color: darken(@slate_300, 20%); } } //////////////////////////////////////// //////////////////////////////////////// &.primary { border-left: 5px solid @main_color; .title { color: darken(@main_color, 20%); } } &.green { border-left: 5px solid @sec_color; .title { color: darken(@sec_color, 20%); } } &.blue { border-left: 5px solid @blue_color; .title { color: darken(@blue_color, 20%); } } &.gray { border-left: 5px solid @slate_500; .title { color: darken(@slate_500, 20%); } } &.light-gray { border-left: 5px solid @slate_300; .title { color: darken(@slate_300, 20%); } } //////////////////////////////////////// //////////////////////////////////////// @media @media_sm { padding: 15px 10px; } } //////////////////////////////////////// //////////////////////////////////////// html.dark .paper { background-color: @slate_800; border: 1px solid fade(@slate_400, 20%); color: white; //////////////////////////////////////// //////////////////////////////////////// &.primary-bg { background-color: fade(@main_color, 5%); border-color: fade(@main_color, 20%); .title { color: lighten(@main_color, 50%); } } &.green-bg { background-color: fade(@sec_color, 5%); border-color: fade(@sec_color, 20%); .title { color: lighten(@sec_color, 50%); } } &.blue-bg { background-color: fade(@blue_color, 5%); border-color: fade(@blue_color, 20%); .title { color: lighten(@blue_color, 20%); } } &.gray-bg { background-color: fade(@slate_500, 5%); border-color: fade(@slate_500, 20%); .title { color: lighten(@slate_500, 20%); } } &.light-gray-bg { background-color: fade(@slate_300, 10%); border-color: fade(@slate_300, 40%); .title { color: lighten(@slate_300, 20%); } } //////////////////////////////////////// //////////////////////////////////////// &.primary { border-left: 5px solid @main_color; .title { color: lighten(@main_color, 20%); } } &.green { border-left: 5px solid @sec_color; .title { color: lighten(@sec_color, 20%); } } &.blue { border-left: 5px solid @blue_color; .title { color: lighten(@blue_color, 20%); } } &.gray { border-left: 5px solid @slate_500; .title { color: lighten(@slate_500, 20%); } } &.light-gray { border-left: 5px solid @slate_300; .title { color: lighten(@slate_300, 20%); } } //////////////////////////////////////// //////////////////////////////////////// svg { color: white; } } //////////////////////////////////////// ////////// - Colored Circles - ///////// //////////////////////////////////////// .notification { width: 10px; height: 10px; border-radius: 50%; background-color: @slate_300; &.success { background-color: @sec_color; } } //////////////////////////////////////// ////////////// - Symbols - ///////////// //////////////////////////////////////// .symbol { line-height: 0; font-size: 28px; color: inherit; font-weight: 300; } //////////////////////////////////////// /////////////// - Logo - /////////////// //////////////////////////////////////// .logo { display: flex; align-items: center; gap: 10px; .logo-text { font-size: 19px; font-weight: 700; } } html.dark .logo { .logo-text { color: white; } } //////////////////////////////////////// /////////////// - Popup - ////////////// //////////////////////////////////////// .popup-bg { display: none; align-items: flex-start; justify-content: center; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 800; background-color: rgba(9, 16, 37, 0.8); padding: 20px; overflow-y: auto; @media @media_md { & { align-items: flex-start; } } } .popup-content-container { padding: 20px; background-color: white; border-radius: 3px; max-width: 450px; width: 100%; display: flex; flex-direction: column; align-items: center; position: relative; z-index: 10; margin-top: auto; margin-bottom: auto; max-height: calc(100vh - 40px); overflow-y: auto; } html.dark .popup-content-container { background-color: @slate_800; } .popup-canceller { position: absolute; z-index: 0; top: 0; left: 0; width: 100%; height: 100%; } .popup-cancel-button { position: absolute; top: 15px; right: 15px; width: 30px; height: 30px; padding: 0; border-radius: 50%; z-index: 2000; &:hover { opacity: 0.6; background-color: transparent; } } //////////////////////////////////////// //////////// - Info Block - //////////// //////////////////////////////////////// .info { display: flex; align-items: center; flex-direction: row; gap: 10px; justify-content: flex-start; padding: 7px 15px; background-color: fade(@main_color, 10%); border: 1px solid fade(@main_color, 40%); border-radius: 3px; color: darken(@main_color, 10%); width: 100%; font-weight: 600; font-size: 13px; //////////////////////////////////////// //////////////////////////////////////// .icon { width: 20px; height: 20px; object-fit: cover; } //////////////////////////////////////// //////////////////////////////////////// &.green { background-color: fade(@sec_color, 10%); border: 1px solid fade(@sec_color, 40%); color: darken(@sec_color, 10%); } &.gray { background-color: fade(@slate_300, 10%); border: 1px solid fade(@slate_300, 40%); color: @slate_700; } &.warning, &.orange { background-color: fade(@warning_color, 10%); border: 1px solid fade(@warning_color, 40%); color: darken(@warning_color, 30%); } //////////////////////////////////////// //////////////////////////////////////// &.small { font-size: 12px; padding: 5px 10px; } &.tiny { font-size: 10px; padding: 5px 10px; } } html.dark .info { background-color: fade(@main_color, 10%); border: 1px solid fade(@main_color, 40%); color: lighten(@main_color, 10%); //////////////////////////////////////// //////////////////////////////////////// &.green { background-color: fade(@sec_color, 10%); border: 1px solid fade(@sec_color, 40%); color: lighten(@sec_color, 10%); } &.gray { background-color: fade(@slate_600, 30%); border: 1px solid fade(@slate_600, 70%); color: @slate_300; } &.warning, &.orange { background-color: fade(@warning_color, 10%); border: 1px solid fade(@warning_color, 40%); color: lighten(@warning_color, 5%); } } //////////////////////////////////////// //////////// - Color Card - //////////// //////////////////////////////////////// .color-card { padding: 40px; background-color: lighten(@main_color, 52%); border-radius: 10px; display: flex; flex-direction: column; align-items: flex-start; gap: 20px; overflow: hidden; position: relative; text-align: left; .image-block { width: 100%; height: 250px; position: relative; overflow: hidden; margin-bottom: -40px; border-radius: 10px 10px 0 0; box-shadow: 0px 5px 40px rgba(0, 0, 0, 0.2); margin-top: 20px; img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: top left; } } &.green { background-color: lighten(@sec_color_2, 50%); } @media (@media_md) { padding: 20px; .image-block { height: 250px !important; } } } html.dark .color-card { h2, h3, h4 { color: black; } span, p { color: @slate_600; } } //////////////////////////////////////// //////////// - Contained Section - //////////// //////////////////////////////////////// .contained-section { padding: 60px; background-color: @slate_900; border-radius: 10px; display: flex; align-items: center; justify-content: space-between; gap: 20px; overflow: hidden; position: relative; height: 400px; width: 100%; .content { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; width: 40%; } .image-block { position: relative; height: calc(100% + 40px); overflow: hidden; bottom: -40px; border-radius: 10px 10px 0 0; width: 500px; img { position: absolute; top: 0; left: 0; width: 100%; object-fit: cover; } } & > div { position: relative; z-index: 10; } &.purple { background-color: rgb(43, 5, 61); } @media (@media_xl) { flex-direction: column; height: auto !important; padding: 30px; .content { width: 100%; } .image-block { width: 100%; height: 300px; } } @media (@media_xs) { padding: 20px; } } html.dark .contained-section { background-color: @slate_800; } //////////////////////////////////////// ////////////// - Modal - /////////////// //////////////////////////////////////// .modal-wrapper { .stack; position: fixed; z-index: 2000000; align-items: center; justify-content: center; width: 100%; height: 100%; top: 0; left: 0; .modal-cancel { background-color: fade(@slate_800, 90%); width: 100%; height: 100%; z-index: 0; position: absolute; top: 0; left: 0; } .modal-content { .stack; background-color: white; padding: 20px; position: relative; z-index: 10; border-radius: 5px; max-width: 400px; width: 100%; .modal-cancel-button { position: absolute; top: 10px; right: 10px; padding: 5px; } } }