* { box-sizing: border-box; } body { background-color: var(--background); background-image: url(--pageBgImage); color: var(--foreground); font-family: var(--mainfont); font-size: 1em; } a { color: var(--accent); text-decoration: underline; &:hover { color: color-mix(in srgb-linear, var(--accent), #000000 50%); } } .icon { width: 16px; height: 16px; text-indent: -999px; overflow: hidden; display: inline-block; vertical-align: middle; margin-right: 5px; background-color: var(--foreground); &.web { mask: url(../images/web.svg); } &.windows { mask: url(../images/windows.svg); } &.macos { mask: url(../images/macos.svg); } &.linux { mask: url(../images/linux.svg); } &.android { mask: url(../images/android.svg); } &.random { mask: url(../images/random.svg); } &.sort-asc { mask: url(../images/sort-asc.svg); } &.sort-desc { mask: url(../images/sort-desc.svg); } .active & { background-color: var(--accent); } } .btn { padding: 5px 10px; font-size: 1em; font-weight: bold; border-radius: 5px; background-color: var(--accent); color: var(--background); text-decoration: none; white-space: pre; &:hover { background-color: color-mix(in srgb-linear, var(--accent), #000000 50%); color: var(--background); } } #page { max-width: 960px; margin: 50px auto; background-color: color-mix(in srgb-linear, var(--background), #FFFFFF 50%); background-image: var(--contentBgImage); border-radius: var(--roundedCorners); body.wide & { max-width: none; margin: 0; } } header { padding: 20px 20px 0; position: relative; background-color: color-mix(in srgb-linear, var(--background), #FFFFFF 25%); h1 { font-size: 2.5em; font-weight: bold; margin: 0; } .hosted { margin: 0; } .joined, .entries { text-align: center; position: absolute; top: 20px; right: 20px; .count { font-size: 2.25em; display: block; } .caption { font-size: .8em; display: block; color: color-mix(in srgb-linear, var(--foreground) #FFFFFF, 25%); } } nav { margin-top: 20px; padding-bottom: 10px; ul { margin-bottom: 0; display: flex; gap: 10px; list-style: none; padding: 0; li { a { text-decoration: none; padding: 5px 0; border-bottom: 5px transparent solid; color: var(--foreground); &.current, &:hover { border-bottom: 5px var(--accent) solid; color: var(--foreground); } } } } } } main { padding: 20px; text-align: center; .submissions & { display: grid; grid-template-areas: "filters list"; grid-template-columns: 250px 1fr; } } footer { text-align: center; font-size: .8em; padding: 5px 10px; margin-top: 20px; a { text-decoration: none; } } [popover] { position: fixed; z-index: 99; max-width: 90%; max-height: 90%; } [popover]:-internal-popover-in-top-layer::backdrop { background-color: rgba(0,0,0,.5); }