.admin {
	padding: 4px;
	border-radius: 4px;
	background: green;
	margin: 6px;
	width: 200px;
	display: inline-block;
}
.admin.protected {
	background: red;
}
.admin INPUT[type="submit"] {
	width: 100%;
}
.admin.protected INPUT[type="submit"] {
	width: 90%;
}


.bbcode {
	overflow-wrap: anywhere;
}
.bbcode BLOCKQUOTE {
	border: 1px solid black;
	padding: 8px;
	background: #DDD;
}
.bbcode .anchor A.alink {
	visibility: hidden;
}
.bbcode .anchor:hover A.alink {
	visibility: visible;
}

.comment {
	text-align: left;
	position: relative;
	overflow-wrap: anywhere;
}
.comment IMG {
	max-width: 100%;
}
.comment .info {
	visibility: hidden;
	text-align: center;
	padding: var(--block-padding);
	background: var(--block);
	border: 1px solid var(--block-border);
	position: absolute;
	top: 0;
	left: -180px;
	width: 180px;
	z-index: 1;
	box-shadow: 0 0 4px #000;
	border-radius: 4px;
}
.comment:hover .info {
	visibility: visible;
}

.comment_add INPUT:not([type="checkbox"]):not([type="radio"]),
.comment_add TEXTAREA,
.comment_add BUTTON,
.comment_add SELECT {
	width: 100%;
}

#comment-list-recent .more {
	display: block;
	padding-top: 8px;
}
.comment_big_list {
	display: flex;
	gap: 1em;
}
.comment_big_list .thumb {
	flex: 0;
}
.comment_big_list .comment_list {
	flex: 1;
	border-left: 1px solid var(--block-border);
}
.comment_big_list .comment {
	margin-left: 0;
}

/* checkbox, title, doc link */
.ext-list TD:nth-child(1) {
    width: 1em;
}
.ext-list TD:nth-child(2) {
    width: 12em;
}
.ext-list TD:nth-child(3) {
    width: 1em;
}

#handle_pixel_media IMG {
    max-width: 100%;
}

.command_example {
	margin: 12pt;
	padding-left: 16pt;
}

.command_example code {
    padding:4pt;
    border: dashed 2px black;
    background: inherit;
}

.command_example p {
    padding-left: 16pt;
}

@media (min-width: 750px) {
    .command_example code {
        display: table-cell;
        width: 256px;
    }

    .command_example p {
        display: table-cell;
    }
}

SECTION#image-list {
	box-shadow: none;
}
SECTION#image-list .blockbody {
	background: none;
	border: none;
	padding: 0px;
	text-align: left;
}
.shm-image-list {
	display: grid;
	grid-template-columns: repeat( auto-fill, calc(var(--thumb-width) + 42px) );
	place-items: center;
}
.shm-image-list .thumb {
	margin-bottom: 8px;
}

.setupblocks {
	column-width: 400px;
	column-gap: 1em;
	max-width: 1200px;
	margin: auto;
}
.setupblocks > .setupblock:first-of-type { margin-top: 0; }

.setupblock {
	break-inside: avoid;
	text-align: center;
}
.setupblock TEXTAREA {
	width: 100%;
	font-size: 0.75rem;
	resize: vertical;
}
.setupblock SELECT[multiple] {
	width: 100%;
}

.advanced_settings INPUT {
	width: 100%;
}

#Setupmain {
	box-shadow: none;
}
#Setupmain>.blockbody {
	background: none;
	border: none;
	margin: 0;
	padding: 0;
}
.setupblock .form {
	width: 100%;
}
.setupblock .form TH {
	font-weight: normal;
}
.setupblock .advanced {
    color: var(--danger-color);
    background: var(--danger-background);
}
.setupsubmit {
	margin-top: 1em;
	padding: 1em;
	width: 100%;
}

:root {
	--added-background: lightgreen;
	--removed-background: lightcoral;

	--flash-color: #882;
	--flash-border: #660;
	--blink-base-color: #FF70;
	--blink-blink-color: #FF7F;
}

@media (prefers-color-scheme: dark) {
	:root {
		--added-background: green;
		--removed-background: coral;
	}
}

INPUT, TEXTAREA, SELECT, BUTTON {
	box-sizing: border-box;
	font-size: 1em;
}

