aboutsummaryrefslogtreecommitdiffstats
path: root/src/assets/index.css
blob: db51dc8a8d3c0e62aa0d2bcb9d4c740147b52f13 (plain) (blame)
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
:root {
  --fg: rgb(0 0 0);
  --bg: rgb(255 255 255);
  --brand: rgb(139 0 0);

  @media screen and (prefers-color-scheme: dark) {
    --bg: rgb(0 0 0);
    --fg: rgb(255 255 255);
    --brand: rgb(255 0 0);
  }
}

body {
  font-family: serif;
  background-color: var(--bg);
  color: var(--fg);

  @media screen {
    max-width: 920px;
    min-height: calc(100vh - 1rem);
    margin: 0.5rem auto;
    display: grid;
    grid-template: "head" auto "main" auto "footer" 1fr / auto;

    & > header {
      background-color: var(--brand);
      font-weight: bold;
      color: rgb(255 255 255);
      padding: 1rem;
      grid-area: head;

      & *:any-link {
        text-decoration: none;
      }
    }

    & > footer {
      background-color: var(--brand);
      color: rgb(255 255 255);
      padding: 0.5rem;
      align-self: end;
      grid-area: footer;

      & *:any-link {
        text-decoration: none;
      }

      & > main {
        grid-area: main;
      }
    }
  }
}

* :any-link {
  color: inherit;
  text-decoration: underline;

  @media screen {
    &:is(:hover, :active) {
      font-style: italic;
    }
  }
}

a[href^="mailto:"]::after {
  content: "📧";
}

.err {
  color: var(--brand);
}

aside {
  width: 40%;
  padding: 0.5rem;
  margin-left: 0.5rem;
  float: right;
  background-color: var(--brand);
  color: rgb(255 255 255);
}

img {
  max-width: 100%;
  max-height: 100%;

  &.side {
    width: 40%;
    float: right;

    @media screen and (max-width: 450px) {
      width: 100%;
      float: none;
    }
  }
}

@media screen {
  nav > a {
    margin-right: 1rem;
    padding-left: 0;
    padding-right: 0;

    @media (max-width: 450px) {
      display: block;
      margin: auto;
      text-align: center;
      padding: 16px;

      .navlinks {
        display: none;

        .navopen {
          display: block;
        }
      }
    }
  }
}

@media print {
  header,
  footer {
    display: none;
  }
}