// Colours $gray0: #f8f9fa; $gray1: #f1f3f5; $gray2: #e9ecef; $gray3: #dee2e6; $gray4: #ced4da; $gray5: #adb5bd; $gray6: #868e96; $gray7: #495057; $gray8: #343a40; $gray9: #212529; $gray10: #000000; $orange: #ff5200; // FontSizes based on Minor Third $t1: 25; $t2: 21; $t3: 17; $t4: 14; $t5: 12; // Base size $t6: 10; Page { font-family: 'Inter-Medium', sans-serif; font-size: $t4; } .ico { font-family: 'enrecipes'; font-size: 24; vertical-alignment: center; &.sm { font-size: $t3; opacity: 0.5; } } .tb { font-family: 'Inter-Bold', sans-serif; } .tac { text-align: center; } .tw { text-wrap: true; } .pageTitle { @extend .tb; @extend .tw; font-size: $t1; padding: 16 16 24; } .Light { color: $gray9; background: $gray1; Page, .filters, .sticky { background: $gray1; } TextField, TextView { border-color: $gray3; placeholder-color: $gray5; } .modalInput { border-color: $gray2; } .appbar, .modal { background: $gray0; } .fieldLabel, .sub { color: $gray6; } .imgHolder { color: $gray3; background: $gray2; } .snackBar { color: $gray1; background: $gray9; } .fab { color: #fff; } } .Dark { color: $gray1; background: $gray9; Page, .filters, .sticky { background: $gray9; } TextField, TextView { border-color: $gray8; placeholder-color: $gray6; } .modalInput { border-color: $gray7; } .appbar, .modal { color: $gray0; background: $gray8; } .fieldLabel, .sub { color: $gray5; } .imgHolder { color: $gray9; background: $gray10; } .snackBar { color: $gray9; background: $gray1; } .fab { color: $gray9; } } .Black { color: $gray2; background: $gray10; Page, .filters, .sticky { background: $gray10; } TextField, TextView { border-color: $gray9; placeholder-color: $gray7; } .modalInput { border-color: $gray8; } .appbar, .modal { color: $gray1; background: $gray9; } .fieldLabel, .sub { color: $gray6; } .imgHolder { color: $gray10; background: $gray9; } .snackBar { color: $gray10; background: $gray2; } .fab { color: $gray10; } } TextField.combField, #searchBar { border-color: transparent; } // ----------------------------- // Elements TextField, TextView { width: 100%; padding: 14 8; border-bottom-width: 1; } TextView { line-height: 4; } #searchBar { padding: 13 12; } .inputField { margin-bottom: 24; } .fieldLabel { font-size: $t5; } .progressContainer { width: 100%; } progress { color: $orange; width: 100%; height: 2; background-color: $gray5; } Switch { background-color: $orange; off-background-color: $gray5; } button { background-color: transparent; z-index: 0; padding: 8; border-radius: 12; min-width: 0; min-height: 0; &.ico { width: 48; height: 48; padding: 0; margin: 0; &:active { @extend .fade; } } &.text { @extend .tb; color: $orange; &:active { @extend .fade; } } &.big { margin-top: 8; padding: 16 0; } &.sm { font-size: $t5; padding: 12; } &.min { width: 40; height: 40; vertical-alignment: center; } &.fb:active { @extend .fade; } &.rate { margin: 0 4 0 0; width: 32; height: 32; &:active { @extend .fade; } } } ActivityIndicator { width: 24; height: 24; margin: 12; color: $orange; } // ----------------------------- // Home .segment { border-radius: 12; margin: 0 4 0 0; padding: 0 12; .value { padding: 0 0 0 8; vertical-alignment: center; &.r { padding: 0 8 0 0; transform: scaleX(-1); } } } .select { color: $orange; @extend .hl; } .emptyState { padding: 16 16 8; label { @extend .tw; } .title { @extend .tb; font-size: $t3; } } // ----------------------------- // Recipe Item .recipeItem { padding: 8 16; .recipeInfo { vertical-alignment: center; padding: 0 8 4; } .title { padding: 0 0 4; } } .attrs { orientation: horizontal; } .attr { font-size: $t6; padding: 1 4; } .simple .recipeInfo { padding: 8 0; } .minimal .title { padding: 0; } .grid { padding: 8; .recipeInfo { padding: 8 0 4; } &.odd { padding: 8 8 8 16; } &.even { padding: 8 16 8 8; } } .photogrid .recipeInfo { padding: 8 0 0; } .lastItem { margin-bottom: 128; } .selected { @extend .hl; } .unselected { background-color: transparent; } .imgHolder { border-radius: 12; } // ----------------------------- // CookingTimer .timer { padding: 8 16 0; .info { margin: 8 8 8 16; &.r { margin: 8 16 8 8; } } progress { margin: 8 0 0; } } // ----------------------------- // Settings .group-info { padding: 16 16 16 72; line-height: 4; &.r { padding: 16 72 16 16; } } .options { .option { vertical-align: center; padding: 14 16; .ico { width: 40; text-align: center; } .info { padding: 0 16; @extend .tw; } .sub { font-size: $t5; } } } .listSpace { height: 72; } // ----------------------------- // About .app-info { .icon { horizontal-alignment: center; } .name { font-size: $t2; } .info { padding: 8 16 24; line-height: 4; } } // ----------------------------- // ViewRecipe .photo { border-radius: 12; margin: 24 16 0 0; vertical-align: top; } .photoviewer { width: 96; height: 96; opacity: 0; background: #000; } .attribute { margin: 8 16; .sub { font-size: $t5; } .value { @extend .tb; @extend .tw; } } .ingredient { padding: 0 16; .value { @extend .tw; vertical-align: center; padding: 14 16; line-height: 4; } } .instruction { padding: 0 16; .count { @extend .tb; font-size: $t3; } .value { @extend .tw; padding: 14 16; line-height: 4; } } .done { opacity: 0.5; .value { text-decoration: line-through; } } .combination { @extend .tw; text-align: left; padding: 16; line-height: 4; } .note { @extend .tw; line-height: 4; padding: 16 0; } .dateInfo { padding: 32 16 16; font-size: $t5; line-height: 4; } // ----------------------------- // AppBar .appbar { z-index: 4; min-height: 56; margin: 8; padding: 4; border-radius: 16; .title { @extend .tb; @extend .tw; vertical-align: center; margin: 0 12; line-height: 4; } .msg { padding: 14 16; margin: 0; } .fab { margin-left: 8; } &.home { margin: 8 8 0; } } .sidebar { margin-bottom: 0; } .toolbar { z-index: 4; padding: 4; margin: 0 0 52; .tool { padding: 0 8; label { vertical-alignment: center; } .value, .ico { padding: 0 4; } } } .fab { border-radius: 12; background: $orange; } // ----------------------------- // EditRecipe .sectionTitle { @extend .tb; @extend .tw; font-size: $t2; padding: 0; margin: 32 0 16; } .sticky { width: 100%; padding: 0 16 16; margin: 0; } .countdown { font-size: $t3; color: $orange; } // ----------------------------- // MealPlanner .monthSwitcher { padding: 0 16; .month { vertical-alignment: center; text-align: center; font-size: $t3; } } .calendar { padding: 0 16; .dayName { vertical-alignment: center; text-align: center; font-size: $t5; } .accent.sub { color: rgba($orange, 0.5); } } .plans { padding: 8 16 80; width: 100%; .date { font-size: $t2; padding: 16 0; } .plan { padding: 8 0; } .meal { font-size: $t3; padding: 8 0; } .planContent { min-height: 48; padding: 8; } .attr { padding: 0; } } // ----------------------------- // Dialogs .modal { max-width: 320; width: 100%; border-radius: 12; margin: 72 0; .title { @extend .tb; @extend .tw; padding: 16; font-size: $t2; } .input { padding: 0 16 8; } .description { line-height: 4; padding: 0 16 8; } ListPicker { width: 30%; height: 144; margin: 16 0; } .listItem { letter-spacing: 0; text-transform: none; line-height: 4; padding: 13 16; margin: 0; background-color: transparent; } .shareItem { border-radius: 12; margin: 0 8 8; text-align: center; .ico { padding: 16 0 0; } .item { @extend .tw; padding: 8 16 16; } } .actions { padding: 4; } .filters { padding: 8; margin: 0 0 8; } } .noResInfo { @extend .tac; @extend .tw; padding: 16; line-height: 4; } // ----------------------------- // Transitions .hl { animation-name: hl; animation-duration: 0.2s; animation-fill-mode: forwards; animation-timing-function: ease; } @keyframes hl { 0% { background-color: transparent; } 100% { background-color: rgba($orange, 0.2); } } .fade { animation-name: fade; animation-duration: 0.2s; animation-fill-mode: forwards; animation-timing-function: ease; } @keyframes fade { 0% { opacity: 1; } 100% { opacity: 0.5; } } // ----------------------------- // Helpers .f { transform: scaleX(-1); } .accent { color: $orange; } .hal { horizontal-alignment: left; &.r { horizontal-alignment: right; } }