TABLE.form {width: 300px;}
TABLE.zebra {width: 100%;}

TABLE.form TD, TABLE.form TH {vertical-align: middle;}
TABLE.form TBODY TR TD {text-align: left;}
TABLE.form TBODY TR TH {text-align: right; padding-right: 4px; width: 1%; white-space: nowrap;}
TABLE.form TBODY TR.header TD,
TABLE.form TBODY TR.header TH {text-align: center; width: auto;}
TABLE.form TD + TH {padding-left: 8px;}
TABLE.form INPUT:not([type="checkbox"]):not([type="radio"]),
TABLE.form SELECT,
TABLE.form TEXTAREA,
TABLE.form BUTTON {width: 100%;}

H1, H2, H3 {
    overflow-wrap: anywhere;
}

*[onclick],
H3[class~="shm-toggler"] {
    cursor: pointer;
}

@keyframes blink {
    0% {background-color: var(--blink-base-color);}
    25% {background-color: var(--blink-blink-color);}
    50% {background-color: var(--blink-base-color);}
    75% {background-color: var(--blink-blink-color);}
    100% {background-color: var(--blink-base-color);}
}
.blink {
    animation: blink 2s linear 1;
}

#flash {
    color: #444;
    background-color: var(--flash-color);
    margin-bottom: 1rem;
    border-radius: var(--border-radius);
    border: 1px solid var(--flash-border);
}
#flash B {
    display: block;
    padding: 8px;
    border-radius: var(--border-radius);
}

.tag {
    overflow-wrap: anywhere;
}

.prose {
    text-align: left;
}
.prose P:first-child {
    margin-top: 0;
}
.prose P:last-child {
    margin-bottom: 0;
}

TABLE#large_upload_form.form {
	width: 100%;
}

.mini_upload INPUT:not([type="checkbox"]):not([type="radio"]),
.mini_upload TEXTAREA,
.mini_upload BUTTON,
.mini_upload SELECT {
	width: 100%;
}

TABLE.form.image_info {
    width: 550px;
    max-width: 100%;
}

.image_info .edit {
    display: block;
}
.image_info .view {
    display: none;
}

.image_info.infomode-view .edit {
    display: none;
}
.image_info.infomode-view .view {
    display: block;
}

.image_info TEXTAREA {
    min-width: 100%;
    min-height: 3rem;
}
.image_info .image-info-avatar-box {
    vertical-align: top;
}

.post_controls FORM {
    margin-bottom: 0.75em;
}
.post_controls FORM:last-child {
    margin-bottom: 0;
}

#downtime #message, #downtime #login {
	text-align: center;
}
#downtime H3 {
	margin-top: 32px;
}
#downtime #login_table {
	margin: auto;
}


.wiki-page {
	text-align: left;
}
.wiki-footer {
	text-align: center;
}
.wiki-all-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1em;
}
.wiki-all-grid A {
	font-size: 1.5em;
	background-color: #8881;;
}
#handle_video_media VIDEO {
    width: 100%;
    max-height: 85vh;
    background: black;
}

.autocomplete_completions {
    position: absolute;
    z-index: 1000;
    border: 1px solid #ccc;
    color: #000;
    background-color: #fff;
    padding: 5px;
    list-style: none;
    margin: 0;
    padding: 0;
    font-size: 1em;
    white-space: nowrap;
    overflow: hidden;
    text-align: left;
}
.autocomplete_completions LI {
    padding: 0.15em;
}
.autocomplete_completions .selected {
    background-color: #ccc;
    outline: none;
}

#filter-list{padding:revert; text-align:left;}
.thumb.filtered.filtered-active{display:none;}
.filter-inactive,.filter-inactive:hover{text-decoration: line-through;}
div#front-page h1 {font-size: 4rem; margin-top: 2em; margin-bottom: 0; text-align: center; border: none; background: none; box-shadow: none; -webkit-box-shadow: none; -moz-box-shadow: none;}
div#front-page h1 A {text-decoration: none;}
div#front-page {text-align:center;}
div#front-page .space {margin-bottom: 1em;}
div#front-page div#links a {display: inline-block; margin: 0 0.5em;}
div#front-page li {list-style-type: none; margin: 0;}
@media (max-width: 800px) {
	div#front-page h1 {font-size: 3rem; margin-top: 0.5em; margin-bottom: 0.5em;}
}
div#front-page > #search > form {margin: 0 auto;}
div#front-page > #search > form > input[type=submit]{padding: 4px 6px;}
#counter {display: grid; justify-content: center; margin: auto; max-width: 66%;}
.counter-img {grid-row: 1; max-width: 100%; height: auto;}

