summaryrefslogtreecommitdiff
path: root/scss/notifications.scss
blob: f9cb7cea447b42bcfe9fb1ac652ad5f30ab2ffe7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
@use "sass:color";
@use "scheme";
@use "lib";
@use "font";

@mixin popup($accent) {
    .separator {
        background-color: $accent;
    }

    .image {
        @include lib.border($accent, 0.05);
    }
}

.notifications {
    @include lib.rounded(8);
    @include lib.border(scheme.$mauve, 0.4, 2);
    @include lib.shadow;
    @include font.mono;

    min-width: lib.s(400);
    min-height: lib.s(600);
    background-color: scheme.$base;
    color: scheme.$mauve;
    padding: lib.s(10) lib.s(12);

    .header {
        @include lib.spacing(8);

        padding: 0 lib.s(5);
        margin-bottom: lib.s(8);

        button {
            @include lib.rounded(5);
            @include lib.element-decel;

            padding: lib.s(3) lib.s(8);

            &:hover,
            &:focus {
                background-color: scheme.$surface0;
            }

            &:active {
                background-color: scheme.$surface1;
            }

            &.enabled {
                background-color: scheme.$mauve;
                color: scheme.$base;

                &:hover,
                &:focus {
                    background-color: color.mix(scheme.$mauve, scheme.$base, 80%);
                }

                &:active {
                    background-color: color.mix(scheme.$mauve, scheme.$base, 70%);
                }
            }
        }
    }

    .icon {
        font-size: lib.s(32);
    }

    .notification {
        .wrapper {
            padding-bottom: lib.s(10);
        }

        .inner {
            background-color: color.mix(scheme.$surface0, scheme.$base, 70%);

            &.low {
                @include popup(scheme.$overlay0);
            }

            &.normal {
                @include lib.border(scheme.$lavender, 0.3);
                @include popup(scheme.$lavender);
            }

            &.critical {
                @include lib.border(scheme.$red, 0.5);
                @include popup(scheme.$red);
            }
        }

        .actions > * {
            background-color: scheme.$surface1;

            &:hover,
            &:focus {
                background-color: scheme.$surface2;
            }

            &:active {
                background-color: scheme.$overlay0;
            }
        }
    }
}