.radius-1 {
    border-radius: 2px
}

.radius-2 {
    border-radius: 4px
}

.radius-3 {
    border-radius: 8px
}

.border {
    border: 1px solid var(--border)
}

.border-top {
    border-top: 1px solid var(--border)
}

.border-right {
    border-right: 1px solid var(--border)
}

.border-bottom {
    border-bottom: 1px solid var(--border)
}

.border-left {
    border-left: 1px solid var(--border)
}

.flex-row {
    flex-direction: row
}

.flex-row-reverse {
    flex-direction: row-reverse
}

.flex-col {
    flex-direction: column
}

.flex-col-reverse {
    flex-direction: column-reverse
}

.flex-no-wrap {
    flex-wrap: nowrap
}

.flex-wrap {
    flex-wrap: wrap
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse
}

.items-stretch {
    align-items: stretch
}

.items-start {
    align-items: flex-start
}

.items-center {
    align-items: center
}

.items-end {
    align-items: flex-end
}

.items-baseline {
    align-items: baseline
}

.content-start {
    align-content: flex-start
}

.content-center {
    align-content: center
}

.content-end {
    align-content: flex-end
}

.content-between {
    align-content: space-between
}

.content-around {
    align-content: space-around
}

.justify-start {
    justify-content: flex-start
}

.justify-center {
    justify-content: center
}

.justify-end {
    justify-content: flex-end
}

.justify-between {
    justify-content: space-between
}

.justify-around {
    justify-content: space-around
}

.flex-grow {
    flex-grow: 1
}

.flex-no-grow {
    flex-grow: 0
}

.flex-shrink {
    flex-shrink: 1
}

.flex-no-shrink {
    flex-shrink: 0
}

.flex-center {
    justify-content: center;
    align-items: center
}

.block {
    display: block
}

.inline-block {
    display: inline-block
}

.inline {
    display: inline
}

.flex {
    display: flex
}

.grid {
    display: grid
}

.inline-flex {
    display: inline-flex
}

.table {
    display: table
}

.table-row {
    display: table-row
}

.table-cell {
    display: table-cell
}

.hidden {
    display: none
}

.gap-0 {
    gap: 0
}

.gap-1 {
    gap: .25rem
}

.gap-2 {
    gap: .5rem
}

.gap-3 {
    gap: .75rem
}

.gap-4 {
    gap: 1rem
}

.gap-5 {
    gap: 1.25rem
}

.gap-6 {
    gap: 1.5rem
}

.gap-7 {
    gap: 1.75rem
}

.gap-8 {
    gap: 2rem
}

.gap-9 {
    gap: 2.25rem
}

.gap-10 {
    gap: 2.5rem
}

.gap-11 {
    gap: 2.75rem
}

.gap-12 {
    gap: 3rem
}

.gap-13 {
    gap: 3.25rem
}

.gap-14 {
    gap: 3.5rem
}

.gap-15 {
    gap: 3.75rem
}

.gap-16 {
    gap: 4rem
}

.gap-17 {
    gap: 4.25rem
}

.gap-18 {
    gap: 4.5rem
}

.gap-19 {
    gap: 4.75rem
}

.gap-20 {
    gap: 5rem
}

.gap-21 {
    gap: 5.25rem
}

.gap-22 {
    gap: 5.5rem
}

.gap-23 {
    gap: 5.75rem
}

.gap-24 {
    gap: 6rem
}

.gap-25 {
    gap: 6.25rem
}

.gap-26 {
    gap: 6.5rem
}

.gap-27 {
    gap: 6.75rem
}

.gap-28 {
    gap: 7rem
}

.gap-29 {
    gap: 7.25rem
}

.gap-30 {
    gap: 7.5rem
}

.gap-31 {
    gap: 7.75rem
}

.object-contain {
    object-fit: contain
}

.object-cover {
    object-fit: cover
}

.object-fill {
    object-fit: fill
}

.object-none {
    object-fit: none
}

.object-scale-down {
    object-fit: scale-down
}

.overflow-auto {
    overflow: auto
}

.overflow-hidden {
    overflow: hidden
}

.overflow-visible {
    overflow: visible
}

.overflow-scroll {
    overflow: scroll
}

.overflow-x-auto {
    overflow-x: auto
}

.overflow-y-auto {
    overflow-y: auto
}

.overflow-x-hidden {
    overflow-x: hidden
}

.overflow-y-hidden {
    overflow-y: hidden
}

.overflow-x-visible {
    overflow-x: visible
}

.overflow-y-visible {
    overflow-y: visible
}

.overflow-x-scroll {
    overflow-x: scroll
}

.overflow-y-scroll {
    overflow-y: scroll
}

.scrolling-touch {
    -webkit-overflow-scrolling: touch
}

.scrolling-auto {
    -webkit-overflow-scrolling: auto
}

.z-0 {
    z-index: 0
}

.z-10 {
    z-index: 10
}

.z-20 {
    z-index: 20
}

.z-30 {
    z-index: 30
}

.z-40 {
    z-index: 40
}

.z-50 {
    z-index: 50
}

.z-auto {
    z-index: auto
}

.visible {
    visibility: visible
}

.invisible {
    visibility: hidden
}

.static {
    position: static
}

.fixed {
    position: fixed
}

.absolute {
    position: absolute
}

.relative {
    position: relative
}

.sticky {
    position: sticky
}

.m-0 {
    margin: 0
}

.m-1 {
    margin: .25rem
}

.m-2 {
    margin: .5rem
}

.m-3 {
    margin: .75rem
}

.m-4 {
    margin: 1rem
}

.m-5 {
    margin: 1.25rem
}

.m-6 {
    margin: 1.5rem
}

.m-7 {
    margin: 1.75rem
}

.m-8 {
    margin: 2rem
}

.m-9 {
    margin: 2.25rem
}

.m-10 {
    margin: 2.5rem
}

.m-11 {
    margin: 2.75rem
}

.m-12 {
    margin: 3rem
}

.m-13 {
    margin: 3.25rem
}

.m-14 {
    margin: 3.5rem
}

.m-15 {
    margin: 3.75rem
}

.m-16 {
    margin: 4rem
}

.m-17 {
    margin: 4.25rem
}

.m-18 {
    margin: 4.5rem
}

.m-19 {
    margin: 4.75rem
}

.m-20 {
    margin: 5rem
}

.m-21 {
    margin: 5.25rem
}

.m-22 {
    margin: 5.5rem
}

.m-23 {
    margin: 5.75rem
}

.m-24 {
    margin: 6rem
}

.m-25 {
    margin: 6.25rem
}

.m-26 {
    margin: 6.5rem
}

.m-27 {
    margin: 6.75rem
}

.m-28 {
    margin: 7rem
}

.m-29 {
    margin: 7.25rem
}

.m-30 {
    margin: 7.5rem
}

.m-31 {
    margin: 7.75rem
}

.mx-0 {
    margin-left: 0;
    margin-right: 0
}

.mx-1 {
    margin-left: .25rem;
    margin-right: .25rem
}

.mx-2 {
    margin-left: .5rem;
    margin-right: .5rem
}

.mx-3 {
    margin-left: .75rem;
    margin-right: .75rem
}

.mx-4 {
    margin-left: 1rem;
    margin-right: 1rem
}

.mx-5 {
    margin-left: 1.25rem;
    margin-right: 1.25rem
}

.mx-6 {
    margin-left: 1.5rem;
    margin-right: 1.5rem
}

.mx-7 {
    margin-left: 1.75rem;
    margin-right: 1.75rem
}

.mx-8 {
    margin-left: 2rem;
    margin-right: 2rem
}

.mx-9 {
    margin-left: 2.25rem;
    margin-right: 2.25rem
}

.mx-10 {
    margin-left: 2.5rem;
    margin-right: 2.5rem
}

.mx-11 {
    margin-left: 2.75rem;
    margin-right: 2.75rem
}

.mx-12 {
    margin-left: 3rem;
    margin-right: 3rem
}

.mx-13 {
    margin-left: 3.25rem;
    margin-right: 3.25rem
}

.mx-14 {
    margin-left: 3.5rem;
    margin-right: 3.5rem
}

.mx-15 {
    margin-left: 3.75rem;
    margin-right: 3.75rem
}

.mx-16 {
    margin-left: 4rem;
    margin-right: 4rem
}

.mx-17 {
    margin-left: 4.25rem;
    margin-right: 4.25rem
}

.mx-18 {
    margin-left: 4.5rem;
    margin-right: 4.5rem
}

.mx-19 {
    margin-left: 4.75rem;
    margin-right: 4.75rem
}

.mx-20 {
    margin-left: 5rem;
    margin-right: 5rem
}

.mx-21 {
    margin-left: 5.25rem;
    margin-right: 5.25rem
}

.mx-22 {
    margin-left: 5.5rem;
    margin-right: 5.5rem
}

.mx-23 {
    margin-left: 5.75rem;
    margin-right: 5.75rem
}

.mx-24 {
    margin-left: 6rem;
    margin-right: 6rem
}

.mx-25 {
    margin-left: 6.25rem;
    margin-right: 6.25rem
}

.mx-26 {
    margin-left: 6.5rem;
    margin-right: 6.5rem
}

.mx-27 {
    margin-left: 6.75rem;
    margin-right: 6.75rem
}

.mx-28 {
    margin-left: 7rem;
    margin-right: 7rem
}

.mx-29 {
    margin-left: 7.25rem;
    margin-right: 7.25rem
}

.mx-30 {
    margin-left: 7.5rem;
    margin-right: 7.5rem
}

.mx-31 {
    margin-left: 7.75rem;
    margin-right: 7.75rem
}

.my-0 {
    margin-top: 0;
    margin-bottom: 0
}

.my-1 {
    margin-top: .25rem;
    margin-bottom: .25rem
}

.my-2 {
    margin-top: .5rem;
    margin-bottom: .5rem
}

.my-3 {
    margin-top: .75rem;
    margin-bottom: .75rem
}

.my-4 {
    margin-top: 1rem;
    margin-bottom: 1rem
}