.blur IMG {
	filter: blur(5px);
	transition: all .3s ease-in;
}
.blur IMG:hover {
	filter: blur(0px);
}
#terms-modal {
	margin: auto;
	margin-top: 20vh;
	text-align: center;
	width: fit-content;
	background: var(--block);
	border: 1px solid var(--block-border);
	border-radius: var(--border-radius);
	padding: 0;
}
#terms-modal H3 {
    background: var(--header);
    border-bottom: 1px solid var(--header-border);
    margin: 0;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
}
#terms-modal>DIV {
    padding: 1em;
}
#terms-modal BUTTON {
    padding: 0 1em;
	margin: 1em .5em 0 .5em;
}
#terms-modal-bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	backdrop-filter: blur(10px);
}

#handle_image_media .zoom-container {
    overflow: scroll;
    clip-path: inset(0);
}

#handle_image_media IMG  {
    max-width: 100%;
    max-height: 95vh;
}

#handle_image_media .zoom-container IMG {
    max-width: none;
    max-height: none;
}

.notes-container {
	pointer-events: none;
	position: absolute;
}

.notes-container .note {
	display: flex;
	justify-content: center;
	align-items: center;
	color: black;
	background-color: #FFE;
	border: 1px solid #DDC;
	overflow: hidden;
	position: absolute;
	opacity: 0.5;
	z-index: 1;
	pointer-events: auto;
}
/* note mouse events should be relative to the top-level note,
 * not relative to any inner elements */
.notes-container .note DIV {
    pointer-events: none;
}
.notes-container .note.editing {
	opacity: 1;
	z-index: 2;
}
.notes-container .note.editing.dragging {
	opacity: 0.5;
	z-index: 2;
}
.notes-container .note:hover {
	opacity: 1;
	z-index: 3;
}

.notes-container.dragging .editor {
    display: none;
}
.notes-container .editor {
	display: grid;
	color: black;
	background-color: #EFE;
	border: 1px solid #000;
	position: absolute;
	grid-template-columns: 1fr 1fr;
	grid-template-areas:
		"text text"
		"save cancel"
		"delete delete";
	z-index: 4;
	pointer-events: auto;
}
.notes-container .editor TEXTAREA {
	grid-area: text;
}
.notes-container .editor BUTTON[value="Save"] {
	grid-area: save;
}
.notes-container .editor BUTTON[value="Cancel"] {
	grid-area: cancel;
}
.notes-container .editor BUTTON[value="Delete"] {
	grid-area: delete;
}

.thumb IMG {
	border-width: 2px !important;
}

.shm-thumb-has_child img {
	border-color: lime !important;
}

.shm-thumb-has_parent img {
	border-color: #cc0 !important;
}

.shm-thumb-has_child.shm-thumb-has_parent img {
	border-color: lime #cc0 #cc0 lime !important;
}

.tagcategoryblock {
	margin:0.6rem 1rem 0.6rem 0;
	padding:0.5rem 0.6rem 0.7rem;
	width:18rem;
	border:1px solid #AAAAAA;
	border-radius:0.25rem;
	display:inline-block;
}
.tagcategoryblock table {
	width:100%;
	border-spacing:0;
}
.tagcategoryblock input, .tagcategoryblock span {
	width:100%;
	height:100%;
}
.tagcategoryblock td:first-child {
	padding:0.3rem 0.7rem 0.4rem 0;
	text-align:right;
	width:40%;
}
.tagcategoryblock td:last-child {
	width:60%;
}
.tagcategoryblock td:last-child span {
	width:7ch;
	padding:0.24rem 0.7rem 0.5rem 0;
	display:inline-block;
}
.tagcategoryblock button {
	width:100%;
	margin-top:0.4rem;
	padding:0.2rem 0.6rem;
}

.tagcategoryblock input[type="color"] {
	height: 22px;
}

