aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/docs/components/app/DocumentDrivenNotFound.vue
blob: 62baa8a1b3eb0f3639d45b528ee99713011d0d66 (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
<template>
  <div class="document-driven-not-found not-prose">
    <main>
      <p>
        404
      </p>
      <div class="content">
        <div class="text-section">
          <h1>
            Not Found
          </h1>
          <p>
            This is not the page you're looking for.
          </p>
        </div>

        <div class="button-section">
          <ButtonLink href="/" size="large" variant="primary">
            Go back home
          </ButtonLink>
        </div>
      </div>
    </main>
  </div>
</template>

<style scoped lang="ts">
css({
  '.document-driven-not-found': {
    display: 'flex',
    flex: '1',
    px: '{space.4}',
    py: '{space.16}',
    '@sm': {
      px: '{space.6}',
      py: '{space.24}',
    },

    '@md': {
      display: 'grid',
      placeItems: 'center',
    },

    '@lg': {
      px: '{space.8}',
    },

    main: {
      mx: 'auto',
      maxWidth: '{size.full}',

      '@sm': {
        display: 'flex',
        gap: '{space.6}'
      },

      // 404
      '& > p': {
        fontSize: '{fontSize.4xl}',
        fontWeight: '{fontWeight.bold}',
        lineHeight: '{lead.tight}',
        color: '{color.primary.500}',
        '@sm': {
          fontSize: '{fontSize.5xl}',
        }
      },

      '.content': {
        '.text-section': {
          borderColor: '{color.gray.200}',
          borderLeftStyle: 'solid',
          borderLeftWidth: '1px',
          border: 'none',

          '@dark': {
            borderColor: '{color.gray.800}',
          },

          '@sm': {
            borderColor: '{color.gray.200}',
            borderLeftStyle: 'solid',
            borderLeftWidth: '1px',
            paddingLeft: '{space.6}'
          },

          h1: {
            fontSize: '{fontSize.4xl}',
            fontWeight: '{fontWeight.extrabold}',
            letterSpacing: '{letterSpacing.tight}',
            color: '{color.gray.900}',
            '@dark': {
              color: '{color.gray.200}',
            },
            '@sm': {
              fontSize: '{fontSize.5xl}',
            },
          },

          p: {
            marginTop: '{space.1}',
            fontSize: '{fontSize.xl}',
            color: '{color.gray.700}',
            '@dark': {
              color: '{color.gray.400}',
            },
          }
        },

        // Button section
        '.button-section': {
          marginTop: '{space.10}',
          flex: 'none',
          gap: '{space.3}'
        }
      }
    }
  }
})
</style>