.my-5 {
    margin-top: 1.25rem;
    margin-bottom: 1.25rem
}

.my-6 {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem
}

.my-7 {
    margin-top: 1.75rem;
    margin-bottom: 1.75rem
}

.my-8 {
    margin-top: 2rem;
    margin-bottom: 2rem
}

.my-9 {
    margin-top: 2.25rem;
    margin-bottom: 2.25rem
}

.my-10 {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem
}

.my-11 {
    margin-top: 2.75rem;
    margin-bottom: 2.75rem
}

.my-12 {
    margin-top: 3rem;
    margin-bottom: 3rem
}

.my-13 {
    margin-top: 3.25rem;
    margin-bottom: 3.25rem
}

.my-14 {
    margin-top: 3.5rem;
    margin-bottom: 3.5rem
}

.my-15 {
    margin-top: 3.75rem;
    margin-bottom: 3.75rem
}

.my-16 {
    margin-top: 4rem;
    margin-bottom: 4rem
}

.my-17 {
    margin-top: 4.25rem;
    margin-bottom: 4.25rem
}

.my-18 {
    margin-top: 4.5rem;
    margin-bottom: 4.5rem
}

.my-19 {
    margin-top: 4.75rem;
    margin-bottom: 4.75rem
}

.my-20 {
    margin-top: 5rem;
    margin-bottom: 5rem
}

.my-21 {
    margin-top: 5.25rem;
    margin-bottom: 5.25rem
}

.my-22 {
    margin-top: 5.5rem;
    margin-bottom: 5.5rem
}

.my-23 {
    margin-top: 5.75rem;
    margin-bottom: 5.75rem
}

.my-24 {
    margin-top: 6rem;
    margin-bottom: 6rem
}

.my-25 {
    margin-top: 6.25rem;
    margin-bottom: 6.25rem
}

.my-26 {
    margin-top: 6.5rem;
    margin-bottom: 6.5rem
}

.my-27 {
    margin-top: 6.75rem;
    margin-bottom: 6.75rem
}

.my-28 {
    margin-top: 7rem;
    margin-bottom: 7rem
}

.my-29 {
    margin-top: 7.25rem;
    margin-bottom: 7.25rem
}

.my-30 {
    margin-top: 7.5rem;
    margin-bottom: 7.5rem
}

.my-31 {
    margin-top: 7.75rem;
    margin-bottom: 7.75rem
}

.mt-0 {
    margin-top: 0
}

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

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

.mt-3 {
    margin-top: .75rem
}

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

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

.mt-6 {
    margin-top: 1.5rem
}

.mt-7 {
    margin-top: 1.75rem
}

.mt-8 {
    margin-top: 2rem
}

.mt-9 {
    margin-top: 2.25rem
}

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

.mt-11 {
    margin-top: 2.75rem
}

.mt-12 {
    margin-top: 3rem
}

.mt-13 {
    margin-top: 3.25rem
}

.mt-14 {
    margin-top: 3.5rem
}

.mt-15 {
    margin-top: 3.75rem
}

.mt-16 {
    margin-top: 4rem
}

.mt-17 {
    margin-top: 4.25rem
}

.mt-18 {
    margin-top: 4.5rem
}

.mt-19 {
    margin-top: 4.75rem
}

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

.mt-21 {
    margin-top: 5.25rem
}

.mt-22 {
    margin-top: 5.5rem
}

.mt-23 {
    margin-top: 5.75rem
}

.mt-24 {
    margin-top: 6rem
}

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

.mt-26 {
    margin-top: 6.5rem
}

.mt-27 {
    margin-top: 6.75rem
}

.mt-28 {
    margin-top: 7rem
}

.mt-29 {
    margin-top: 7.25rem
}

.mt-30 {
    margin-top: 7.5rem
}

.mt-31 {
    margin-top: 7.75rem
}

.mr-0 {
    margin-right: 0
}

.mr-1 {
    margin-right: .25rem
}

.mr-2 {
    margin-right: .5rem
}

.mr-3 {
    margin-right: .75rem
}

.mr-4 {
    margin-right: 1rem
}

.mr-5 {
    margin-right: 1.25rem
}

.mr-6 {
    margin-right: 1.5rem
}

.mr-7 {
    margin-right: 1.75rem
}

.mr-8 {
    margin-right: 2rem
}

.mr-9 {
    margin-right: 2.25rem
}

.mr-10 {
    margin-right: 2.5rem
}

.mr-11 {
    margin-right: 2.75rem
}

.mr-12 {
    margin-right: 3rem
}

.mr-13 {
    margin-right: 3.25rem
}

.mr-14 {
    margin-right: 3.5rem
}

.mr-15 {
    margin-right: 3.75rem
}

.mr-16 {
    margin-right: 4rem
}

.mr-17 {
    margin-right: 4.25rem
}

.mr-18 {
    margin-right: 4.5rem
}

.mr-19 {
    margin-right: 4.75rem
}

.mr-20 {
    margin-right: 5rem
}

.mr-21 {
    margin-right: 5.25rem
}

.mr-22 {
    margin-right: 5.5rem
}

.mr-23 {
    margin-right: 5.75rem
}

.mr-24 {
    margin-right: 6rem
}

.mr-25 {
    margin-right: 6.25rem
}

.mr-26 {
    margin-right: 6.5rem
}

.mr-27 {
    margin-right: 6.75rem
}

.mr-28 {
    margin-right: 7rem
}

.mr-29 {
    margin-right: 7.25rem
}

.mr-30 {
    margin-right: 7.5rem
}

.mr-31 {
    margin-right: 7.75rem
}

.mb-0 {
    margin-bottom: 0
}

.mb-1 {
    margin-bottom: .25rem
}

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

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

.mb-4 {
    margin-bottom: 1rem
}

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

.mb-6 {
    margin-bottom: 1.5rem
}

.mb-7 {
    margin-bottom: 1.75rem
}

.mb-8 {
    margin-bottom: 2rem
}

.mb-9 {
    margin-bottom: 2.25rem
}

.mb-10 {
    margin-bottom: 2.5rem
}

.mb-11 {
    margin-bottom: 2.75rem
}

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

.mb-13 {
    margin-bottom: 3.25rem
}

.mb-14 {
    margin-bottom: 3.5rem
}

.mb-15 {
    margin-bottom: 3.75rem
}

.mb-16 {
    margin-bottom: 4rem
}

.mb-17 {
    margin-bottom: 4.25rem
}

.mb-18 {
    margin-bottom: 4.5rem
}

.mb-19 {
    margin-bottom: 4.75rem
}

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

.mb-21 {
    margin-bottom: 5.25rem
}

.mb-22 {
    margin-bottom: 5.5rem
}

.mb-23 {
    margin-bottom: 5.75rem
}

.mb-24 {
    margin-bottom: 6rem
}

.mb-25 {
    margin-bottom: 6.25rem
}

.mb-26 {
    margin-bottom: 6.5rem
}

.mb-27 {
    margin-bottom: 6.75rem
}

.mb-28 {
    margin-bottom: 7rem
}

.mb-29 {
    margin-bottom: 7.25rem
}

.mb-30 {
    margin-bottom: 7.5rem
}

.mb-31 {
    margin-bottom: 7.75rem
}

.ml-0 {
    margin-left: 0
}

.ml-1 {
    margin-left: .25rem
}

.ml-2 {
    margin-left: .5rem
}

.ml-3 {
    margin-left: .75rem
}

.ml-4 {
    margin-left: 1rem
}

.ml-5 {
    margin-left: 1.25rem
}

.ml-6 {
    margin-left: 1.5rem
}

.ml-7 {
    margin-left: 1.75rem
}

.ml-8 {
    margin-left: 2rem
}

.ml-9 {
    margin-left: 2.25rem
}

.ml-10 {
    margin-left: 2.5rem
}

.ml-11 {
    margin-left: 2.75rem
}

.ml-12 {
    margin-left: 3rem
}

.ml-13 {
    margin-left: 3.25rem
}

.ml-14 {
    margin-left: 3.5rem
}

.ml-15 {
    margin-left: 3.75rem
}

.ml-16 {
    margin-left: 4rem
}

.ml-17 {
    margin-left: 4.25rem
}

.ml-18 {
    margin-left: 4.5rem
}

.ml-19 {
    margin-left: 4.75rem
}

.ml-20 {
    margin-left: 5rem
}

.ml-21 {
    margin-left: 5.25rem
}

.ml-22 {
    margin-left: 5.5rem
}

.ml-23 {
    margin-left: 5.75rem
}

.ml-24 {
    margin-left: 6rem
}

.ml-25 {
    margin-left: 6.25rem
}

.ml-26 {
    margin-left: 6.5rem
}

.ml-27 {
    margin-left: 6.75rem
}

.ml-28 {
    margin-left: 7rem
}

.ml-29 {
    margin-left: 7.25rem
}

.ml-30 {
    margin-left: 7.5rem
}

.ml-31 {
    margin-left: 7.75rem
}

.p-0 {
    padding: 0
}

.p-1 {
    padding: .25rem
}

.p-2 {
    padding: .5rem
}

.p-3 {
    padding: .75rem
}

.p-4 {
    padding: 1rem
}

.p-5 {
    padding: 1.25rem
}

.p-6 {
    padding: 1.5rem
}

.p-7 {
    padding: 1.75rem
}

.p-8 {
    padding: 2rem
}

.p-9 {
    padding: 2.25rem
}

.p-10 {
    padding: 2.5rem
}

.p-11 {
    padding: 2.75rem
}

.p-12 {
    padding: 3rem
}

.p-13 {
    padding: 3.25rem
}

.p-14 {
    padding: 3.5rem
}

.p-15 {
    padding: 3.75rem
}

.p-16 {
    padding: 4rem
}

.p-17 {
    padding: 4.25rem
}

.p-18 {
    padding: 4.5rem
}

.p-19 {
    padding: 4.75rem
}

.p-20 {
    padding: 5rem
}