.tagcategoryblock .tc_colorswatch {
	display:inline-block;
	vertical-align:middle;
	height:1.25rem;
	width:1.25rem;
	border-radius:4px;
}

.tageditcloud span.tag-selected {
	background:#88EE88;
}

.tageditcloud {
	color: #0000FF;
}

.tageditcloud div#tagcloud_unset {
	color: #0000FF;
}

.tageditcloud div#tagcloud_set {
        color: #0000FF;
	font-style:italic;
}

.tageditcloud div#tagcloud_extra {  
        color: #0000FF;
}

.bulk_selected {
	outline: 3px solid blue;
}

.bulk_action {
	margin-top: 8pt;
}
.bulk_selector_controls table td {
	width: 33%;
}
.added-tag{background:var(--added-background);}
.deleted-tag{background:var(--removed-background);text-decoration:line-through;}

:root {
	color-scheme: light dark;

	--page: #FFFFFF;
	--page2: #ddd;
	--color-background-1: #bbb;
	--text: black;

	--danger-color: #000;
	--danger-background: #FAA;

	--link-first: #FF3333;
	--link-default: #006FFA;
	--link-hover: #33CFFF;
	--link-header: black;

	--header-selected: #EEEEFF;
	--footer-fg: #555555;
	--tag-count: #AAAAAA;
	--comment-meta: gray;

	--paginator-border: #EEEEEE;
	--paginator-hover-bg: blue;
	--paginator-hover-fg: white;

	--block-border: #AAAAAA;

	--zebra-heading-fg: #171BB3;
	--zebra-hover-bg: #FFD;
}

@media (prefers-color-scheme: dark) {
	:root {
		--page: #222;
		--page2: #444;
		--color-background-1: #111;
		--text: #E8E8EC;

		--danger-color: #E8E8EC;
		--danger-background: #955;

		--link-first: #FF5A5B;
		--link-default: #009BE9;

		--header-selected: #2C2D3F;

		--paginator-hover-bg: #009BE9;
		--paginator-hover-fg: white;

		--zebra-heading-fg: #E8E8EC;
		--zebra-hover-bg: #2C2D3F;
	}
}

:root {
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	font-size-adjust: none;
	font-stretch: normal;
	font-size: 87.5%;
	line-height: normal;
	-x-system-font: none;
}

HEADER {
	grid-column: 1 / 3;
	grid-row: 1;
	margin-bottom: 0.9rem;
	text-align: left;
}

HEADER h1 {
	text-align: left;
}

HEADER #site-title {
	margin-left: 30px;
	font-family: octosquare, "Tahoma", "Verdana", "Helvetica", sans-serif;
}

HEADER #site-title IMG {
	vertical-align: middle;
	margin-right: .5rem;
}

HEADER ul#navbar,
HEADER ul#subnavbar {
	font-family: octosquare, "Verdana", "Helvetica", sans-serif;
}

HEADER ul#navbar {
	margin: 0;
	padding: 0 30px 0 30px;
}

HEADER ul#navbar li {
	margin: 0;
}

HEADER ul#navbar li a {
	display: inline-block;
	margin: 0 0.15rem;
	padding: 0.4rem 0.6rem;
}

HEADER ul#navbar li:first-child a {
	margin-left: -0.6rem;
	color: var(--link-first);
	font-weight: bold;
}

HEADER ul#navbar li a.current-page {
	background-color: var(--header-selected);
	font-weight: bold;
}

HEADER ul#subnavbar {
	padding: 0 30px 0 30px;
	background-color: var(--header-selected);
}

HEADER ul#subnavbar li {
	display: inline-block;
	margin: 0 0.15rem;
	padding: 0.4rem 0.6rem;
}

HEADER ul#subnavbar li:first-child {
	margin-left: -0.6rem;
}

body {
	background-color: var(--page);
	color: var(--text);
}

BODY.layout-grid {
	display: grid;
	grid-template-columns: 11.5rem auto;
	grid-gap: 0 4rem;
}

BODY.layout-no-left NAV {
	display: none;
}

BODY.layout-no-left ARTICLE {
	margin-left: 2rem;
}

h1 {
	margin-top: 0;
	margin-bottom: 0;
	padding: 0.35rem;
	font-size: 2rem;
}

h1 a {
	color: var(--link-header);
}

