/*! tailwindcss v3.0.3 | MIT License | https://tailwindcss.com*/
*, :after, :before {
    border: 0 solid;
    box-sizing:border-box
}

:after, :before {
    --tw-content: ""
}

html {
    -webkit-text-size-adjust: 100%;
    font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
    line-height: 1.5;
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size:4
}

body {
    line-height: inherit;
    margin:0
}

hr {
    border-top-width: 1px;
    color: inherit;
    height:0
}

abbr[title] {
    -webkit-text-decoration: underline dotted;
    text-decoration:underline dotted
}

h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight:inherit
}

a {
    color: inherit;
    text-decoration:inherit
}

b, strong {
    font-weight:bolder
}

code, kbd, pre, samp {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace;
    font-size:1em
}

small {
    font-size:80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align:baseline
}

sub {
    bottom:-.25em
}

sup {
    top:-.5em
}

table {
    border-collapse: collapse;
    border-color: inherit;
    text-indent:0
}

button, input, optgroup, select, textarea {
    color: inherit;
    font-family: inherit;
    font-size: 100%;
    line-height: inherit;
    margin: 0;
    padding:0
}

button, select {
    text-transform:none
}

[type=button], [type=reset], [type=submit], button {
    -webkit-appearance: button;
    background-color: transparent;
    background-image:none
}

:-moz-focusring {
    outline:auto
}

:-moz-ui-invalid {
    box-shadow:none
}

progress {
    vertical-align:baseline
}

::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height:auto
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset:-2px
}

::-webkit-search-decoration {
    -webkit-appearance:none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font:inherit
}

summary {
    display:list-item
}

blockquote, dd, dl, figure, h1, h2, h3, h4, h5, h6, hr, p, pre {
    margin:0
}

fieldset {
    margin:0
}

fieldset, legend {
    padding:0
}

menu, ol, ul {
    list-style: none;
    margin: 0;
    padding:0
}

textarea {
    resize:vertical
}

input::-moz-placeholder, textarea::-moz-placeholder {
    color: #9ca3af;
    opacity:1
}

input:-ms-input-placeholder, textarea:-ms-input-placeholder {
    color: #9ca3af;
    opacity:1
}

input::placeholder, textarea::placeholder {
    color: #9ca3af;
    opacity:1
}

[role=button], button {
    cursor:pointer
}

:disabled {
    cursor:default
}

audio, canvas, embed, iframe, img, object, svg, video {
    display: block;
    vertical-align:middle
}

img, video {
    height: auto;
    max-width:100%
}

[hidden] {
    display:none
}

.relative {
    position:relative
}

.mb-5 {
    margin-bottom:1.25rem
}

.-mt-1 {
    margin-top:-.25rem
}

.mt-auto {
    margin-top:auto
}

.mt-5 {
    margin-top:1.25rem
}

.mb-3 {
    margin-bottom:.75rem
}

.inline-block {
    display:inline-block
}

.flex {
    display:flex
}

.min-h-screen {
    min-height:100vh
}

.max-w-xl {
    max-width:36rem
}

.max-w-\[800px\] {
    max-width:800px
}

.resize {
    resize:both
}

.flex-col {
    flex-direction:column
}

.space-x-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-x-reverse: 0;
    margin-left: calc(1rem *(1 - var(--tw-space-x-reverse)));
    margin-right:calc(1rem * var(--tw-space-x-reverse))
}

.bg-white {
    --tw-bg-opacity: 1;
    background-color:rgb(255 255 255/var(--tw-bg-opacity))
}

.p-2 {
    padding:.5rem
}

.pt-10 {
    padding-top:2.5rem
}

.font-sans {
    font-family:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji
}

.text-sm {
    font-size: 20px;
    line-height:1.4
}

.text-lg {
    font-size: 30px;
    line-height:1.4
}

.text-xs {
    font-size: 16px;
    line-height:1.4
}

.text-base {
    font-size: 24px;
    line-height:1.4
}

.text-black {
    --tw-text-opacity: 1;
    color:rgb(0 0 0/var(--tw-text-opacity))
}

.text-purple {
    --tw-text-opacity: 1;
    color:rgb(75 64 253/var(--tw-text-opacity))
}

.antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing:grayscale
}

.min-h-app {
    min-height:var(--app-height)
}

@media (prefers-color-scheme: dark) {
    .dark\:bg-dark-grey {
        --tw-bg-opacity: 1;
        background-color:rgb(34 34 34/var(--tw-bg-opacity))
    }

    .dark\:text-light-grey {
        --tw-text-opacity: 1;
        color:rgb(238 238 238/var(--tw-text-opacity))
    }

    .dark\:text-violet {
        --tw-text-opacity: 1;
        color:rgb(138 131 255/var(--tw-text-opacity))
    }
}

@media (min-width: 768px) {
    .md\:absolute {
        position:absolute
    }

    .md\:right-0 {
        right:0
    }

    .md\:mt-10 {
        margin-top:2.5rem
    }

    .md\:p-4 {
        padding:1rem
    }

    .md\:text-base {
        font-size: 24px;
        line-height:1.4
    }

    .md\:text-xl {
        font-size: 40px;
        line-height:1.4
    }

    .md\:text-lg {
        font-size: 30px;
        line-height:1.4
    }
}

@media (min-width: 1024px) {
    .lg\:p-8 {
        padding: 2rem
    }
}