.p-21 {
    padding: 5.25rem
}

.p-22 {
    padding: 5.5rem
}

.p-23 {
    padding: 5.75rem
}

.p-24 {
    padding: 6rem
}

.p-25 {
    padding: 6.25rem
}

.p-26 {
    padding: 6.5rem
}

.p-27 {
    padding: 6.75rem
}

.p-28 {
    padding: 7rem
}

.p-29 {
    padding: 7.25rem
}

.p-30 {
    padding: 7.5rem
}

.p-31 {
    padding: 7.75rem
}

.px-0 {
    padding-left: 0;
    padding-right: 0
}

.px-1 {
    padding-left: .25rem;
    padding-right: .25rem
}

.px-2 {
    padding-left: .5rem;
    padding-right: .5rem
}

.px-3 {
    padding-left: .75rem;
    padding-right: .75rem
}

.px-4 {
    padding-left: 1rem;
    padding-right: 1rem
}

.px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem
}

.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}

.px-7 {
    padding-left: 1.75rem;
    padding-right: 1.75rem
}

.px-8 {
    padding-left: 2rem;
    padding-right: 2rem
}

.px-9 {
    padding-left: 2.25rem;
    padding-right: 2.25rem
}

.px-10 {
    padding-left: 2.5rem;
    padding-right: 2.5rem
}

.px-11 {
    padding-left: 2.75rem;
    padding-right: 2.75rem
}

.px-12 {
    padding-left: 3rem;
    padding-right: 3rem
}

.px-13 {
    padding-left: 3.25rem;
    padding-right: 3.25rem
}

.px-14 {
    padding-left: 3.5rem;
    padding-right: 3.5rem
}

.px-15 {
    padding-left: 3.75rem;
    padding-right: 3.75rem
}

.px-16 {
    padding-left: 4rem;
    padding-right: 4rem
}

.px-17 {
    padding-left: 4.25rem;
    padding-right: 4.25rem
}

.px-18 {
    padding-left: 4.5rem;
    padding-right: 4.5rem
}

.px-19 {
    padding-left: 4.75rem;
    padding-right: 4.75rem
}

.px-20 {
    padding-left: 5rem;
    padding-right: 5rem
}

.px-21 {
    padding-left: 5.25rem;
    padding-right: 5.25rem
}

.px-22 {
    padding-left: 5.5rem;
    padding-right: 5.5rem
}

.px-23 {
    padding-left: 5.75rem;
    padding-right: 5.75rem
}

.px-24 {
    padding-left: 6rem;
    padding-right: 6rem
}

.px-25 {
    padding-left: 6.25rem;
    padding-right: 6.25rem
}

.px-26 {
    padding-left: 6.5rem;
    padding-right: 6.5rem
}

.px-27 {
    padding-left: 6.75rem;
    padding-right: 6.75rem
}

.px-28 {
    padding-left: 7rem;
    padding-right: 7rem
}

.px-29 {
    padding-left: 7.25rem;
    padding-right: 7.25rem
}

.px-30 {
    padding-left: 7.5rem;
    padding-right: 7.5rem
}

.px-31 {
    padding-left: 7.75rem;
    padding-right: 7.75rem
}

.py-0 {
    padding-top: 0;
    padding-bottom: 0
}

.py-1 {
    padding-top: .25rem;
    padding-bottom: .25rem
}

.py-2 {
    padding-top: .5rem;
    padding-bottom: .5rem
}

.py-3 {
    padding-top: .75rem;
    padding-bottom: .75rem
}

.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem
}

.py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem
}

.py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem
}

.py-7 {
    padding-top: 1.75rem;
    padding-bottom: 1.75rem
}

.py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem
}

.py-9 {
    padding-top: 2.25rem;
    padding-bottom: 2.25rem
}

.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
}

.py-11 {
    padding-top: 2.75rem;
    padding-bottom: 2.75rem
}

.py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem
}

.py-13 {
    padding-top: 3.25rem;
    padding-bottom: 3.25rem
}

.py-14 {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem
}

.py-15 {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem
}

.py-16 {
    padding-top: 4rem;
    padding-bottom: 4rem
}

.py-17 {
    padding-top: 4.25rem;
    padding-bottom: 4.25rem
}

.py-18 {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem
}

.py-19 {
    padding-top: 4.75rem;
    padding-bottom: 4.75rem
}

.py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem
}

.py-21 {
    padding-top: 5.25rem;
    padding-bottom: 5.25rem
}

.py-22 {
    padding-top: 5.5rem;
    padding-bottom: 5.5rem
}

.py-23 {
    padding-top: 5.75rem;
    padding-bottom: 5.75rem
}

.py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem
}

.py-25 {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem
}

.py-26 {
    padding-top: 6.5rem;
    padding-bottom: 6.5rem
}

.py-27 {
    padding-top: 6.75rem;
    padding-bottom: 6.75rem
}

.py-28 {
    padding-top: 7rem;
    padding-bottom: 7rem
}

.py-29 {
    padding-top: 7.25rem;
    padding-bottom: 7.25rem
}

.py-30 {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem
}

.py-31 {
    padding-top: 7.75rem;
    padding-bottom: 7.75rem
}

.pt-0 {
    padding-top: 0
}

.pt-1 {
    padding-top: .25rem
}

.pt-2 {
    padding-top: .5rem
}

.pt-3 {
    padding-top: .75rem
}

.pt-4 {
    padding-top: 1rem
}

.pt-5 {
    padding-top: 1.25rem
}

.pt-6 {
    padding-top: 1.5rem
}

.pt-7 {
    padding-top: 1.75rem
}

.pt-8 {
    padding-top: 2rem
}

.pt-9 {
    padding-top: 2.25rem
}

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

.pt-11 {
    padding-top: 2.75rem
}

.pt-12 {
    padding-top: 3rem
}

.pt-13 {
    padding-top: 3.25rem
}

.pt-14 {
    padding-top: 3.5rem
}

.pt-15 {
    padding-top: 3.75rem
}

.pt-16 {
    padding-top: 4rem
}

.pt-17 {
    padding-top: 4.25rem
}

.pt-18 {
    padding-top: 4.5rem
}

.pt-19 {
    padding-top: 4.75rem
}

.pt-20 {
    padding-top: 5rem
}

.pt-21 {
    padding-top: 5.25rem
}

.pt-22 {
    padding-top: 5.5rem
}

.pt-23 {
    padding-top: 5.75rem
}

.pt-24 {
    padding-top: 6rem
}

.pt-25 {
    padding-top: 6.25rem
}

.pt-26 {
    padding-top: 6.5rem
}

.pt-27 {
    padding-top: 6.75rem
}

.pt-28 {
    padding-top: 7rem
}

.pt-29 {
    padding-top: 7.25rem
}

.pt-30 {
    padding-top: 7.5rem
}

.pt-31 {
    padding-top: 7.75rem
}

.pr-0 {
    padding-right: 0
}

.pr-1 {
    padding-right: .25rem
}

.pr-2 {
    padding-right: .5rem
}

.pr-3 {
    padding-right: .75rem
}

.pr-4 {
    padding-right: 1rem
}

.pr-5 {
    padding-right: 1.25rem
}

.pr-6 {
    padding-right: 1.5rem
}

.pr-7 {
    padding-right: 1.75rem
}

.pr-8 {
    padding-right: 2rem
}

.pr-9 {
    padding-right: 2.25rem
}

.pr-10 {
    padding-right: 2.5rem
}

.pr-11 {
    padding-right: 2.75rem
}

.pr-12 {
    padding-right: 3rem
}

.pr-13 {
    padding-right: 3.25rem
}

.pr-14 {
    padding-right: 3.5rem
}

.pr-15 {
    padding-right: 3.75rem
}

.pr-16 {
    padding-right: 4rem
}

.pr-17 {
    padding-right: 4.25rem
}

.pr-18 {
    padding-right: 4.5rem
}

.pr-19 {
    padding-right: 4.75rem
}

.pr-20 {
    padding-right: 5rem
}

.pr-21 {
    padding-right: 5.25rem
}

.pr-22 {
    padding-right: 5.5rem
}

.pr-23 {
    padding-right: 5.75rem
}

.pr-24 {
    padding-right: 6rem
}

.pr-25 {
    padding-right: 6.25rem
}

.pr-26 {
    padding-right: 6.5rem
}

.pr-27 {
    padding-right: 6.75rem
}

.pr-28 {
    padding-right: 7rem
}

.pr-29 {
    padding-right: 7.25rem
}

.pr-30 {
    padding-right: 7.5rem
}

.pr-31 {
    padding-right: 7.75rem
}

.pb-0 {
    padding-bottom: 0
}

.pb-1 {
    padding-bottom: .25rem
}

.pb-2 {
    padding-bottom: .5rem
}

.pb-3 {
    padding-bottom: .75rem
}

.pb-4 {
    padding-bottom: 1rem
}

.pb-5 {
    padding-bottom: 1.25rem
}

.pb-6 {
    padding-bottom: 1.5rem
}

.pb-7 {
    padding-bottom: 1.75rem
}

.pb-8 {
    padding-bottom: 2rem
}

.pb-9 {
    padding-bottom: 2.25rem
}

.pb-10 {
    padding-bottom: 2.5rem
}

.pb-11 {
    padding-bottom: 2.75rem
}

.pb-12 {
    padding-bottom: 3rem
}

.pb-13 {
    padding-bottom: 3.25rem
}

.pb-14 {
    padding-bottom: 3.5rem
}

.pb-15 {
    padding-bottom: 3.75rem
}

.pb-16 {
    padding-bottom: 4rem
}

.pb-17 {
    padding-bottom: 4.25rem
}

.pb-18 {
    padding-bottom: 4.5rem
}

.pb-19 {
    padding-bottom: 4.75rem
}

.pb-20 {
    padding-bottom: 5rem
}

.pb-21 {
    padding-bottom: 5.25rem
}

.pb-22 {
    padding-bottom: 5.5rem
}

.pb-23 {
    padding-bottom: 5.75rem
}