h3 {
	margin-top: 0;
	margin-bottom: 0;
	padding: 0.2rem 0.2rem 0.2rem 0;
	font-size: 1rem;
}

h4 {
	font-size: 1.4rem;
}

h5 {
	font-size: 1.2rem;
}

table.zebra {
	border-spacing: 0;
	border-collapse: collapse;
}

table.zebra>tbody>tr:hover {
	background: var(--zebra-hover-bg);
}

table.zebra th {
	padding-right: 0.4rem;
	color: var(--zebra-heading-fg);
}

table.zebra td {
	margin: 0;
	padding-right: 0.6rem;
	border: 1px dotted #EEE;
}

table.zebra th {
	margin: 0;
	text-align: left;
}

thead {
	font-weight: bold;
	-moz-background-clip: border;
	-moz-background-inline-policy: continuous;
	-moz-background-origin: padding;
}

td {
	vertical-align: top;
}

#subtitle {
	margin: auto;
	width: 256px;
	border-top: medium none;
	text-align: center;
	font-size: 0.75em;
}

#short-wiki-description {
	padding: 0 2em;
	font-size: 1.2em;
}

#short-wiki-description h2 {
	padding-bottom: 0.2em;
}

FOOTER {
	grid-column: 1 / 3;
	grid-row: 3;
	clear: both;
	border-top: solid 1px var(--block-border);
	margin-top: 1rem;
	text-align: center;
	color: var(--footer-fg);
	font-size: 0.8rem;
}

FOOTER>DIV {
	margin: 1rem 2rem;
}

CODE {
	background: #DEDEDE;
	font-size: 0.9rem;
}

form {
	margin: 0;
}

a {
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

NAV {
	grid-column: 1;
	grid-row: 2;
	padding: 0 1rem 0.2rem 2rem;
	width: 11.5rem;
	text-align: left;
}

NAV section+section {
	margin-top: 1rem;
}

NAV table {
	width: 15rem;
}

NAV td {
	vertical-align: middle;
}

NAV input {
	padding: 0;
	width: 100%;
}

NAV select {
	padding: 0;
	width: 100%;
}

NAV h3 {
	text-align: left;
}

#comments p {
	overflow: hidden;
	max-width: 150px;
	width: 15rem;
	text-align: left;
}

SPAN.comment-info SPAN {
	margin-right: 2em;
}

SPAN.comment-info SPAN B {
	margin-right: 0.5em;
}

TABLE.tag_list {
	width: auto;
	border-collapse: collapse;
}

TABLE.tag_list>THEAD {
	display: none;
}

TABLE.tag_list>TBODY>TR>TD {
	display: inline;
	padding: 0;
	line-height: 1em;
}

TABLE.tag_list>TBODY>TR>TD:after {
	content: " ";
}

.tag_count {
	display: inline-block;
	margin-left: 0.4rem;
	color: var(--tag-count);
}

.more {
	content: "More â";
}

.comment {
	margin-bottom: 8px;
}

.comment .meta {
	width: 15rem;
	color: var(--comment-meta);
}

.comment TD {
	text-align: left;
}

.withleft {
	margin-left: 1rem;
}

div#paginator {
	display: block;
	clear: both;
	padding: 2em 0 1em;
	text-align: center;
	font-weight: bold;
	font-size: 1em;
}

.paginator {
	margin: 16px;
	text-align: center;
}

div#paginator b {
	margin: 3px;
	padding: 4px 8px;
}

div#paginator a {
	margin: 3px;
	padding: 4px 8px;
}

div#paginator a:hover {
	background: var(--paginator-hover-bg) none repeat scroll 0 0;
	color: var(--paginator-hover-fg);
}

#pagelist {
	margin-top: 32px;
}

#large_upload_form {
	width: 600px;
}

.setupblock,
.tagcategoryblock {
	margin: 0.6rem 1rem 0.6rem 0;
	padding: 0.5rem 0.6rem 0.7rem;
	border: 1px solid var(--block-border);
	border-radius: 0.25rem;
}

.tagcategoryblock {
	display: inline-block;
	width: 18rem;
}

.tagcategoryblock table {
	width: 100%;
	border-spacing: 0;
}

.tagcategoryblock input,
.tagcategoryblock span {
	width: 100%;
	height: 100%;
}

