nosignal-shell/scss/widgets.scss
2025-01-16 18:47:23 +11:00

208 lines
3.7 KiB
SCSS

@use "sass:color";
@use "scheme";
@use "lib";
@use "font";
* {
selection {
background-color: color.change(scheme.$overlay2, $alpha: 0.3);
}
& {
caret-color: scheme.$rosewater;
}
}
label.icon {
@include font.icon;
}
.notification {
.inner {
@include lib.rounded(8);
@include font.main;
background-color: scheme.$base;
color: scheme.$text;
padding: lib.s(10) lib.s(12);
@include lib.spacing($vertical: true);
}
.header,
.content {
padding: 0 lib.s(5);
}
.header {
@include font.mono;
@include lib.spacing(8);
}
.content {
@include lib.spacing(10);
}
.app-icon {
font-size: lib.s(18);
}
.image {
@include lib.rounded(10);
background-size: cover;
background-position: center;
min-width: lib.s(64);
min-height: lib.s(64);
margin-top: lib.s(3);
}
.summary {
@include font.title;
font-size: lib.s(16);
}
.body {
font-size: lib.s(14);
}
.actions {
@include lib.spacing;
& > * {
@include lib.rounded(5);
@include lib.element-decel;
padding: lib.s(5) lib.s(10);
background-color: scheme.$surface0;
&:hover,
&:focus {
background-color: scheme.$surface1;
}
&:active {
background-color: scheme.$surface2;
}
}
}
}
separator,
.separator {
@include lib.rounded(2);
min-width: lib.s(0.5);
min-height: lib.s(0.5);
}
@keyframes appear {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@mixin -appear($duration: 100ms) {
animation-name: appear;
animation-duration: $duration;
animation-timing-function: ease-out;
animation-iteration-count: 1;
}
menu {
@include -appear;
@include lib.rounded(5);
@include lib.border(scheme.$blue, 0.7);
@include font.main;
padding: lib.s(10);
background-color: scheme.$surface0;
color: scheme.$text;
& > menuitem {
@include lib.rounded(8);
padding: lib.s(8) lib.s(16);
background: transparent;
transition: 0.2s ease background-color;
&:hover,
&:focus {
background-color: scheme.$surface1;
}
&:active {
background-color: scheme.$surface2;
}
&:disabled {
color: scheme.$subtext0;
}
& > arrow {
@include lib.rounded(1000);
min-width: lib.s(5);
min-height: lib.s(5);
background-color: scheme.$blue;
&.right {
margin-left: lib.s(12);
}
&.left {
margin-right: lib.s(12);
}
}
}
& > separator {
background-color: scheme.$blue;
margin: lib.s(8) 0;
}
}
tooltip,
.tooltip {
@include lib.rounded(5);
@include lib.border(scheme.$teal, 0.7);
@include font.reading;
background-color: scheme.$surface0;
color: scheme.$text;
padding: lib.s(4) lib.s(8);
}
tooltip {
@include -appear(200ms);
}
scrollbar {
trough {
background-color: transparent;
}
slider {
@include lib.rounded(1000);
@include lib.element-decel;
min-width: lib.s(3);
min-height: lib.s(30);
background-color: color.change(scheme.$overlay0, $alpha: 0.3);
&:hover,
&:focus {
min-width: lib.s(6);
background-color: color.change(scheme.$overlay0, $alpha: 0.4);
}
&:active {
background-color: color.change(scheme.$overlay1, $alpha: 0.5);
}
}
}