.pb-24 {
    padding-bottom: 6rem
}

.pb-25 {
    padding-bottom: 6.25rem
}

.pb-26 {
    padding-bottom: 6.5rem
}

.pb-27 {
    padding-bottom: 6.75rem
}

.pb-28 {
    padding-bottom: 7rem
}

.pb-29 {
    padding-bottom: 7.25rem
}

.pb-30 {
    padding-bottom: 7.5rem
}

.pb-31 {
    padding-bottom: 7.75rem
}

.pl-0 {
    padding-left: 0
}

.pl-1 {
    padding-left: .25rem
}

.pl-2 {
    padding-left: .5rem
}

.pl-3 {
    padding-left: .75rem
}

.pl-4 {
    padding-left: 1rem
}

.pl-5 {
    padding-left: 1.25rem
}

.pl-6 {
    padding-left: 1.5rem
}

.pl-7 {
    padding-left: 1.75rem
}

.pl-8 {
    padding-left: 2rem
}

.pl-9 {
    padding-left: 2.25rem
}

.pl-10 {
    padding-left: 2.5rem
}

.pl-11 {
    padding-left: 2.75rem
}

.pl-12 {
    padding-left: 3rem
}

.pl-13 {
    padding-left: 3.25rem
}

.pl-14 {
    padding-left: 3.5rem
}

.pl-15 {
    padding-left: 3.75rem
}

.pl-16 {
    padding-left: 4rem
}

.pl-17 {
    padding-left: 4.25rem
}

.pl-18 {
    padding-left: 4.5rem
}

.pl-19 {
    padding-left: 4.75rem
}

.pl-20 {
    padding-left: 5rem
}

.pl-21 {
    padding-left: 5.25rem
}

.pl-22 {
    padding-left: 5.5rem
}

.pl-23 {
    padding-left: 5.75rem
}

.pl-24 {
    padding-left: 6rem
}

.pl-25 {
    padding-left: 6.25rem
}

.pl-26 {
    padding-left: 6.5rem
}

.pl-27 {
    padding-left: 6.75rem
}

.pl-28 {
    padding-left: 7rem
}

.pl-29 {
    padding-left: 7.25rem
}

.pl-30 {
    padding-left: 7.5rem
}

.pl-31 {
    padding-left: 7.75rem
}

.select-none {
    user-select: none
}

.select-text {
    user-select: text
}

.select-all {
    user-select: all
}

.select-auto {
    user-select: auto
}

.resize-none {
    resize: none
}

.resize {
    resize: both
}

.resize-y {
    resize: vertical
}

.resize-x {
    resize: horizontal
}

.bg-0 {
    background: var(--background)
}

.bg-1 {
    background: var(--neutral-0)
}

.bg-2 {
    background: var(--neutral-1)
}

.bg-3 {
    background: var(--neutral-2)
}

.scrollbars-none::-webkit-scrollbar {
    width: 0;
    background: transparent
}

.cursor-pointer {
    cursor: pointer
}