.tagcategoryblock td:first-child {
	padding: 0.3rem 0.7rem 0.4rem 0;
	text-align: right;
	width: 40%;
}

.tagcategoryblock td:last-child {
	width: 60%;
}

.tagcategoryblock td:last-child span {
	padding: 0.24rem 0.7rem 0.5rem 0;
	display: block;
}

.tagcategoryblock button {
	width: 100%;
	margin-top: 0.4rem;
	padding: 0.2rem 0.6rem;
}

.comment .username {
	font-weight: bold;
	font-size: 1.5em;
}

* {
	margin: 0;
	padding: 0;
	font-family: Tahoma, Verdana, Helvetica, sans-serif;
}

a:link {
	color: var(--link-default);
	text-decoration: none;
}

a:visited {
	color: var(--link-default);
	text-decoration: none;
}

a:hover {
	color: var(--link-hover);
	text-decoration: none;
}

a:active {
	color: var(--link-default);
	text-decoration: none;
}

ul.flat-list {
	display: block;
	margin: 0;
	padding: 0;
}

ul.flat-list * {
	display: inline;
	text-align: left;
}

ul.flat-list li {
	margin: 0 1.3em 0 0;
	list-style-type: none;
	text-align: left;
	font-weight: bold;
}

ul.flat-list li a {
	font-weight: normal;
}

#tips {
	margin-left: 16px;
}

#blotter1 {
	position: relative;
	margin-right: 16px;
	margin-left: 16px;
	font-size: 90%;
}

#blotter2 {
	margin-right: 16px;
	margin-left: 16px;
	font-size: 90%;
}

#flash {
	background: #FDF5D9;
	border: 1px solid #FCEEC1;
	margin: 1rem 0;
	padding: 1rem;
	text-align: center;
	border-radius: 0.5rem;
}

ARTICLE {
	grid-column: 2;
	grid-row: 2;
	margin-right: 2rem;
}

ARTICLE section+section {
	margin-top: 1rem;
}

form+form {
	margin-top: 0.5rem;
}

#Imagemain h3 {
	display: none;
}

@media screen and (width <=800px) {
	BODY.layout-grid {
		grid-template-columns: auto;
	}

	HEADER {
		grid-column: 1;
		grid-row: 1;
	}

	ARTICLE {
		grid-column: 1;
		grid-row: 2;
		margin: 0 16px;
	}

	NAV {
		grid-column: 1;
		grid-row: 3;
		margin: auto;
		width: auto;
	}

	FOOTER {
		grid-column: 1;
		grid-row: 4;
	}

	.withleft {
		margin: 0;
	}

	#image-list .blockbody {
		margin: 0;
	}

}

/* ======================== */
/* ===== CUSTOM STYLE ===== */
/* ======================== */

/* Thumbnail MIME */
.thumb:before {
	background: #0005;
	margin-top: 5px;
	margin-left: 5px;
	padding: 4px 4px;
	border-radius: 4px;
	position: absolute;
	z-index: 1;
	opacity: .25;
	transition: .5s;
}

.thumb:hover:before {
	opacity: 1;
}

[data-mime="video/mp4"]:before {
	content: 'video/mp4';
}

[data-mime="image/png"]:before {
	content: 'image/png';
}

[data-mime="image/gif"]:before {
	content: 'image/gif';
}


/* Thumbnail Rating */

[data-rating="s"] {
	background: rgba(0, 255, 0, .2);
	background-size: 50px 50px;
	background-repeat: repeat;
	padding: 4px 4px 4px 4px;
	border-radius: 8px;
}

[data-rating="s"]:hover {
	background: rgba(0, 255, 0, .5);
}

[data-rating="q"] {
	background: rgba(255, 200, 0, .2);
	background-size: 50px 50px;
	background-repeat: repeat;
	padding: 4px 4px 4px 4px;
	border-radius: 8px;

}

[data-rating="q"]:hover {
	background: rgba(255, 200, 0, .5);
}

[data-rating="e"] {
	background: rgba(255, 0, 0, .2);
	background-size: 50px 50px;
	background-repeat: repeat;
	padding: 4px 4px 4px 4px;
	border-radius: 8px;
}

[data-rating="e"]:hover {
	background: rgba(255, 0, 0, .5);
}


