@use "sass:color"; @use "scheme"; @use "lib"; @use "font"; @mixin launcher($mode, $colour) { &.#{$mode} { .search-bar { .mode { @include lib.border($colour, $width: 2); } .entry { border-bottom: lib.s(2) solid $colour; } } .mode-switcher .mode { &.selected { border-top: lib.s(2) solid $colour; } &:hover, &:focus { color: $colour; } &:active { color: color.mix($colour, scheme.$base, 80%); } } } } .launcher { @include lib.rounded(10); @include lib.shadow; @include font.mono; background-color: scheme.$base; color: scheme.$text; padding: lib.s(14); font-size: lib.s(16); min-width: lib.s(700); min-height: lib.s(420); @include launcher(apps, scheme.$sapphire); @include launcher(files, scheme.$peach); @include launcher(math, scheme.$green); @include launcher(windows, scheme.$teal); .search-bar { margin-bottom: lib.s(15); @include lib.spacing(10); .mode { @include lib.rounded(5); @include lib.element-decel; padding: lib.s(5); } } .mode-switcher .mode { @include lib.element-decel; border-top: lib.s(2) solid transparent; padding-top: lib.s(10); .icon { font-size: lib.s(24); } & > box { @include lib.spacing(10); } } .result { @include lib.element-decel; border-bottom: lib.s(2) solid transparent; padding-left: lib.s(10); .icon { font-size: lib.s(32); } & > box { @include lib.spacing(10); } &:hover { background-color: scheme.$surface0; } &:focus { border-bottom: lib.s(2) solid scheme.$red; color: scheme.$red; } &:active { background-color: scheme.$surface1; } } .pinned-app { @include lib.rounded(5); font-size: lib.s(64); } .results { .icon { font-size: lib.s(32); } .empty { color: scheme.$subtext0; font-size: lib.s(18); padding: lib.s(10) 0; @include lib.spacing; .icon { color: scheme.$subtext0; } } .result { @include lib.rounded(10); font-size: lib.s(18); & > * { @include lib.spacing(8); } .has-sublabel { font-size: lib.s(16); .sublabel { color: scheme.$subtext0; font-size: lib.s(14); } } &.italic { font-style: italic; } } } }