* {
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

blockquote,
body,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
html,
li,
p,
pre,
ul {
    margin: 0;
    padding: 0
}

body,
html {
    font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol;
    -webkit-font-smoothing: antialiased;
    overscroll-behavior: none;
    font-size: 16px;
    line-height: 1;
    height: 100%
}

p {
    line-height: 1.5
}

.swatch {
    --size: 70px;
    width: var(--size);
    height: var(--size);
    color: var(--neutral-12);
    font-size: 10px;
    margin-right: .5rem;
    white-space: nowrap;
    flex: 0 0 auto;
    user-select: all
}

.swatch > span {
    position: relative;
    top: -1rem
}

.cube {
    --size: 32px;
    width: var(--size);
    height: var(--size);
    background: var(--neutral-0);
    border: 1px solid var(--neutral-2);
    border-radius: 2px
}

.animate-show {
    animation: fade-in .5s ease forwards
}

.animate-hide {
    animation: fade-out .2s ease forwards
}

@keyframes fade-in {
    0% {
        opacity: 0;
        transform: translateY(1rem)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes fade-out {
    0% {
        opacity: 1;
        transform: translateY(0)
    }

    to {
        opacity: 0;
        transform: translateY(10rem)
    }
}

:root {
    --neutral-0: var(--oc-gray-0);
    --neutral-1: var(--oc-gray-1);
    --neutral-2: var(--oc-gray-2);
    --neutral-3: var(--oc-gray-3);
    --neutral-4: var(--oc-gray-4);
    --neutral-5: var(--oc-gray-5);
    --neutral-6: var(--oc-gray-6);
    --neutral-7: var(--oc-gray-7);
    --neutral-8: var(--oc-gray-8);
    --neutral-9: var(--oc-gray-9);
    --neutral-10: var(--oc-gray-10);
    --neutral-11: var(--oc-gray-11);
    --neutral-12: var(--oc-gray-12);
    --primary-0: var(--oc-indigo-0);
    --primary-1: var(--oc-indigo-1);
    --primary-2: var(--oc-indigo-2);
    --primary-3: var(--oc-indigo-3);
    --primary-4: var(--oc-indigo-4);
    --primary-5: var(--oc-indigo-5);
    --primary-6: var(--oc-indigo-6);
    --primary-7: var(--oc-indigo-7);
    --primary-8: var(--oc-indigo-8);
    --primary-9: var(--oc-indigo-9);
    --danger-0: var(--oc-red-0);
    --danger-1: var(--oc-red-1);
    --danger-2: var(--oc-red-2);
    --danger-3: var(--oc-red-3);
    --danger-4: var(--oc-red-4);
    --danger-5: var(--oc-red-5);
    --danger-6: var(--oc-red-6);
    --danger-7: var(--oc-red-7);
    --danger-8: var(--oc-red-8);
    --danger-9: var(--oc-red-9);
    --background: #fff;
    --foreground: var(--neutral-12);
    --border: var(--neutral-2);
    --input-border: var(--neutral-3);
    --input-disabled-background: var(--neutral-1);
    --input-disabled-foreground: var(--neutral-6);
    --input-focus-shadow: rgba(99, 114, 249, 0.14) 0px 0px 2px inset, var(--oc-indigo-2) 0px 0px 0px 1px inset, rgba(var(--oc-indigo-2-rgb), 0.15) 0px 0px 0px 3px;
    --purple-shadow: rgba(99, 114, 249, 0.4) 0px 0px 0px 3px;
    --red-shadow: 0 0 0 3px #fcb6c8;
    --oc-white: #fff;
    --oc-white-rgb: 255, 255, 255;
    --oc-black: #000;
    --oc-black-rgb: 0, 0, 0;
    --oc-gray-0: #f8f9fa;
    --oc-gray-0-rgb: 248, 249, 250;
    --oc-gray-1: #f1f3f5;
    --oc-gray-1-rgb: 241, 243, 245;
    --oc-gray-2: #e9ecef;
    --oc-gray-2-rgb: 233, 236, 239;
    --oc-gray-3: #dee2e6;
    --oc-gray-3-rgb: 222, 226, 230;
    --oc-gray-4: #ced4da;
    --oc-gray-4-rgb: 206, 212, 218;
    --oc-gray-5: #adb5bd;
    --oc-gray-5-rgb: 173, 181, 189;
    --oc-gray-6: #868e96;
    --oc-gray-6-rgb: 134, 142, 150;
    --oc-gray-7: #495057;
    --oc-gray-7-rgb: 73, 80, 87;
    --oc-gray-8: #343a40;
    --oc-gray-8-rgb: 52, 58, 64;
    --oc-gray-9-rgb: 33, 37, 41;
    --oc-gray-9: #212529;
    --oc-gray-10: #101214;
    --oc-gray-11: #010101;
    --oc-gray-12: #000;
    --oc-red-0: #fff5f5;
    --oc-red-0-rgb: 255, 245, 245;
    --oc-red-1: #ffe3e3;
    --oc-red-1-rgb: 255, 227, 227;
    --oc-red-2: #ffc9c9;
    --oc-red-2-rgb: 255, 201, 201;
    --oc-red-3: #ffa8a8;
    --oc-red-3-rgb: 255, 168, 168;
    --oc-red-4: #ff8787;
    --oc-red-4-rgb: 255, 135, 135;
    --oc-red-5: #ff6b6b;
    --oc-red-5-rgb: 255, 107, 107;
    --oc-red-6: #fa5252;
    --oc-red-6-rgb: 250, 82, 82;
    --oc-red-7: #f03e3e;
    --oc-red-7-rgb: 240, 62, 62;
    --oc-red-8: #e03131;
    --oc-red-8-rgb: 224, 49, 49;
    --oc-red-9: #c92a2a;
    --oc-red-9-rgb: 201, 42, 42;
    --oc-pink-0: #fff0f6;
    --oc-pink-0-rgb: 255, 240, 246;
    --oc-pink-1: #ffdeeb;
    --oc-pink-1-rgb: 255, 222, 235;
    --oc-pink-2: #fcc2d7;
    --oc-pink-2-rgb: 252, 194, 215;
    --oc-pink-3: #faa2c1;
    --oc-pink-3-rgb: 250, 162, 193;
    --oc-pink-4: #f783ac;
    --oc-pink-4-rgb: 247, 131, 172;
    --oc-pink-5: #f06595;
    --oc-pink-5-rgb: 240, 101, 149;
    --oc-pink-6: #e64980;
    --oc-pink-6-rgb: 230, 73, 128;
    --oc-pink-7: #d6336c;
    --oc-pink-7-rgb: 214, 51, 108;
    --oc-pink-8: #c2255c;
    --oc-pink-8-rgb: 194, 37, 92;
    --oc-pink-9: #a61e4d;
    --oc-pink-9-rgb: 166, 30, 77;
    --oc-grape-0: #f8f0fc;
    --oc-grape-0-rgb: 248, 240, 252;
    --oc-grape-1: #f3d9fa;
    --oc-grape-1-rgb: 243, 217, 250;
    --oc-grape-2: #eebefa;
    --oc-grape-2-rgb: 238, 190, 250;
    --oc-grape-3: #e599f7;
    --oc-grape-3-rgb: 229, 153, 247;
    --oc-grape-4: #da77f2;
    --oc-grape-4-rgb: 218, 119, 242;
    --oc-grape-5: #cc5de8;
    --oc-grape-5-rgb: 204, 93, 232;
    --oc-grape-6: #be4bdb;
    --oc-grape-6-rgb: 190, 75, 219;
    --oc-grape-7: #ae3ec9;
    --oc-grape-7-rgb: 174, 62, 201;
    --oc-grape-8: #9c36b5;
    --oc-grape-8-rgb: 156, 54, 181;
    --oc-grape-9: #862e9c;
    --oc-grape-9-rgb: 134, 46, 156;
    --oc-violet-0: #f3f0ff;
    --oc-violet-0-rgb: 243, 240, 255;
    --oc-violet-1: #e5dbff;
    --oc-violet-1-rgb: 229, 219, 255;
    --oc-violet-2: #d0bfff;
    --oc-violet-2-rgb: 208, 191, 255;
    --oc-violet-3: #b197fc;
    --oc-violet-3-rgb: 177, 151, 252;
    --oc-violet-4: #9775fa;
    --oc-violet-4-rgb: 151, 117, 250;
    --oc-violet-5: #845ef7;
    --oc-violet-5-rgb: 132, 94, 247;
    --oc-violet-6: #7950f2;
    --oc-violet-6-rgb: 121, 80, 242;
    --oc-violet-7: #7048e8;
    --oc-violet-7-rgb: 112, 72, 232;
    --oc-violet-8: #6741d9;
    --oc-violet-8-rgb: 103, 65, 217;
    --oc-violet-9: #5f3dc4;
    --oc-violet-9-rgb: 95, 61, 196;
    --oc-indigo-0: #edf2ff;
    --oc-indigo-0-rgb: 237, 242, 255;
    --oc-indigo-1: #dbe4ff;
    --oc-indigo-1-rgb: 219, 228, 255;
    --oc-indigo-2: #bac8ff;
    --oc-indigo-2-rgb: 186, 200, 255;
    --oc-indigo-3: #91a7ff;
    --oc-indigo-3-rgb: 145, 167, 255;
    --oc-indigo-4: #748ffc;
    --oc-indigo-4-rgb: 116, 143, 252;
    --oc-indigo-5: #5c7cfa;
    --oc-indigo-5-rgb: 92, 124, 250;
    --oc-indigo-6: #4c6ef5;
    --oc-indigo-6-rgb: 76, 110, 245;
    --oc-indigo-7: #4263eb;
    --oc-indigo-7-rgb: 66, 99, 235;
    --oc-indigo-8: #3b5bdb;
    --oc-indigo-8-rgb: 59, 91, 219;
    --oc-indigo-9: #364fc7;
    --oc-indigo-9-rgb: 54, 79, 199;
    --oc-blue-0: #e7f5ff;
    --oc-blue-0-rgb: 231, 245, 255;
    --oc-blue-1: #d0ebff;
    --oc-blue-1-rgb: 208, 235, 255;
    --oc-blue-2: #a5d8ff;
    --oc-blue-2-rgb: 165, 216, 255;
    --oc-blue-3: #74c0fc;
    --oc-blue-3-rgb: 116, 192, 252;
    --oc-blue-4: #4dabf7;
    --oc-blue-4-rgb: 77, 171, 247;
    --oc-blue-5: #339af0;
    --oc-blue-5-rgb: 51, 154, 240;
    --oc-blue-6: #228be6;
    --oc-blue-6-rgb: 34, 139, 230;
    --oc-blue-7: #1c7ed6;
    --oc-blue-7-rgb: 28, 126, 214;
    --oc-blue-8: #1971c2;
    --oc-blue-8-rgb: 25, 113, 194;
    --oc-blue-9: #1864ab;
    --oc-blue-9-rgb: 24, 100, 171;
    --oc-cyan-0: #e3fafc;
    --oc-cyan-0-rgb: 227, 250, 252;
    --oc-cyan-1: #c5f6fa;
    --oc-cyan-1-rgb: 197, 246, 250;
    --oc-cyan-2: #99e9f2;
    --oc-cyan-2-rgb: 153, 233, 242;
    --oc-cyan-3: #66d9e8;
    --oc-cyan-3-rgb: 102, 217, 232;
    --oc-cyan-4: #3bc9db;
    --oc-cyan-4-rgb: 59, 201, 219;
    --oc-cyan-5: #22b8cf;
    --oc-cyan-5-rgb: 34, 184, 207;
    --oc-cyan-6: #15aabf;
    --oc-cyan-6-rgb: 21, 170, 191;
    --oc-cyan-7: #1098ad;
    --oc-cyan-7-rgb: 16, 152, 173;
    --oc-cyan-8: #0c8599;
    --oc-cyan-8-rgb: 12, 133, 153;
    --oc-cyan-9: #0b7285;
    --oc-cyan-9-rgb: 11, 114, 133;
    --oc-teal-0: #e6fcf5;
    --oc-teal-0-rgb: 230, 252, 245;
    --oc-teal-1: #c3fae8;
    --oc-teal-1-rgb: 195, 250, 232;
    --oc-teal-2: #96f2d7;
    --oc-teal-2-rgb: 150, 242, 215;
    --oc-teal-3: #63e6be;
    --oc-teal-3-rgb: 99, 230, 190;
    --oc-teal-4: #38d9a9;
    --oc-teal-4-rgb: 56, 217, 169;
    --oc-teal-5: #20c997;
    --oc-teal-5-rgb: 32, 201, 151;
    --oc-teal-6: #12b886;
    --oc-teal-6-rgb: 18, 184, 134;
    --oc-teal-7: #0ca678;
    --oc-teal-7-rgb: 12, 166, 120;
    --oc-teal-8: #099268;
    --oc-teal-8-rgb: 9, 146, 104;
    --oc-teal-9: #087f5b;
    --oc-teal-9-rgb: 8, 127, 91;
    --oc-green-0: #ebfbee;
    --oc-green-0-rgb: 235, 251, 238;
    --oc-green-1: #d3f9d8;
    --oc-green-1-rgb: 211, 249, 216;
    --oc-green-2: #b2f2bb;
    --oc-green-2-rgb: 178, 242, 187;
    --oc-green-3: #8ce99a;
    --oc-green-3-rgb: 140, 233, 154;
    --oc-green-4: #69db7c;
    --oc-green-4-rgb: 105, 219, 124;
    --oc-green-5: #51cf66;
    --oc-green-5-rgb: 81, 207, 102;
    --oc-green-6: #40c057;
    --oc-green-6-rgb: 64, 192, 87;
    --oc-green-7: #37b24d;
    --oc-green-7-rgb: 55, 178, 77;
    --oc-green-8: #2f9e44;
    --oc-green-8-rgb: 47, 158, 68;
    --oc-green-9: #2b8a3e;
    --oc-green-9-rgb: 43, 138, 62;
    --oc-lime-0: #f4fce3;
    --oc-lime-0-rgb: 244, 252, 227;
    --oc-lime-1: #e9fac8;
    --oc-lime-1-rgb: 233, 250, 200;
    --oc-lime-2: #d8f5a2;
    --oc-lime-2-rgb: 216, 245, 162;
    --oc-lime-3: #c0eb75;
    --oc-lime-3-rgb: 192, 235, 117;
    --oc-lime-4: #a9e34b;
    --oc-lime-4-rgb: 169, 227, 75;
    --oc-lime-5: #94d82d;
    --oc-lime-5-rgb: 148, 216, 45;
    --oc-lime-6: #82c91e;
    --oc-lime-6-rgb: 130, 201, 30;
    --oc-lime-7: #74b816;
    --oc-lime-7-rgb: 116, 184, 22;
    --oc-lime-8: #66a80f;
    --oc-lime-8-rgb: 102, 168, 15;
    --oc-lime-9: #5c940d;
    --oc-lime-9-rgb: 92, 148, 13;
    --oc-yellow-0: #fff9db;
    --oc-yellow-0-rgb: 255, 249, 219;
    --oc-yellow-1: #fff3bf;
    --oc-yellow-1-rgb: 255, 243, 191;
    --oc-yellow-2: #ffec99;
    --oc-yellow-2-rgb: 255, 236, 153;
    --oc-yellow-3: #ffe066;
    --oc-yellow-3-rgb: 255, 224, 102;
    --oc-yellow-4: #ffd43b;
    --oc-yellow-4-rgb: 255, 212, 59;
    --oc-yellow-5: #fcc419;
    --oc-yellow-5-rgb: 252, 196, 25;
    --oc-yellow-6: #fab005;
    --oc-yellow-6-rgb: 250, 176, 5;
    --oc-yellow-7: #f59f00;
    --oc-yellow-7-rgb: 245, 159, 0;
    --oc-yellow-8: #f08c00;
    --oc-yellow-8-rgb: 240, 140, 0;
    --oc-yellow-9: #e67700;
    --oc-yellow-9-rgb: 230, 119, 0;
    --oc-orange-0: #fff4e6;
    --oc-orange-0-rgb: 255, 244, 230;
    --oc-orange-1: #ffe8cc;
    --oc-orange-1-rgb: 255, 232, 204;
    --oc-orange-2: #ffd8a8;
    --oc-orange-2-rgb: 255, 216, 168;
    --oc-orange-3: #ffc078;
    --oc-orange-3-rgb: 255, 192, 120;
    --oc-orange-4: #ffa94d;
    --oc-orange-4-rgb: 255, 169, 77;
    --oc-orange-5: #ff922b;
    --oc-orange-5-rgb: 255, 146, 43;
    --oc-orange-6: #fd7e14;
    --oc-orange-6-rgb: 253, 126, 20;
    --oc-orange-7: #f76707;
    --oc-orange-7-rgb: 247, 103, 7;
    --oc-orange-8: #e8590c;
    --oc-orange-8-rgb: 232, 89, 12;
    --oc-orange-9: #d9480f;
    --oc-orange-9-rgb: 217, 72, 15;
    --shadow-1: 0 0 0 1px rgba(50, 50, 93, 0.075), 0 0 1px #e9ecef, 0 2px 4px -2px rgba(138, 141, 151, 0.6);
    --shadow-2: 0 0 0 1px rgba(50, 50, 93, 0.075), 0 0 1px #e9ecef, 0 4px 8px -4px rgba(138, 141, 151, 0.6);
    --shadow-3: 0 0 0 1px rgba(50, 50, 93, 0.075), 0 0 1px #e9ecef, 0 8px 16px -8px rgba(138, 141, 151, 0.6);
    --shadow-4: 0 0 0 1px rgba(50, 50, 93, 0.075), 0 0 1px #e9ecef, 0 16px 32px -16px rgba(138, 141, 151, 0.6);
    --ease: ease;
    --ease-smooth: cubic-bezier(0.4, 0, 0.2, 1);
    --ease-inout: cubic-bezier(0.86, 0, 0.07, 1);
    --ease-snap: cubic-bezier(1, 0, 0, 1)
}

.shadow-1 {
    box-shadow: var(--shadow-1)
}

.shadow-2 {
    box-shadow: var(--shadow-2)
}

.shadow-3 {
    box-shadow: var(--shadow-3)
}

.shadow-4 {
    box-shadow: var(--shadow-4)
}

.shadow-top {
    box-shadow: 0 -5px 5px -5px #f0f0f0
}

.shadow-right {
    box-shadow: 5px 0 5px -5px #f0f0f0
}

.shadow-bottom {
    box-shadow: 0 5px 5px -5px #f0f0f0
}

.shadow-left {
    box-shadow: -5px 0 5px -5px #f0f0f0
}

.inset {
    box-shadow: inset 0 3px 8px -5px var(--neutral-4)
}

.uppercase {
    text-transform: uppercase
}

.lowercase {
    text-transform: lowercase
}

.capitalize {
    text-transform: capitalize
}

.normal-case {
    text-transform: none
}

.weight-1 {
    font-weight: 100
}

.weight-2 {
    font-weight: 200
}

.weight-3 {
    font-weight: 300
}

.weight-4 {
    font-weight: 400
}

.weight-5 {
    font-weight: 500
}

.weight-6 {
    font-weight: 600
}

.weight-7 {
    font-weight: 700
}

.weight-8 {
    font-weight: 800
}

.weight-9 {
    font-weight: 900
}

.text-1 {
    font-size: .875rem
}

.text-2 {
    font-size: 1rem
}

.text-3 {
    font-size: 1.25rem
}

.text-4 {
    font-size: 1.5rem
}

.text-5 {
    font-size: 1.75rem
}

.text-6 {
    font-size: 2rem
}

.text-7 {
    font-size: 2.25rem
}

.text-8 {
    font-size: 2.5rem
}

.text-9 {
    font-size: 2.75rem
}

.text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.text-right {
    text-align: right
}

.text-justify {
    text-align: justify
}

.text-muted {
    color: var(--neutral-6)
}

.title-1,
.title-2,
.title-3,
.title-4,
.title-5 {
    display: block;
    font-weight: 500;
    letter-spacing: -.016em
}

.title-1 {
    font-size: .875rem
}

.title-2 {
    font-size: 1rem
}

.title-3 {
    font-size: 1.25rem
}

.title-4 {
    font-size: 1.5rem
}

.title-5 {
    font-size: 1.75rem
}

.title-6 {
    font-size: 2rem;
    font-weight: 700
}

.title-7 {
    font-size: 2.25rem;
    font-weight: 700
}

.title-8 {
    font-size: 2.5rem;
    font-weight: 700
}

.title-9 {
    font-size: 2.75rem;
    font-weight: 700
}

.title-10 {
    font-size: 3rem;
    font-weight: 700
}

.no-wrap {
    white-space: nowrap
}

.pre {
    white-space: pre
}

.pre-line {
    white-space: pre-line
}

.pre-wrap {
    white-space: pre-wrap
}

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.Button {
    --height: 2.63rem;
    display: inline-block;
    border: 1px solid var(--border);
    text-transform: uppercase;
    font-size: .625rem;
    height: var(--height);
    line-height: var(--height);
    padding: 0 2.5rem;
    font-weight: 600;
    letter-spacing: .1em;
    user-select: none;
    text-decoration: none;
    color: var(--foreground);
    cursor: pointer;
    outline: none;
    border-radius: 1px
}

.Button:hover {
    border-color: var(--neutral-4)
}

.Button:focus {
    box-shadow: var(--neutral-3) 0 0 0 3px
}

.Button:active {
    transform: translateY(1px)
}

.Button.light {
    color: var(--foreground);
    background: var(--background)
}

.Button.dark,
.Button.light {
    border-color: var(--foreground)
}

.Button.dark {
    color: var(--background);
    background: var(--foreground)
}

.Button.dark:hover {
    background: var(--neutral-9)
}

.container-1 {
    width: 700px;
    margin-left: auto;
    margin-right: auto
}

@media screen and (max-width: 800px) {
    .container-1 {
        width: 80%
    }
}

.container-2 {
    width: 75%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto
}

@media screen and (max-width: 800px) {
    .container-2 {
        width: 80%
    }
}

@media screen and (max-width: 1050px) {

    body,
    html {
        font-size: 14px
    }
}

.section-1 {
    margin-top: 16rem
}

.expand {
    --amount: 25%;
    width: calc(100% + var(--amount));
    margin-left: calc(-1 * var(--amount) / 2)
}

.fullwidth {
    left: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    max-width: 100vw;
    position: relative;
    right: 50%;
    width: 100vw
}

.columns-3 {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 4rem;
    row-gap: 3rem
}

@media screen and (max-width: 800px) {
    .columns-3 {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (max-width: 600px) {
    .columns-3 {
        grid-template-columns: 1fr
    }
}

.Customers {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 4rem;
    row-gap: 6rem
}

.Customers .customer {
    display: flex;
    justify-content: center;
    align-items: center
}

.Customers .customer > img {
    max-width: 100px
}

@media screen and (max-width: 800px) {
    .Customers {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 2rem
    }
}

@media screen and (max-width: 600px) {
    .Customers {
        grid-template-columns: repeat(2, 1fr)
    }
}

.Documentation {
    display: grid;
    grid-template-columns: 200px 1fr 200px;
    max-width: 1125px;
    margin: 0 auto
}

.Documentation > .content {
    min-width: 0
}

@media screen and (max-width: 1200px) {
    .Documentation {
        grid-template-columns: 200px 1fr;
        width: 80%
    }

    .Documentation .Navigation.right {
        display: none
    }
}

@media screen and (max-width: 800px) {
    .Documentation {
        grid-template-columns: 1fr
    }

    .Documentation .Navigation.left {
        width: 100%;
        margin-bottom: 2rem
    }
}

.Documentation .Heading a {
    margin-top: -2rem;
    padding-top: 2rem;
    display: block
}

.Documentation h1 {
    font-size: 3rem
}

.Documentation h2 {
    font-size: 2.5rem
}

.Documentation h3 {
    font-size: 2rem
}

.Documentation h4 {
    font-size: 1.5rem
}

.Documentation h5 {
    font-size: 1rem
}

.Documentation table td:first-child,
.Documentation table td:nth-child(2) {
    white-space: nowrap
}

.Documentation table th:last-child {
    width: 100%
}

.PageLink {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 1.5rem;
    flex: 1 1 50%;
    height: 75px;
    margin: .5rem;
    border: 1px solid var(--neutral-2);
    border-radius: 3px;
    box-shadow: 0 3px 8px 0 rgba(116, 129, 141, .1);
    transition: all .15s ease-out;
    text-decoration: none;
    color: var(--neutral-8);
    line-height: 1.2
}

.PageLink .direction {
    font-size: 12px;
    font-weight: 500;
    color: var(--neutral-5)
}

.PageLink .name {
    font-weight: 600
}

.PageLink:hover {
    border: 1px solid var(--primary-6);
    color: var(--primary-6)
}

.PageLink:hover .icon {
    color: inherit
}

.PageLink:active {
    box-shadow: none;
    border: 1px solid var(--primary-3)
}

.PageLink .icon {
    color: var(--neutral-5)
}

.PageLink.prev {
    text-align: right
}

.PageLink.next .icon {
    order: 1
}

.Features {
    --padding: 3rem;
    display: grid;
    grid-template-columns: 1fr 1fr
}

.Features .item {
    display: flex;
    flex-direction: column
}

.Features .item .title {
    font-weight: 600;
    font-size: 1.5rem
}

.Features .item p {
    color: var(--neutral-7)
}

.Features .item .image {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 200px;
    order: -1;
    box-shadow: var(--shadow-1);
    overflow: hidden
}

.Features .item img {
    max-width: 65%;
    max-height: 65%
}

.Features .item:first-child {
    padding-right: var(--padding);
    border-right: 1px solid var(--border)
}

.Features .item:first-child,
.Features .item:nth-child(2) {
    padding-bottom: var(--padding);
    border-bottom: 1px solid var(--border)
}

.Features .item:nth-child(2) {
    padding-left: var(--padding)
}

.Features .item:nth-child(3) {
    padding-top: var(--padding);
    padding-right: var(--padding);
    border-right: 1px solid var(--border)
}

.Features .item:nth-child(4) {
    padding-top: var(--padding);
    padding-left: var(--padding)
}

@media screen and (max-width: 750px) {
    .Features {
        grid-template-columns: 1fr
    }

    .Features .item {
        border-right: none !important;
        border-left: none !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        border-bottom: 1px solid var(--border);
        padding-bottom: var(--padding)
    }

    .Features .item:last-child {
        border-bottom: none;
        padding-bottom: 0
    }
}

footer {
    font-size: .8rem;
    text-align: center;
    padding: 10rem 0 5rem;
    color: var(--neutral-5)
}

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

footer a:after {
    display: inline-block;
    content: "·";
    margin: 0 .25rem
}

footer a:last-child:after {
    display: none
}

footer a:hover {
    color: var(--foreground)
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 80%;
    max-width: 1125px;
    margin: 3rem auto 11rem
}

.Help {
    position: relative;
    cursor: help
}

@keyframes show-help {
    0% {
        opacity: 0;
        transform: translateY(5px)
    }

    to {
        opacity: 1;
        transform: translateY(-10px)
    }
}

.Help > .text {
    bottom: 100%;
    width: 300px;
    margin-left: -150px;
    text-align: center;
    text-transform: none;
    background: var(--foreground);
    color: #fff;
    padding: 15px;
    line-height: 1.6;
    border-radius: 2px;
    z-index: 50;
    letter-spacing: normal;
    font-size: .8rem;
    opacity: 0
}

.Help > .text,
.Help > .text:after {
    position: absolute;
    left: 50%;
    pointer-events: none
}

.Help > .text:after {
    top: 100%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    border-color: transparent;
    border-top-color: var(--foreground);
    border-width: 5px;
    margin-left: -5px
}

.Help:hover > .text {
    animation: show-help .3s cubic-bezier(.215, .61, .355, 1) forwards
}

.Highlights {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 2rem;
    row-gap: 3rem
}

.Highlights .icon {
    color: var(--neutral-6);
    margin-right: .5rem;
    width: 14px;
    height: 14px
}

.Highlights .text {
    font-size: 1rem;
    margin-top: .5rem
}

@media screen and (max-width: 800px) {
    .Highlights {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (max-width: 600px) {
    .Highlights {
        grid-template-columns: 1fr
    }
}

.Image > img {
    max-width: 100%
}

.Image.shadow > img {
    box-shadow: 0 5px 25px -10px rgba(0, 0, 0, .25);
    border-radius: 3px
}

.Image.desktop {
    --image: url(https://apex-software.imgix.net/apex/site/backgrounds/1.jpeg?auto=format&q=60&w=1800);
    --tint: hsla(0, 0%, 100%, 0.33);
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(var(--tint), var(--tint)), var(--image);
    background-position: 50% 50%;
    background-size: cover;
    height: 700px;
    border-radius: 2px
}

.Image.desktop > img {
    max-height: 80%;
    max-width: 80%
}

@media screen and (max-width: 700px) {
    .Image.desktop {
        background-image: none;
        height: auto
    }

    .Image.desktop > img {
        max-width: 90%
    }
}

.Image.terminal > img {
    max-width: 60%;
    border-radius: 6px
}

@media screen and (max-width: 700px) {
    .Image.terminal > img {
        max-width: 90%
    }
}

.Input {
    --height: 2.62rem;
    border-radius: 1px;
    border: none;
    font-size: 12px;
    font-weight: 400;
    height: var(--height);
    padding: 0 1rem;
    min-width: 250px;
    outline: none;
    box-shadow: var(--neutral-2) 0 0 0 1px
}

.Input:focus {
    box-shadow: var(--input-focus-shadow)
}

.Link.large,
.Link.small {
    display: inline-flex;
    text-decoration: none;
    color: #0044e4;
    font-weight: 400;
    font-size: 1.25rem;
    align-items: center;
    border-bottom: none;
    position: relative
}

.Link.large:after,
.Link.small:after {
    display: inline-block;
    content: "→";
    margin-left: .5rem;
    font-weight: 300;
    transition: transform .15s ease
}

.Link.large:hover:after,
.Link.small:hover:after {
    transform: translateX(5px)
}

.Link.small {
    font-size: 1rem
}

.Link.small:after {
    margin-left: .3rem;
    font-size: .9rem
}

.Markdown li > a,
.Markdown table a,
p > a {
    text-decoration: none;
    font-weight: 500;
    color: var(--primary-6)
}

.Markdown li > a:hover,
.Markdown table a:hover,
p > a:hover {
    color: var(--primary-7);
    border-bottom: 1px solid var(--neutral-3)
}

.LoginButton {
    --height: 1.5rem;
    color: var(--background);
    background: var(--primary-6);
    border-color: var(--foreground);
    text-decoration: none;
    font-size: .725rem;
    font-weight: 500;
    border-radius: 2px;
    height: var(--height);
    line-height: var(--height);
    padding: 0 .5rem
}

.LoginButton:hover {
    background: var(--primary-5)
}

.LoginButton:active {
    background: var(--primary-7)
}

.Logo {
    display: block;
    font-weight: 600;
    user-select: none;
    text-decoration: none;
    color: inherit
}

.Logo a {
    text-decoration: none;
    color: inherit;
}

.Logo > span {
    margin-left: .25rem;
    font-size: 12px;
    font-weight: 500;
    background: var(--primary-0);
    color: var(--primary-9);
    padding: .25rem .5rem;
    border-radius: 3px
}

.Markdown p {
    margin-top: 1.5rem;
    font-size: 17px
}

.Markdown h2,
.Markdown h3,
.Markdown h4,
.Markdown h5,
.Markdown h6 {
    position: relative;
    margin-top: 6rem
}

.Markdown h2 {
    font-size: 2.5rem
}

.Markdown h3 {
    font-size: 2rem
}

.Markdown h4 {
    font-size: 1.5rem
}

.Markdown h5 {
    font-size: 1.25rem
}

.Markdown h6 {
    font-size: 1rem
}

.Markdown pre > code {
    margin-top: 1.5rem;
    display: block;
    background: #f7f7f7;
    color: var(--foreground);
    padding: 1.75rem;
    border-radius: 3px;
    line-height: 1.25;
    font-size: 14px;
    overflow-x: auto;
    user-select: all
}

li > code,
p > code,
td > code {
    font-weight: 400;
    line-height: 1.625;
    font-size: .75rem;
    margin: 0 1px;
    display: inline-block;
    padding: 3px 6px;
    font-family: Source Code Pro, Menlo, monospace;
    border-radius: 3px;
    background: #f5f7f9;
    color: var(--neutral-8);
    user-select: all
}

.Markdown ul {
    margin-top: 1.5rem
}

.Markdown ul ul {
    margin-top: 0
}

.Markdown ul li {
    list-style: none;
    margin-left: 1rem;
    line-height: 1.7
}

.Markdown ul li:before {
    content: "•";
    margin-right: .5rem
}

.Markdown ol {
    margin-top: 1.5rem
}

.Markdown ol ol {
    margin-top: 0
}

.Markdown ol li {
    list-style: none;
    margin-left: -1.5rem;
    line-height: 1.7
}

.Markdown ol li:before {
    content: "•";
    margin-right: .5rem
}

.Markdown .Heading {
    padding-left: 1.5rem;
    margin-left: -1.5rem
}

.Markdown .Anchor {
    position: absolute;
    opacity: 0;
    display: inline-block;
    top: 0;
    left: 0;
    outline: none;
    transition: all .15s cubic-bezier(.215, .61, .355, 1);
    transform: translateX(2rem);
    color: var(--neutral-11)
}

.Markdown .Heading:hover .Anchor {
    opacity: .45;
    transform: translateX(0)
}

.Markdown .Heading .Anchor:hover {
    opacity: 1;
    color: var(--neutral-12)
}

.Markdown .Image {
    --image: url(https://apex-software.imgix.net/apex/site/backgrounds/1.jpeg?auto=format&q=60&w=1800);
    --tint: hsla(0, 0%, 100%, 0.33);
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(var(--tint), var(--tint)), var(--image);
    background-position: 50% 50%;
    background-size: cover;
    height: 500px;
    border-radius: 2px;
    margin: 2rem 0
}

.Markdown .Image > img {
    max-width: 95%;
    max-height: 95%;
    box-shadow: 0 5px 25px -10px rgba(0, 0, 0, .65);
    border-radius: 3px
}

.Markdown .Image.terminal {
    background: none;
    height: auto
}

.Markdown .Image.terminal > img {
    box-shadow: var(--shadow-4)
}

@media screen and (max-width: 700px) {
    .Markdown .Image {
        background-image: none;
        height: auto
    }

    .Markdown .Image > img {
        max-width: 90%
    }
}

.Markdown .Message {
    margin: 25px 0;
    padding: 25px;
    background: #f7f7f7;
    border-left: 2px solid var(--primary-5);
    border-radius: 2px
}

.Markdown .Message p {
    margin: 0
}

.Markdown .Message code {
    background-color: var(--neutral-2)
}

.Markdown > hr {
    margin: 5rem 0;
    border: none;
    border-bottom: 1px dotted var(--neutral-4)
}

.Markdown table {
    width: 100%;
    margin-top: 2rem;
    border-collapse: collapse
}

.Markdown table th {
    padding: .5rem 1rem .5rem .5rem;
    text-align: left;
    font-size: 12px;
    font-weight: 400;
    color: var(--neutral-6);
    border-bottom: 2px solid var(--neutral-2)
}

.Markdown table td {
    padding: .5rem 1rem .5rem .5rem;
    font-size: 13px;
    line-height: 1.6;
    border-bottom: 1px solid var(--neutral-2)
}

.Menu {
    --ease: cubic-bezier(0.075, 0.82, 0.165, 1.15);
    display: flex;
    font-size: .8rem;
    align-items: center;
    cursor: pointer;
    user-select: none;
    position: relative
}

.Menu .icon {
    width: 12px;
    margin-left: .25rem
}

.Menu .content {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    box-shadow: var(--shadow-4);
    width: 100%;
    z-index: 50;
    height: 23rem;
    will-change: transform, opacity
}

.Menu:hover .content {
    display: block;
    animation: menu-show .3s forwards var(--ease)
}

.Menu .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 75%;
    height: 100%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    opacity: 0;
    will-change: transform, opacity
}

.Menu:hover .container {
    animation: menu-show .3s forwards 75ms var(--ease)
}

.Menu .products ul li {
    list-style: none;
    margin: 2.5rem 0
}

.Menu .products a {
    position: relative;
    display: block;
    text-decoration: none;
    color: inherit;
    pointer-events: all;
    font-size: 1rem
}

@media (hover) {
    .Menu .products a:hover:before {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        display: block;
        content: "";
        border-left: 2px solid var(--neutral-12);
        transform: translateX(-1rem);
        animation: product-hover .15s forwards
    }
}

.Menu .products a .name {
    display: block;
    font-weight: 600;
    font-size: 1rem
}

.Menu .products a .description {
    display: block;
    font-size: .875rem;
    margin-top: .5rem;
    color: var(--neutral-7)
}

.Menu .links ul li {
    list-style: none;
    margin: 1rem 0;
    text-align: right
}

.Menu .links a {
    display: inline-block;
    text-decoration: none;
    color: inherit;
    font-size: .875rem;
    color: var(--neutral-7)
}

.Menu .links a:hover {
    color: var(--neutral-12)
}

.Menu .links a.highlight {
    font-weight: 600;
    color: var(--foreground)
}

.Menu .links a.highlight:hover {
    text-decoration: underline
}

.Menu:before {
    opacity: 0;
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    z-index: 25;
    background: rgba(0, 0, 0, .25);
    width: 100vw;
    height: 100vh;
    cursor: default;
    pointer-events: none;
    transition: opacity .25s;
    will-change: opacity
}

.Menu:hover:before {
    opacity: 1
}

@keyframes product-hover {
    0% {
        transform: translateX(-2rem);
        opacity: 0
    }

    to {
        transform: translateX(-1rem);
        opacity: 1
    }
}

@keyframes menu-show {
    0% {
        opacity: 0;
        transform: translateY(-4rem)
    }

    to {
        opacity: 1;
        transform: translateY(-10px)
    }
}

@media screen and (max-width: 500px) {
    .Menu .content {
        height: auto
    }

    .Menu .container {
        padding: 2rem 3rem;
        width: 100%;
        flex-direction: column;
        justify-content: start;
        align-items: flex-start
    }

    .Menu .links ul li {
        margin: 1.5rem 0;
        text-align: left
    }
}

.Navigation {
    --padding: 1rem;
    --font-size: 0.875rem;
    --border: none;
    position: sticky;
    top: 2rem;
    width: 100%
}

.Navigation.left {
    margin-right: var(--padding);
    padding-right: var(--padding)
}

.Navigation.right {
    margin-left: var(--padding);
    padding-left: var(--padding)
}

.Navigation.small {
    --font-size: 12px
}

.Navigation .contents {
    display: flex;
    align-items: center;
    color: var(--neutral-5);
    margin-bottom: 1rem;
    padding-left: .5rem
}

.Navigation .icon {
    margin-right: .5rem;
    width: 15px;
    height: 15px
}

.Navigation .contents span {
    text-transform: uppercase;
    font-size: 10px;
    letter-spacing: 1.1px;
    font-weight: 700
}

.Navigation .item {
    display: flex;
    align-items: center;
    text-decoration: none;
    line-height: 1.6;
    margin: .25rem 0;
    padding: .25rem .5rem;
    border-radius: 2px;
    font-size: var(--font-size);
    font-weight: 400;
    color: var(--neutral-7);
    cursor: pointer;
    user-select: none
}

.Navigation .item:hover {
    color: var(--foreground);
    background: var(--neutral-0)
}

.Navigation .item:active {
    color: var(--foreground)
}

.Navigation .expandable.active {
    height: auto
}

.Navigation .item.active {
    color: var(--foreground);
    font-weight: 600
}

.Navigation .expandable {
    outline: none
}

.NewsletterForm {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 7.5rem
}

.NewsletterForm .Button {
    margin-left: .5rem
}

@media screen and (max-width: 500px) {
    .NewsletterForm {
        margin-top: 5rem
    }

    .NewsletterForm .Input {
        width: 100%
    }

    .NewsletterForm .Button {
        width: 100%;
        margin-top: 1rem;
        margin-left: 0
    }
}

.Pricing {
    display: flex;
    justify-content: center;
    align-items: center
}

.Pricing .Pricing .plans .names {
    font-weight: 600
}

.Pricing .plans {
    margin: 0 auto;
    font-weight: 200;
    line-height: 3.5;
    text-align: center;
    border-collapse: collapse;
    transform: translateX(-75px)
}

.Pricing .plans td {
    border-right: 1px solid var(--border);
    padding: 0 30px
}

.Pricing .plans td:last-child {
    border-right: none
}

.Pricing .plans .feature {
    font-weight: 400;
    font-size: .9rem;
    text-align: right
}

.Pricing .plans .names {
    letter-spacing: .7px;
    text-transform: uppercase;
    font-size: .8rem;
    font-weight: 600;
    user-select: none
}

.Pricing .plans .names td,
.Pricing .plans .prices td {
    padding: 20px 0;
    border-right: none
}

.Pricing .plans .prices td {
    font-weight: 600;
    font-size: 1rem
}

.Pricing .plans .prices td:not(:first-child):before {
    content: "$";
    font-weight: 100;
    font-size: .8em;
    position: relative;
    color: var(--neutral-7);
    top: -5px;
    left: -3px
}

.Pricing .plans .prices .unit {
    content: "/mo";
    font-weight: 200;
    font-size: .8em;
    position: relative;
    color: var(--neutral-7);
    top: 0
}

@media screen and (max-width: 550px) {
    .Pricing .plans {
        transform: translateX(-50px)
    }

    .Pricing .plans td {
        padding: 0 15px
    }

    .Pricing .plans .prices td:not(:first-child):after {
        content: " "
    }
}

.Markdown details,
.Question {
    margin-top: 2rem
}

.Markdown details summary,
.Question summary {
    user-select: none;
    font-size: 1.25rem;
    font-weight: 600;
    cursor: pointer
}

.Markdown details p,
.Question p {
    margin-top: 1.5rem;
    font-size: 1rem;
    color: var(--neutral-7);
    margin-left: 1.5rem
}

.Markdown details summary::-webkit-details-marker,
.Question summary::-webkit-details-marker {
    display: none
}

.Markdown details summary,
.Question summary {
    outline: none
}

.Markdown details summary:before,
.Question summary:before {
    display: inline-block;
    content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik05IDE4bDYtNi02LTYiLz48L3N2Zz4=");
    margin-right: .5rem;
    transition: transform .2s ease-out
}

.Markdown details[open] summary:before,
.Question[open] summary:before {
    transform: rotate(90deg)
}

.Section {
    margin-top: 16rem
}

.Section.top {
    margin-top: 0
}

.Section > .subtitle {
    letter-spacing: -.016em;
    color: var(--neutral-12);
    font-size: 1.15rem;
    font-weight: 700;
    cursor: default
}

@keyframes show-section {
    0% {
        opacity: 0;
        transform: translateY(-2rem)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes show-section-image {
    0% {
        opacity: 0;
        transform: translateY(-2rem)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.Subscribe {
    --ease: cubic-bezier(0.075, 0.82, 0.165, 1.15);
    display: inline-flex;
    align-items: center;
    font-size: .875rem;
    color: var(--primary-7);
    border: 1px solid var(--neutral-1);
    padding: 12px 22px;
    border-radius: 1px;
    user-select: none;
    cursor: pointer;
    position: relative
}

.Subscribe > svg {
    margin-right: .5rem;
    transform: scale(.85)
}

.Subscribe:hover {
    color: var(--primary-5);
    border-color: var(--neutral-3)
}

.Subscribe:active {
    color: var(--primary-8);
    background: var(--primary-0)
}

.Subscribe .content.show,
.Subscribe:hover .content {
    display: block
}

.Subscribe .content {
    position: absolute;
    display: none;
    top: -.25rem;
    left: -.25rem;
    background: #fff;
    z-index: 25;
    padding: 1rem;
    box-shadow: var(--shadow-1);
    will-change: opacity;
    animation: subscribe-hover .3s forwards var(--ease);
    border-radius: 2px
}

@keyframes subscribe-hover {
    0% {
        transform: translateY(-1.5rem);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

.Subscribe a {
    display: flex;
    color: inherit;
    align-items: center;
    text-decoration: none;
    height: 2rem;
    border-radius: 3px;
    margin-top: 1px;
    padding: 0 .75rem;
    white-space: nowrap
}

.Subscribe a:hover {
    background: var(--neutral-0)
}

.Subscribe a:active {
    background: var(--neutral-1)
}

.Subscribe a svg {
    margin-right: .5rem;
    flex: 0 0 auto
}

.Subscribe .content[data-show-email] a,
.Subscribe .email {
    display: none
}

.Subscribe .content[data-show-email] .email {
    display: block;
    animation: subscribe-hover .3s forwards var(--ease)
}

.Subscribe .email form {
    display: flex
}

.title-1,
.title-2,
.title-3,
.title-4,
.title-5,
.title-6,
h1,
h2,
h3,
h4,
h5,
h6 {
    letter-spacing: -.016em;
    line-height: 1.25;
    font-weight: 700;
    color: #101010;
    cursor: default
}

.title-1,
h1 {
    font-size: 4rem
}

.title-2,
h2 {
    font-size: 3.5rem
}

.title-3,
h3 {
    font-size: 3rem
}

.title-4,
h4 {
    font-size: 2.5rem
}

.title-5,
h5 {
    font-size: 2rem
}

.title-6,
h6 {
    font-size: 1rem
}

p {
    letter-spacing: .004em;
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.6;
    color: #121212
}

p.small {
    font-size: 17px
}

p.tiny {
    font-size: 14px
}

/* add by vanleon */

img {
    max-width: 100%;
    display: block;
    margin: auto;
}

ol li p {
    display: inline;
}

ul li p {
    display: inline;
}

@media screen and (max-width: 1150px) {
    .min-column-header {
        display: block;
    }
}

@media screen and (min-width: 1150px) {
    .min-column-header {
        display: none;
    }
}

@media screen and (max-width: 1150px) {
    .column-header {
        display: none;
    }
}

video {
    width: 100%;
}

.video-m3u8 {
    margin-top: 24px;
}