[data-rating="?"] {
	background-image: linear-gradient(135deg, rgba(0, 0, 0, .2) 25%, rgba(255, 208, 0, .2) 25%, rgba(255, 208, 0, .2) 50%, rgba(0, 0, 0, .2) 50%, rgba(0, 0, 0, .2) 75%, rgba(255, 208, 0, .2) 75%);
	background-size: 50px 50px;
	background-repeat: repeat;
	padding: 4px 4px 4px 4px;
	border-radius: 8px;
}


[data-rating="?"]:hover {
	background-image: linear-gradient(135deg, rgba(0, 0, 0, .5) 25%, rgba(255, 208, 0, .5) 25%, rgba(255, 208, 0, .5) 50%, rgba(0, 0, 0, .5) 50%, rgba(0, 0, 0, .5) 75%, rgba(255, 208, 0, .5) 75%);
}

.thumb IMG {
	height: 100%;
	width: auto !important;
	border-radius: 4px;
}


#front-page h1 a span,
header h1 {
	color: #fff !important;

	font-family: octosquare !important;
}

#front-page h1 a:hover span {
	color: #ddd !important;

	font-family: octosquare !important;
}

* {
	font-family: jost;

}

body {
	--dotSize: 10px;
	--dotOpacity: 25%;
	--dotColor: var(--color-background-1);
	--dotBlurRad: 1px;
	--bgSize: 200px;
	--bgPosition: calc(var(--bgSize) / 2 + 25px);
	background-color: var(--color-background-1);
}

HEADER {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-background-1);
	text-align: center;
	flex-direction: column;
}

#image-list {
	padding: 1rem;
	padding-top: 2rem;
	--s: 168px;
	/* control the size*/
	--c1: var(--color-background-2);
	--c2: var(--color-background-1);
	--_g: #0000 90deg, var(--c1) 0;
	background:
	conic-gradient(from 90deg at 2px 2px, var(--_g)),
	conic-gradient(from 90deg at 1px 1px, var(--_g)),
	var(--c2);
	background-size: var(--s) var(--s), calc(var(--s)/5) calc(var(--s)/5);
	border-image-slice:
		8 8 8 8;
	border-image-width:
		24px 24px 24px 24px;
	border-image-outset:
		12px 12px 12px 12px;
	border-image-repeat:
		stretch stretch;
	image-rendering: pixelated;
	border-image-source:
		url('https://cdn.snapps.dev/images/misc/border.gif');
	border-style:
		solid;
}





nav h3 {
	transition: .25s;
	font-family: octosquare;
	color: #fff;
	font-size: 1.5em;
	filter:
		drop-shadow(1px 1px 0 #000) drop-shadow(2px 2px 0 #000) drop-shadow(3px 3px 0 #000);
}

nav h3::before {
	content: attr(data-label);
	color: #fff;
	position: absolute;
	z-index: -1;
	font-family: "octosquare";
	-webkit-text-stroke: .1em black;
}


nav section:nth-child(3n + 1):hover h3 {
	color: var(--color-cyan);

}

nav section:nth-child(3n + 2):hover h3 {
	color: var(--color-magenta);

}

nav section:nth-child(3n + 3):hover h3 {
	color: var(--color-yellow);

}

/* Desktop Only */

@media screen and (width >800px) {

	body {
		position: relative;
		min-height: 100vh;
	}

	FOOTER {
		display: block;
		position: absolute;
		bottom: 0;
		width: 100%;
		background: var(--page);
	}


	#paginator {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	#paginator .blockbody {
		display: block;
	}

	body.layout-front-page {
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		top: 0;
		width: 100%;
	}

	#front-page {
		padding: 3rem 10rem;
		background-color: var(--color-background-2);
		border-image-slice:
			8 8 8 8;
		border-image-width:
			24px 24px 24px 24px;
		border-image-outset:
			12px 12px 12px 12px;
		border-image-repeat:
			stretch stretch;
		image-rendering: pixelated;
		border-image-source:
			url('https://cdn.snapps.dev/images/misc/border.gif');
		border-style:
			solid;

	}

	div#front-page h1 {
		margin-top: unset;
	}

	.counter-img:hover {
		transform: translateY(0px)
	}

	.counter-img {
		image-rendering: pixelated;
		transition: .2s;
		transform: translateY(5px);
	}

	#search form {
		display: flex;
		justify-content: center;
		position: relative;
		font-size: 1.25em;
	}

	form input[type=search] {
		border: none;
		height: 3em;
		background-color: var(--page)
	}

	#search form input[type=submit] {
		border: none;
		border-left: solid 1px var(--color-background-1);
		height: 3em;
		padding: 0 2em !important;
		background-color: var(--page)
	}

	#completions {
		left: 0 !important;
		top: 3em !important;
		background: #0006;
		backdrop-filter: blur(2px);
		color: var(--text);
		border: none;
	}

	.autocomplete_completions .selected {
		background-color: color-mix(in srgb, var(--page2) 50%, transparent 50%) !important;
		;
		outline: none;
	}

	form {
		margin: 0;
		position: relative;
	}

	nav {
		padding: 1rem;
		transition: .25s;
		opacity: .5;
		background: linear-gradient(90deg, var(--color-background-1), transparent);
	}

	nav:hover {

		background-color: var(--color-background-1);
		opacity: 1;


	}

	BODY.layout-grid {
		grid-template-rows: auto minmax(0, 1fr);
	}

	#comment-list-image {
		padding-bottom: 3em;
	}


	article:has(#handle_image_media){
				background-color: var(--color-background-2);
				padding: 2em;
						border-image-slice:
			8 8 8 8;
		border-image-width:
			24px 24px 24px 24px;
		border-image-outset:
			12px 12px 12px 12px;
		border-image-repeat:
			stretch stretch;
		image-rendering: pixelated;
		border-image-source:
			url('https://cdn.snapps.dev/images/misc/border.gif');
		border-style:
			solid;

	}

	article:has(#handle_image_media) #main_image{
		filter: drop-shadow(8px 8px 0px #0003);
	}

	.shm-image-list {
		display: flex !important;
		flex-wrap:wrap;
		justify-content: space-between;
	}

	.thumb.shm-thumb.shm-thumb-link {
		transition: scale .2s;
		height: 192px;
	}

	.thumb.shm-thumb.shm-thumb-link:hover{
		scale: 1.1;
		z-index: 2;
	}

}

#terms-modal-bg {
	--dotSize: 10px;
	--dotOpacity: 25%;
	--dotColor: var(--color-background-1);
	--dotBlurRad: 1px;
	--bgSize: 200px;
	--bgPosition: calc(var(--bgSize) / 2 + 25px);
	background-color: var(--color-background-1);
	background-image:
		radial-gradient(circle at center, var(--color-cyan) var(--dotSize), transparent calc(var(--dotSize) + var(--dotBlurRad))),
		radial-gradient(circle at center, var(--color-magenta) var(--dotSize), transparent calc(var(--dotSize) + var(--dotBlurRad))),
		radial-gradient(circle at center, var(--color-yellow) var(--dotSize), transparent calc(var(--dotSize) + var(--dotBlurRad))),
		radial-gradient(circle at center, var(--color-key) var(--dotSize), transparent calc(var(--dotSize) + var(--dotBlurRad)));
	background-size:
		var(--bgSize) var(--bgSize),
		var(--bgSize) var(--bgSize),
		var(--bgSize) var(--bgSize),
		var(--bgSize) var(--bgSize);
	background-position:
		var(--bgPosition) var(--bgPosition),
		calc(var(--bgPosition) + var(--bgSize) / 2) var(--bgPosition),
		var(--bgPosition) calc(var(--bgPosition) + var(--bgSize) / 2),
		calc(var(--bgPosition) + var(--bgSize) / 2) calc(var(--bgPosition) + var(--bgSize) / 2);
}

#terms-modal{
		background-color: var(--color-background-2);
		padding: 2em;
				border-image-slice:
			8 8 8 8;
		border-image-width:
			24px 24px 24px 24px;
		border-image-outset:
			12px 12px 12px 12px;
		border-image-repeat:
			stretch stretch;
		image-rendering: pixelated;
		border-image-source:
			url('https://cdn.snapps.dev/images/misc/border.gif');
		border-style:
			solid;

}




/*# sourceMappingURL=snappy.1775530070.c8ce958b005d9d9ca166c94897acc937.css.map */