.gallery-icon, .gallery-icon a {
	background: none top left no-repeat;
}

.phpbbgallery-image-page
{
	transition: opacity 120ms ease-in-out;
}

.phpbbgallery-image-page.is-loading
{
	cursor: progress;
	opacity: 0.72;
	pointer-events: none;
}

.phpbbgallery-image-page.is-entering
{
	opacity: 0;
}

@media (prefers-reduced-motion: reduce)
{
	.phpbbgallery-image-page
	{
		transition: none;
	}
}

/* Permission-filtered Gallery statistics dashboard. */
.gallery-statistics-page
{
	margin: 18px 0;
}

.gallery-statistics-heading,
.gallery-statistics-period,
.gallery-statistics-images li,
.gallery-statistics-users li
{
	align-items: center;
	display: flex;
}

.gallery-statistics-heading
{
	gap: 20px;
	justify-content: space-between;
	margin-bottom: 16px;
}

.gallery-statistics-heading h2,
.gallery-statistics-heading p
{
	margin: 0;
}

.gallery-statistics-period
{
	flex: 0 0 auto;
	gap: 8px;
}

.gallery-statistics-period select
{
	min-width: 115px;
}

.gallery-statistics-summary,
.gallery-statistics-grid
{
	display: grid;
	gap: 14px;
}

.gallery-statistics-summary
{
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 14px;
}

.gallery-statistic-card,
.gallery-statistics-panel,
.gallery-statistics-notice
{
	background: rgba(255, 255, 255, 0.72);
	border: 1px solid rgba(84, 116, 137, 0.24);
	border-radius: 7px;
}

.gallery-statistic-card
{
	min-height: 92px;
	padding: 16px 16px 14px 54px;
	position: relative;
}

.gallery-statistic-card strong,
.gallery-statistic-card > span:last-child
{
	display: block;
}

.gallery-statistic-card strong
{
	font-size: 1.75em;
	line-height: 1.1;
}

.gallery-statistic-icon
{
	color: #2589bd;
	font-size: 25px;
	left: 17px;
	position: absolute;
	top: 19px;
}

.gallery-statistics-notice
{
	margin-bottom: 14px;
	padding: 10px 12px;
}

.gallery-statistics-grid
{
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.gallery-statistics-panel
{
	overflow: hidden;
}

.gallery-statistics-panel h3
{
	border-bottom: 1px solid rgba(84, 116, 137, 0.2);
	margin: 0;
	padding: 13px 15px;
}

.gallery-statistics-images,
.gallery-statistics-users
{
	list-style: none;
	margin: 0;
	padding: 0;
}

.gallery-statistics-images li,
.gallery-statistics-users li
{
	border-bottom: 1px solid rgba(84, 116, 137, 0.14);
	gap: 10px;
	min-height: 54px;
	padding: 9px 12px;
}

.gallery-statistics-images li:last-child,
.gallery-statistics-users li:last-child
{
	border-bottom: 0;
}

.gallery-statistics-rank
{
	color: #78909c;
	font-size: 1.1em;
	font-weight: 700;
	text-align: center;
	width: 24px;
}

.gallery-statistics-thumbnail
{
	align-items: center;
	display: flex;
	height: 50px;
	justify-content: center;
	width: 62px;
}

.gallery-statistics-thumbnail img
{
	max-height: 50px;
	max-width: 62px;
}

.gallery-statistics-entry
{
	min-width: 0;
	flex: 1 1 auto;
}

.gallery-statistics-entry small,
.gallery-statistics-title
{
	display: block;
}

.gallery-statistics-title
{
	font-weight: 700;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gallery-statistics-metric,
.gallery-statistics-users li > strong
{
	flex: 0 0 auto;
	text-align: right;
}

.gallery-statistics-empty,
.gallery-statistics-history-note
{
	margin: 0;
	padding: 14px 15px;
}

.gallery-statistics-history-note
{
	border-top: 1px solid rgba(84, 116, 137, 0.14);
	font-size: 0.9em;
}

@media (max-width: 800px)
{
	.gallery-statistics-summary
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gallery-statistics-grid
	{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px)
{
	.gallery-statistics-heading
	{
		align-items: stretch;
		flex-direction: column;
	}

	.gallery-statistics-period
	{
		justify-content: space-between;
	}

	.gallery-statistics-summary
	{
		grid-template-columns: 1fr;
	}

	.gallery-statistics-images li
	{
		align-items: flex-start;
	}

	.gallery-statistics-metric
	{
		font-size: 0.9em;
	}
}

.phpbbgallery-album-embed
{
	background: rgba(255, 255, 255, 0.55);
	border: 1px solid rgba(70, 100, 120, 0.22);
	border-radius: 6px;
	box-sizing: border-box;
	margin: 12px 0;
	padding: 12px;
}

.phpbbgallery-album-embed[aria-busy="true"]
{
	opacity: 0.72;
}

.phpbbgallery-album-embed-header
{
	border-bottom: 1px solid rgba(70, 100, 120, 0.18);
	font-size: 1.1em;
	font-weight: 600;
	margin-bottom: 10px;
	padding-bottom: 8px;
}

.phpbbgallery-album-embed-grid
{
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
}

.phpbbgallery-album-embed-image
{
	align-items: center;
	background: rgba(255, 255, 255, 0.58);
	border: 1px solid rgba(70, 100, 120, 0.14);
	border-radius: 5px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	justify-content: space-between;
	min-width: 0;
	padding: 8px;
	text-align: center;
}

.phpbbgallery-album-embed-thumbnail
{
	height: 96px;
	max-width: 100%;
	object-fit: contain;
	width: 100%;
}

.phpbbgallery-album-embed-caption
{
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.phpbbgallery-album-embed-pagination
{
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: center;
	margin-top: 12px;
}

.phpbbgallery-album-embed-page
{
	min-width: 90px;
	text-align: center;
}

@media (max-width: 480px)
{
	.phpbbgallery-album-embed
	{
		padding: 9px;
	}

	.phpbbgallery-album-embed-grid
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.phpbbgallery-image-subtitle
{
	margin: -0.25em 0 1em;
	font-size: 1.05em;
	line-height: 1.4;
}

.side-segment .phpbbgallery-image-subtitle
{
	margin: -0.35em 0 0.85em;
}

.gallery-image-card-subtitle
{
	display: -webkit-box;
	margin: 0.55em 0 0;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: 0.95em;
	font-style: italic;
	line-height: 1.35;
	text-align: center;
	overflow-wrap: anywhere;
}

ul.profile-icons li.gallery-icon {
	width: 20px; height: 20px;
}

.gallery-icon, .gallery-icon a {
	background-image: url("./images/icon_contact_gallery.gif");
}

h2.invade-linklist {
	margin-top: -20px;
}

.rtl .icon-gallery {
	background-position: 100% 50%;
	padding: 1px 17px 0 0;
}

fieldset.gallery dd.simulate-dt label {
	margin-left:	0;
	float:			left;
	font-weight:	bold;
	text-align:		left;
	color:			#425067;
}

.rtl fieldset.gallery dd.simulate-dt label {
	text-align:		right;
}

fieldset.gallery dl:hover dd.simulate-dt label {
	color:			#000000;
}

fieldset.gallery dt.simulate-dt {
	width:			22em;
}

fieldset.gallery dt.first {
	min-height:		16em;
}

fieldset.gallery dd.simulate-dt {
	margin-left:	0;
	float:			left;
}

fieldset.gallery dd.simulate-dd {
	margin-left:	35em;
}

fieldset.gallery #format-buttons {
	margin-top: 0;
}

fieldset.gallery input.readonly,
fieldset.gallery textarea.readonly,
.gallery-upload-details-form input.readonly,
.gallery-upload-details-form textarea.readonly {
	background-color: #eef0f3 !important;
	cursor: not-allowed;
	opacity: .68;
}

dd.g_lastimage {
	padding-left: 5px;
	width: 30%;
}
/*
dd.g_moderation {
	width: 35%;
}
*/
dd.g_rating, dd.g_comments {
	width: 12%;
	text-align: center;
	font-size: 1.1em;
}

dd.g_status {
	width: 15%;
	text-align: center;
	font-size: 1.1em;
}

span.reported-images-number {
	color: red;
}

.g_unapproved {
	background: 100% 0 no-repeat url("./images/icon_gallery_unapproved.gif");
}

.g_locked {
	background: 100% 0 no-repeat url("./images/icon_gallery_locked.gif");
}

.g_reported {
	background: 100% 0 no-repeat url("./images/icon_gallery_reported.gif");
}

input.autowidth-gallery {
	width: 96%;
	max-width: 186px;
}

.gallery-album-title {
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 .5em;
	overflow: hidden;
	padding-bottom: .1em;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gallery-album-section-title
{
	clear: both;
	margin-top: 1em;
}

.gallery-album-section-title,
.gallery-album-section-title h3,
.gallery-modern-section-title,
.gallery-image-block-title
{
	color: #2880b2;
	font-size: 20px;
	font-weight: 400;
	line-height: 1.4;
}

.gallery-album-section-title a,
.gallery-modern-section-title a,
.gallery-image-block-title a
{
	color: inherit;
}

.gallery-album-section-title-sitesplat,
.gallery-album-section-title-sitesplat h3
{
	color: #2880b2;
}

.gallery-album-card-grid
{
	clear: both;
	display: flex;
	flex-wrap: wrap;
}

.gallery-album-grid-heading,
.gallery-album-grid-break
{
	flex: 0 0 100%;
	max-width: 100%;
}

.gallery-album-grid-heading
{
	padding: 0 15px;
}

.gallery-album-card-column
{
	display: flex;
	float: none;
}

.gallery-album-card-column > .well
{
	width: 100%;
}

.gallery-personal-album
{
	border-color: rgba(73, 126, 157, 0.42) !important;
	box-shadow: inset 3px 0 0 rgba(73, 126, 157, 0.32);
}

.gallery-personal-album-icon
{
	margin-right: 3px;
	opacity: 0.72;
}

.gallery-modern-album-list
{
	clear: both;
	display: grid;
	gap: 12px;
	margin: 0 0 18px;
}

.gallery-modern-section-title
{
	clear: both;
	color: #2880b2;
	margin: 18px 0 10px;
}

.gallery-modern-category
{
	border-bottom: 2px solid rgba(40, 128, 178, 0.38);
	margin-top: 6px;
	padding: 8px 4px 6px;
}

.gallery-modern-category h3,
.gallery-modern-album h3
{
	margin: 0;
}

.gallery-modern-category-description
{
	margin-top: 4px;
}

.gallery-modern-album
{
	background: rgba(255, 255, 255, 0.58);
	border: 1px solid rgba(93, 116, 132, 0.24);
	border-radius: 5px;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(245px, 32%);
	overflow: hidden;
}

.gallery-modern-album-main
{
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: 76px minmax(0, 1fr);
	min-width: 0;
	padding: 14px;
}

.gallery-modern-album-main--without-visual
{
	grid-template-columns: minmax(0, 1fr);
}

.gallery-modern-album-visual
{
	align-items: center;
	background: rgba(40, 128, 178, 0.08);
	border-radius: 4px;
	display: flex;
	height: 68px;
	justify-content: center;
	overflow: hidden;
	width: 76px;
}

.gallery-modern-album-visual img
{
	max-height: 68px;
	max-width: 76px;
	object-fit: contain;
}

.gallery-modern-album-visual .fa
{
	color: #2880b2;
	font-size: 30px;
}

.gallery-modern-album-unread .gallery-modern-album-visual
{
	background: rgba(40, 128, 178, 0.18);
}

.gallery-modern-album-content
{
	min-width: 0;
}

.gallery-modern-album-title
{
	display: inline-block;
	font-size: 1.18em;
	font-weight: bold;
	margin-bottom: 3px;
}

.gallery-modern-album-description
{
	margin: 2px 0 0;
}

.gallery-modern-album-details
{
	display: flex;
	flex-wrap: wrap;
	gap: 5px 14px;
	margin-top: 7px;
}

.gallery-subalbum-links
{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 10px;
	margin-top: 8px;
}

.gallery-subalbum-link
{
	box-sizing: border-box;
	max-width: 100%;
	text-decoration: none;
	white-space: nowrap;
}

.gallery-subalbum-link--text
{
	align-items: center;
	display: inline-flex;
	gap: 3px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.gallery-subalbum-link--text .icon
{
	flex: 0 0 auto;
	line-height: 1;
}

.gallery-subalbum-link--icon
{
	align-items: center;
	background: transparent;
	border: 0;
	border-radius: 4px;
	display: inline-flex;
	height: 54px;
	justify-content: center;
	padding: 0;
	width: 62px;
}

.gallery-subalbum-link--icon img
{
	background: transparent;
	display: block;
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
}

.gallery-modern-album-summary
{
	align-items: center;
	border-inline-start: 1px solid rgba(93, 116, 132, 0.2);
	display: grid;
	gap: 12px;
	grid-template-columns: auto minmax(0, 1fr);
	padding: 12px 14px;
}

.gallery-modern-image-count
{
	min-width: 62px;
	text-align: center;
}

.gallery-modern-image-count strong
{
	display: block;
	font-size: 1.45em;
	line-height: 1;
}

.gallery-modern-last-image
{
	align-items: center;
	display: flex;
	gap: 9px;
	min-width: 0;
}

.gallery-modern-last-image img
{
	border-radius: 3px;
	max-height: 50px;
	max-width: 50px;
	object-fit: contain;
}

.gallery-modern-last-image-thumbnail
{
	flex: 0 0 auto;
	margin-inline-start: auto;
}

.gallery-modern-last-image-details
{
	line-height: 1.35;
	min-width: 0;
}

.gallery-modern-last-image-details strong
{
	display: block;
}

@media (max-width: 700px)
{
	.gallery-modern-album
	{
		grid-template-columns: 1fr;
	}

	.gallery-modern-album-summary
	{
		border-inline-start: 0;
		border-top: 1px solid rgba(93, 116, 132, 0.2);
	}
}

@media (max-width: 420px)
{
	.gallery-modern-album-main
	{
		align-items: start;
		grid-template-columns: 52px minmax(0, 1fr);
		padding: 11px;
	}

	.gallery-modern-album-main--without-visual
	{
		grid-template-columns: minmax(0, 1fr);
	}

	.gallery-modern-album-visual
	{
		height: 48px;
		width: 52px;
	}

	.gallery-modern-album-visual img
	{
		max-height: 48px;
		max-width: 52px;
	}
}

/* Futuristic presentation: one semantic layout with a considered accent for each bundled style. */
.gallery-futuristic
{
	--gallery-futuristic-accent: #2587c8;
	--gallery-futuristic-accent-soft: rgba(37, 135, 200, .16);
	--gallery-futuristic-secondary: #6e63d9;
	--gallery-futuristic-secondary-soft: rgba(110, 99, 217, .13);
	--gallery-futuristic-border: rgba(57, 92, 119, .24);
	--gallery-futuristic-muted: #667887;
	--gallery-futuristic-surface: rgba(255, 255, 255, .9);
	--gallery-futuristic-surface-strong: #fff;
	--gallery-futuristic-shadow: 0 10px 26px rgba(32, 61, 82, .11);
	--gallery-futuristic-radius: 10px;
	clear: both;
	color: #35404a;
}

.gallery-futuristic--prosilver
{
	--gallery-futuristic-accent: #1596c8;
	--gallery-futuristic-accent-soft: rgba(21, 150, 200, .16);
	--gallery-futuristic-secondary: #078bc3;
	--gallery-futuristic-secondary-soft: rgba(7, 139, 195, .13);
	--gallery-futuristic-border: rgba(17, 132, 180, .24);
	--gallery-futuristic-radius: 8px;
}

.gallery-futuristic--bboots
{
	--gallery-futuristic-accent: #159bd3;
	--gallery-futuristic-accent-soft: rgba(21, 155, 211, .16);
	--gallery-futuristic-secondary: #506ee5;
	--gallery-futuristic-secondary-soft: rgba(80, 110, 229, .13);
	--gallery-futuristic-border: rgba(35, 115, 151, .23);
	--gallery-futuristic-radius: 11px;
}

.gallery-futuristic--flatboots
{
	--gallery-futuristic-accent: #9e7233;
	--gallery-futuristic-accent-soft: rgba(158, 114, 51, .17);
	--gallery-futuristic-secondary: #daa520;
	--gallery-futuristic-secondary-soft: rgba(218, 165, 32, .14);
	--gallery-futuristic-border: rgba(137, 113, 56, .24);
	--gallery-futuristic-radius: 6px;
}

.gallery-futuristic a
{
	text-decoration: none;
}

.gallery-futuristic-album-list
{
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 0 22px;
}

.gallery-futuristic-section-title,
.gallery-futuristic-category,
.gallery-futuristic-empty-state
{
	grid-column: 1 / -1;
}

.gallery-futuristic-section-title
{
	align-items: center;
	color: var(--gallery-futuristic-accent);
	display: flex;
	font-size: 20px;
	font-weight: 500;
	gap: 9px;
	line-height: 1.35;
	margin: 18px 0 0;
	min-width: 0;
}

.gallery-futuristic-section-title a
{
	color: inherit;
}

.gallery-futuristic-section-icon
{
	align-items: center;
	background: linear-gradient(135deg, var(--gallery-futuristic-accent-soft), var(--gallery-futuristic-secondary-soft));
	border: 1px solid var(--gallery-futuristic-border);
	border-radius: 50%;
	display: inline-flex;
	flex: 0 0 34px;
	height: 34px;
	justify-content: center;
}

.gallery-futuristic-section-icon > .icon
{
	align-items: center;
	display: inline-flex;
	height: 100%;
	justify-content: center;
	line-height: 1;
	margin: 0;
	padding: 0;
	width: 100%;
}

.gallery-futuristic-section-icon > .icon::before
{
	padding: 0;
}

.gallery-futuristic-category
{
	align-items: center;
	background: linear-gradient(90deg, var(--gallery-futuristic-accent-soft), transparent 62%);
	border: 1px solid var(--gallery-futuristic-border);
	border-radius: var(--gallery-futuristic-radius);
	display: grid;
	gap: 11px;
	grid-template-columns: 4px minmax(0, 1fr);
	overflow: hidden;
	padding: 10px 14px 10px 0;
}

.gallery-futuristic-category-marker
{
	align-self: stretch;
	background: linear-gradient(180deg, var(--gallery-futuristic-accent), var(--gallery-futuristic-secondary));
	border-radius: 999px;
}

.gallery-futuristic-category h3
{
	font-size: 1.12em;
	margin: 0;
}

.gallery-futuristic-category-description
{
	color: var(--gallery-futuristic-muted);
	margin-top: 3px;
}

.gallery-futuristic-album
{
	background: linear-gradient(145deg, var(--gallery-futuristic-surface-strong), var(--gallery-futuristic-surface));
	border: 1px solid var(--gallery-futuristic-border);
	border-radius: var(--gallery-futuristic-radius);
	box-shadow: var(--gallery-futuristic-shadow);
	display: flex;
	flex-direction: column;
	isolation: isolate;
	min-width: 0;
	overflow: hidden;
	position: relative;
}

.gallery-futuristic-album::before,
.gallery-futuristic-image::before
{
	background: linear-gradient(90deg, var(--gallery-futuristic-accent), var(--gallery-futuristic-secondary));
	content: "";
	height: 3px;
	inset: 0 0 auto;
	position: absolute;
	z-index: 1;
}

.gallery-futuristic-album--unread::before
{
	height: 5px;
}

.gallery-futuristic-album-main
{
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: 104px minmax(0, 1fr);
	padding: 18px 16px 14px;
}

.gallery-futuristic-album-main--without-visual
{
	grid-template-columns: minmax(0, 1fr);
}

.gallery-futuristic-album-visual
{
	align-items: center;
	background: linear-gradient(145deg, var(--gallery-futuristic-accent-soft), var(--gallery-futuristic-secondary-soft));
	border: 1px solid var(--gallery-futuristic-border);
	border-radius: calc(var(--gallery-futuristic-radius) - 2px);
	display: flex;
	height: 82px;
	isolation: isolate;
	justify-content: center;
	overflow: hidden;
	position: relative;
}

.gallery-futuristic-visual-glow
{
	background: radial-gradient(circle, var(--gallery-futuristic-secondary-soft), transparent 68%);
	inset: -20%;
	position: absolute;
	z-index: -1;
}

.gallery-futuristic-album-visual img
{
	display: block;
	max-height: 82px;
	max-width: 104px;
	object-fit: contain;
}

.gallery-futuristic-placeholder-icon
{
	color: var(--gallery-futuristic-accent);
	font-size: 34px;
}

.gallery-futuristic-unread-signal
{
	background: var(--gallery-futuristic-accent);
	border: 3px solid var(--gallery-futuristic-surface-strong);
	border-radius: 50%;
	box-shadow: 0 0 0 3px var(--gallery-futuristic-accent-soft);
	height: 9px;
	inset: 8px 8px auto auto;
	position: absolute;
	width: 9px;
}

.gallery-futuristic-album-content
{
	min-width: 0;
}

.gallery-futuristic-album-heading
{
	align-items: center;
	display: flex;
	gap: 7px;
	min-width: 0;
}

.gallery-futuristic-album-title
{
	display: block;
	font-size: 1.2em;
	font-weight: bold;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gallery-futuristic-state
{
	color: var(--gallery-futuristic-muted);
	flex: 0 0 auto;
}

.gallery-futuristic-album-description
{
	color: var(--gallery-futuristic-muted);
	line-height: 1.45;
	margin-top: 5px;
}

.gallery-futuristic-album-details
{
	color: var(--gallery-futuristic-muted);
	font-size: .92em;
	margin-top: 7px;
}

.gallery-futuristic .gallery-subalbum-link--text
{
	background: var(--gallery-futuristic-accent-soft);
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: .88em;
	padding: 3px 8px;
}

.gallery-futuristic .gallery-subalbum-link.unread
{
	border-color: var(--gallery-futuristic-accent);
}

.gallery-futuristic .gallery-subalbum-link--icon.unread
{
	box-shadow: 0 0 0 2px var(--gallery-futuristic-accent-soft);
}

.gallery-futuristic-album-summary
{
	align-items: center;
	background: linear-gradient(90deg, var(--gallery-futuristic-accent-soft), var(--gallery-futuristic-secondary-soft));
	border-top: 1px solid var(--gallery-futuristic-border);
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(105px, auto) minmax(0, 1fr);
	margin-top: auto;
	padding: 11px 14px;
}

.gallery-futuristic-image-count
{
	align-items: center;
	display: flex;
	gap: 7px;
	white-space: nowrap;
}

.gallery-futuristic-image-count > .fa
{
	color: var(--gallery-futuristic-accent);
	font-size: 18px;
}

.gallery-futuristic-image-count strong
{
	font-size: 1.18em;
}

.gallery-futuristic-last-image
{
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
	min-width: 0;
}

.gallery-futuristic-last-image-visual
{
	align-items: center;
	background: var(--gallery-futuristic-surface-strong);
	border: 1px solid var(--gallery-futuristic-border);
	border-radius: 5px;
	display: flex;
	flex: 0 0 44px;
	height: 44px;
	justify-content: center;
	overflow: hidden;
}

.gallery-futuristic-last-image img
{
	max-height: 44px;
	max-width: 44px;
	object-fit: contain;
}

.gallery-futuristic-last-image-details
{
	font-size: .88em;
	line-height: 1.35;
	min-width: 0;
}

.gallery-futuristic-last-image-details strong,
.gallery-futuristic-last-image-details span,
.gallery-futuristic-last-image-details time
{
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gallery-futuristic-last-image-details time,
.gallery-futuristic-empty
{
	color: var(--gallery-futuristic-muted);
}

.gallery-futuristic-empty-state
{
	background: var(--gallery-futuristic-accent-soft);
	border: 1px dashed var(--gallery-futuristic-border);
	border-radius: var(--gallery-futuristic-radius);
	color: var(--gallery-futuristic-muted);
	padding: 16px;
	text-align: center;
}

.gallery-futuristic-image-block
{
	margin: 0 0 22px;
}

.gallery-futuristic-image-section-title
{
	margin-bottom: 12px;
}

.gallery-futuristic-image-grid
{
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr));
}

.gallery-futuristic-image,
.gallery-futuristic-image-placeholder
{
	min-width: 0;
}

.gallery-futuristic-image
{
	background: linear-gradient(155deg, var(--gallery-futuristic-surface-strong), var(--gallery-futuristic-surface));
	border: 1px solid var(--gallery-futuristic-border);
	border-radius: var(--gallery-futuristic-radius);
	box-shadow: var(--gallery-futuristic-shadow);
	display: flex;
	flex-direction: column;
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.gallery-futuristic-image--unapproved
{
	border-color: #daa520;
}

.gallery-futuristic-image--unapproved::before
{
	background: linear-gradient(90deg, #daa520, #e9bd4b);
}

.gallery-futuristic-image--reported
{
	border-color: #d9534f;
}

.gallery-futuristic-image--locked
{
	box-shadow: inset 0 0 0 2px rgba(90, 99, 107, .18), var(--gallery-futuristic-shadow);
}

.gallery-image-card-heading
{
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	text-align: center;
}

.gallery-polaroid-image-heading
{
	padding: 5px 9px 0;
}

.gallery-polaroid-image-heading--with-copy
{
	padding-top: 35px;
}

.gallery-polaroid-image-heading > .gallery-image-bbcode-copy
{
	background: transparent;
	border: 0;
	border-radius: 0;
	inset-inline-start: 9px;
	min-height: 30px;
	position: absolute;
	top: 5px;
}

.gallery-polaroid-image-heading > .gallery-image-bbcode-copy:hover,
.gallery-polaroid-image-heading > .gallery-image-bbcode-copy.is-copied
{
	background: transparent;
	border: 0;
}

.gallery-polaroid-image-heading > .gallery-image-bbcode-copy:focus
{
	background: transparent;
	border: 0;
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.gallery-image-card-title
{
	box-sizing: border-box;
	font-size: 1.2em;
	font-weight: bold;
	margin: 0;
	max-width: 100%;
	overflow: hidden;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}

.gallery-futuristic-image-header
{
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 48px;
	padding: 2px 10px 6px;
	text-align: left;
}

.gallery-futuristic-image-title
{
	font-size: 1em;
	font-weight: bold;
	line-height: 1.35;
	margin: 0;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}

.gallery-futuristic-image-title a
{
	color: inherit;
}

.gallery-image-bbcode-copy
{
	align-items: center;
	align-self: flex-start;
	background: rgba(255, 255, 255, .9);
	border: 1px solid rgba(40, 128, 178, .28);
	border-radius: 999px;
	color: #2880b2;
	cursor: pointer;
	display: inline-flex;
	font-size: 11px;
	font-variant-numeric: tabular-nums;
	font-weight: bold;
	gap: 2px;
	line-height: 1;
	min-height: 25px;
	padding: 0;
	white-space: nowrap;
}

.gallery-image-bbcode-copy:hover,
.gallery-image-bbcode-copy:focus
{
	background: #fff;
	border-color: #2880b2;
	color: #105289;
	outline: none;
}

.gallery-image-bbcode-copy.is-copied
{
	border-color: #3c9a5f;
	color: #287a47;
}

.gallery-image-bbcode-copy--overlay
{
	inset-inline-start: 7px;
	position: absolute;
	top: 7px;
	z-index: 3;
}

.gallery-image-card > .gallery-image-bbcode-copy--overlay ~ p:first-of-type,
.gallery-classic-image > .gallery-image-bbcode-copy--overlay ~ .gallery-classic-image-title
{
	padding-inline-start: 62px;
}

.gallery-futuristic-image-header .gallery-image-bbcode-copy
{
	background: rgba(255, 255, 255, .08);
	border-color: rgba(255, 255, 255, .18);
	color: var(--gallery-futuristic-muted);
	flex: none;
}

.gallery-futuristic-image-header .gallery-image-bbcode-copy:hover,
.gallery-futuristic-image-header .gallery-image-bbcode-copy:focus,
.gallery-futuristic-image-header .gallery-image-bbcode-copy.is-copied
{
	background: rgba(255, 255, 255, .16);
	color: var(--gallery-futuristic-accent);
}

.gallery-futuristic-thumbnail
{
	align-items: center;
	background: linear-gradient(145deg, rgba(20, 29, 38, .94), rgba(37, 49, 63, .88));
	display: flex;
	height: clamp(180px, calc(var(--gallery-futuristic-thumbnail-size) + 24px), 280px);
	justify-content: center;
	overflow: hidden;
	position: relative;
}

.gallery-futuristic-thumbnail-grid
{
	background-image: linear-gradient(rgba(255, 255, 255, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .035) 1px, transparent 1px);
	background-size: 22px 22px;
	inset: 0;
	mask-image: linear-gradient(to bottom, black, transparent 90%);
	opacity: .55;
	pointer-events: none;
	position: absolute;
}

.gallery-futuristic-thumbnail a
{
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	width: 100%;
}

.gallery-futuristic-thumbnail img
{
	display: block;
	height: auto;
	max-height: calc(100% - 20px);
	max-width: calc(100% - 20px);
	object-fit: contain;
	position: relative;
	z-index: 1;
}

.gallery-futuristic-status
{
	background: rgba(218, 165, 32, .94);
	border-radius: 999px;
	bottom: 8px;
	color: #fff;
	font-size: .8em;
	inset-inline-end: 8px;
	padding: 3px 8px;
	position: absolute;
	z-index: 2;
}

.gallery-futuristic-image-details
{
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 11px 12px 13px;
}

.gallery-futuristic-image-subtitle
{
	border-bottom: 1px solid var(--gallery-futuristic-border);
	color: var(--gallery-futuristic-muted);
	font-style: italic;
	margin: 0 0 9px;
	overflow: hidden;
	padding-bottom: 8px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gallery-futuristic-metadata
{
	display: grid;
	gap: 6px;
}

.gallery-futuristic-metadata-item
{
	align-items: flex-start;
	display: flex;
	gap: 5px;
	line-height: 1.35;
	min-width: 0;
	overflow-wrap: anywhere;
}

.gallery-futuristic-metadata-item > .fa
{
	color: var(--gallery-futuristic-accent);
	flex: 0 0 16px;
	margin-top: 2px;
}

.gallery-futuristic-event-metadata:empty
{
	display: none;
}

.gallery-futuristic-rating
{
	flex-wrap: wrap;
}

.gallery-futuristic-approval
{
	background: var(--gallery-futuristic-accent-soft);
	border-top: 1px solid var(--gallery-futuristic-border);
	display: flex;
	gap: 7px;
	justify-content: center;
	padding: 9px 12px;
}

.gallery-futuristic :focus-visible
{
	outline: 2px solid var(--gallery-futuristic-accent);
	outline-offset: 2px;
}

@media (hover: hover) and (prefers-reduced-motion: no-preference)
{
	.gallery-futuristic-album,
	.gallery-futuristic-image
	{
		transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
	}

	.gallery-futuristic-album:hover,
	.gallery-futuristic-image:hover
	{
		border-color: var(--gallery-futuristic-accent);
		box-shadow: 0 15px 34px rgba(32, 61, 82, .17);
		transform: translateY(-2px);
	}
}

@media (max-width: 860px)
{
	.gallery-futuristic-album-list
	{
		grid-template-columns: 1fr;
	}
}

@media (max-width: 520px)
{
	.gallery-futuristic-album-main
	{
		align-items: start;
		grid-template-columns: 72px minmax(0, 1fr);
		padding: 15px 12px 12px;
	}

	.gallery-futuristic-album-visual
	{
		height: 66px;
	}

	.gallery-futuristic-album-visual img
	{
		max-height: 66px;
		max-width: 72px;
	}

	.gallery-futuristic-album-summary
	{
		align-items: start;
		grid-template-columns: 1fr;
	}

	.gallery-futuristic-last-image
	{
		justify-content: flex-start;
	}

	.gallery-futuristic-image-grid
	{
		grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr));
	}
}

.polaroid_img_container {
	height: 120px;
	width: 242px;
	vertical-align: middle;
	display: table-cell;
}

.polaroid img {
	max-height: 120px;
	max-width: 230px;
}

.polaroid
{
	width: 242px;
/*
---------------------------------------------------------------------------
-You can add a white (#FFFFFF) or black (#000000) background for Polaroid-
-Remove the slashes and asterisks in the line for the background you want-
-For a different background also change the color code-
---------------------------------------------------------------------------
*/
/*	background: #FFFFFF; */
/*	background: #000000; */
	display: block;
	float: left;
	margin: 9px;
	padding: 10px;
	text-align: center;
	text-decoration: none;
	box-shadow: 0 4px 6px rgba(0, 0, 0, .3);
	transition: all .15s linear;
	border: 1px solid #EFEFEF;
	border-radius: 7px;
}

/* Keep cards aligned when optional metadata makes one card taller. */
.gallery-image-card-grid
{
	align-items: stretch;
}

.gallery-image-card-grid::before,
.gallery-image-card-grid::after
{
	display: none;
}

.gallery-image-card-grid--prosilver,
.gallery-image-card-grid--bootstrap
{
	box-sizing: border-box;
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin-bottom: 18px;
	padding-inline: 9px;
	width: 100%;
}

.gallery-image-card-grid--bootstrap.row
{
	margin-inline: 0;
}

.gallery-image-card-grid--three-columns
{
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gallery-image-card-grid .gallery-image-card
{
	display: flex;
	flex-direction: column;
	position: relative;
}

.gallery-image-card-grid--prosilver > .gallery-image-card
{
	box-sizing: border-box;
	float: none;
	margin: 0;
	width: 100%;
}

.gallery-image-card-grid--bootstrap > [class*="col-"]
{
	display: flex;
	float: none;
	padding-inline: 0;
	width: auto;
}

.gallery-image-card-grid--bootstrap > [class*="col-"] > .gallery-image-card
{
	width: 100%;
}

@media (max-width: 991px)
{
	.gallery-image-card-grid--prosilver,
	.gallery-image-card-grid--bootstrap,
	.gallery-image-card-grid--three-columns
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 575px)
{
	.gallery-image-card-grid--prosilver,
	.gallery-image-card-grid--bootstrap,
	.gallery-image-card-grid--three-columns
	{
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Legacy MOD-inspired presentation, rebuilt as a responsive CSS grid. */
.gallery-classic-image-block
{
	clear: both;
	margin: 0 0 18px;
}

.gallery-classic-image-grid
{
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gallery-classic-image,
.gallery-classic-image-placeholder
{
	min-width: 0;
}

.gallery-classic-image
{
	position: relative;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: 3px;
	background: rgba(255, 255, 255, .45);
}

.gallery-classic-image-block--prosilver .gallery-classic-image
{
	background: #fff;
	border: 1px solid #cadceb;
	box-sizing: border-box;
}

.gallery-classic-image-block--prosilver .gallery-image-bbcode-copy,
.gallery-classic-image-block--prosilver .gallery-image-bbcode-copy:hover,
.gallery-classic-image-block--prosilver .gallery-image-bbcode-copy:focus,
.gallery-classic-image-block--prosilver .gallery-image-bbcode-copy.is-copied
{
	background: transparent;
	border: 0;
	border-radius: 0;
}

.gallery-classic-last-image
{
	align-items: center;
	display: flex;
	gap: 10px;
	min-width: 0;
}

.gallery-classic-last-image-thumbnail
{
	display: flex;
	flex: 0 0 50px;
	height: 50px;
	justify-content: center;
}

.gallery-classic-last-image-thumbnail img
{
	display: block;
	height: auto;
	max-height: 50px;
	max-width: 50px;
	object-fit: contain;
	width: auto;
}

.gallery-classic-last-image-details
{
	min-width: 0;
	overflow-wrap: anywhere;
}

.gallery-classic-image--unapproved
{
	box-shadow: inset 0 0 0 1px #daa520;
}

.gallery-classic-image--locked
{
	box-shadow: inset 0 0 0 2px rgba(127, 127, 127, .2);
}

.gallery-classic-image--reported
{
	box-shadow: inset 0 0 0 1px #d9534f;
}

.gallery-classic-image-title
{
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	overflow: hidden;
	margin: 0;
	min-height: 40px;
	padding: 7px 9px;
	border-bottom: 1px solid rgba(127, 127, 127, .22);
	font-size: 1em;
	font-weight: bold;
	line-height: 1.35;
	max-width: 100%;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}

.gallery-classic-image-heading
{
	width: 100%;
}

.gallery-classic-image-heading > .gallery-image-bbcode-copy
{
	margin-inline-start: 7px;
	margin-top: 7px;
}

.gallery-classic-image-title a
{
	display: block;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 100%;
}

.gallery-classic-thumbnail
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	height: var(--gallery-classic-thumbnail-size);
	min-height: 100px;
	overflow: hidden;
	padding: 8px;
	background: rgba(127, 127, 127, .06);
}

.gallery-classic-thumbnail a
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
}

.gallery-classic-thumbnail img
{
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: calc(var(--gallery-classic-thumbnail-size) - 16px);
	object-fit: contain;
}

.gallery-classic-status
{
	position: absolute;
	right: 6px;
	bottom: 6px;
	padding: 3px 6px;
	border-radius: 3px;
	background: #daa520;
	color: #fff;
	font-size: .85em;
}

.gallery-classic-image-details
{
	flex: 1;
	overflow-wrap: anywhere;
	padding: 8px 9px;
	border-top: 1px solid rgba(127, 127, 127, .22);
	font-size: .92em;
	line-height: 1.45;
}

.gallery-classic-image-subtitle
{
	overflow: hidden;
	margin-bottom: 4px;
	font-style: italic;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gallery-classic-image-rating
{
	white-space: normal;
}

.gallery-classic-approval
{
	display: flex;
	gap: 5px;
	justify-content: center;
	padding: 0 9px 9px;
}

@media (max-width: 900px)
{
	.gallery-classic-image-grid
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 520px)
{
	.gallery-classic-image-grid
	{
		grid-template-columns: minmax(0, 1fr);
	}
}

.image_unapproved,
.image_reported
{
	display: inline-block !important;
	background: transparent none 0 0 no-repeat;
	margin: 0;
	padding: 0;
	width: 0;
	height: 0;
	overflow: hidden;
	background-image: url("./images/icon_topic_unapproved.png");
	padding-left: 16px;
	padding-top: 14px;
	float: right;
}

.image_locked
{
	display: inline-block !important;
	background: transparent none 0 0 no-repeat;
	margin: 0;
	padding: 0;
	width: 0;
	height: 0;
	overflow: hidden;
	background-image: url("./images/lock.png");
	padding-left: 16px;
	padding-top: 16px;
	float: right;
}

.image_prev_image
{
	float: left; 
	text-align: left; 
}

.image_next_image
{
	float: right; 
	text-align: right; 
}

.postbody_album {
	text-align:center;
}

.postbody_album img.postimage {
	margin: 10px auto 10px auto;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.gallery-image-navigation {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 1.6fr) minmax(0, 1fr);
	align-items: center;
	column-gap: clamp(10px, 3vw, 48px);
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gallery-image-navigation-side,
.gallery-image-navigation-current {
	display: flex;
	align-items: center;
	min-width: 0;
}

.gallery-image-navigation-current {
	justify-content: center;
}

.gallery-image-navigation-previous,
.gallery-image-navigation-next {
	justify-content: center;
}

.gallery-image-navigation a {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
}

.gallery-image-navigation-current > a {
	padding: 5px;
	border-radius: 5px;
}

.gallery-image-navigation-icon-link {
	width: clamp(56px, 7vw, 88px);
	opacity: .72;
	text-decoration: none;
	transition: opacity .2s ease, transform .2s ease;
}

.gallery-image-navigation-icon-link:hover,
.gallery-image-navigation-icon-link:focus {
	opacity: 1;
	text-decoration: none;
	transform: scale(1.08);
}

.gallery-image-navigation-icon-link:focus-visible {
	outline: 3px solid currentColor;
	outline-offset: 3px;
}

.gallery-image-navigation-chevron {
	margin: 0;
	font-size: clamp(32px, 5vw, 60px);
	line-height: 1;
}

.gallery-image-navigation img {
	max-width: 100%;
	height: auto;
	object-fit: contain;
}

.gallery-image-navigation-side img {
	width: auto;
	max-width: min(100%, 200px);
	max-height: min(38vh, 340px);
}

.gallery-image-navigation-current img {
	width: auto;
	max-width: min(100%, 620px);
	max-height: min(72vh, 760px);
}

.gallery-image-navigation-placeholder {
	display: block;
	visibility: hidden;
}

@media (max-width: 767px) {
	.gallery-image-navigation {
		grid-template-columns: minmax(0, 1fr) minmax(140px, 1.8fr) minmax(0, 1fr);
		column-gap: 6px;
	}

	.gallery-image-navigation-side img {
		width: auto;
		max-width: min(100%, 96px);
		max-height: 28vh;
	}

	.gallery-image-navigation-current img {
		width: auto;
		max-width: min(100%, 360px);
		max-height: 60vh;
	}

	.gallery-image-navigation-icon-link {
		width: clamp(44px, 13vw, 58px);
	}

	.gallery-image-navigation-chevron {
		font-size: clamp(26px, 9vw, 38px);
	}
}

.post > .inner > .unapproved {
	text-align: center;
	overflow: hidden;
	padding: 8px;
	font-size: larger;
	font-weight: 700;
	background-color: #ffcc66;
	color: black;
	border-radius: 7px;
}

.polaroid .post-notice.unapproved {
	font-weight: 700;
	background-color: #ffcc66;
	color: black;
	border-radius: 5px;
}

.trophy-container
{
	position: relative;
	float: right;
	margin-left: -100%;
	font-size: 3em;
	color: #f2f2f2;
	top: -20px;
	left: -10px;
}

.trophy-icon
{
	margin-left: -22px;
	margin-top: -6px;
	display: inline-block;
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	font-family: FontAwesome;
	font-size: 2em;
	line-height: 1;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-shadow: 1px 1px 1px #b7b7b7;
}

.trophy-text
{
	font-size: 0.8em;
}

.trophy-color-1
{
	color: #FFD700;
}

.trophy-color-2
{
	color: silver;
}

.trophy-color-3
{
	color: #CD7f32;
}

.phpbbgallery-selector-launch
{
	margin: 6px 4px 6px 0;
}

#format-buttons > .phpbbgallery-selector-launch,
.posting-btns > .phpbbgallery-selector-launch
{
	margin: 0 0 0 4px;
	vertical-align: middle;
}

.phpbbgallery-selector-dialog
{
	background: transparent;
	border: 0;
	height: min(760px, 88vh);
	max-height: 88vh;
	max-width: 960px;
	padding: 0;
	width: min(960px, 94vw);
}

.phpbbgallery-selector-dialog[hidden]
{
	display: none;
}

.phpbbgallery-selector-dialog::backdrop
{
	background: rgba(0, 0, 0, 0.65);
}

.phpbbgallery-selector-fallback-open
{
	display: block;
	inset: 5vh auto auto 50%;
	position: fixed;
	transform: translateX(-50%);
	z-index: 10050;
}

.phpbbgallery-selector-fallback-open::before
{
	box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.65);
	content: "";
	inset: 0;
	pointer-events: none;
	position: fixed;
}

.phpbbgallery-selector-page-open
{
	overflow: hidden;
}

.phpbbgallery-selector-panel
{
	background: #fff;
	border-radius: 6px;
	box-sizing: border-box;
	color: #333;
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.phpbbgallery-selector-header
{
	align-items: center;
	border-bottom: 1px solid #d9d9d9;
	display: flex;
	justify-content: space-between;
	padding: 14px 18px;
}

.phpbbgallery-selector-header h2
{
	color: inherit;
	font-size: 1.35em;
	margin: 0;
}

.phpbbgallery-selector-close
{
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	font-size: 2em;
	line-height: 1;
	padding: 0 4px;
}

.phpbbgallery-selector-filter
{
	align-items: center;
	display: flex;
	gap: 10px;
	padding: 12px 18px 0;
}

.phpbbgallery-selector-filter select
{
	max-width: 460px;
}

.phpbbgallery-selector-status
{
	margin: 12px 18px 0;
	min-height: 1.4em;
}

.phpbbgallery-selector-error
{
	color: #b00020;
}

.phpbbgallery-selector-grid
{
	display: grid;
	flex: 1;
	gap: 12px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	overflow: auto;
	padding: 12px 18px;
}

.phpbbgallery-selector-card
{
	align-items: stretch;
	background: #f5f5f5;
	border: 1px solid #d5d5d5;
	border-radius: 5px;
	color: inherit;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
	padding: 8px;
	text-align: start;
}

.phpbbgallery-selector-card:hover,
.phpbbgallery-selector-card:focus
{
	border-color: #4a90e2;
	box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2);
	outline: 0;
}

.phpbbgallery-selector-card img
{
	background: #e5e5e5;
	height: 130px;
	object-fit: contain;
	width: 100%;
}

.phpbbgallery-selector-card strong,
.phpbbgallery-selector-card span
{
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.phpbbgallery-selector-card span
{
	color: #666;
	font-size: 0.9em;
}

.phpbbgallery-selector-pagination
{
	border-top: 1px solid #d9d9d9;
	display: flex;
	gap: 8px;
	justify-content: flex-end;
	padding: 12px 18px;
}

@media (max-width: 700px)
{
	.phpbbgallery-selector-grid
	{
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.phpbbgallery-selector-filter
	{
		align-items: stretch;
		flex-direction: column;
		gap: 4px;
	}

	.phpbbgallery-selector-filter select
	{
		max-width: none;
	}
}

.phpbbgallery-header-link
{
	display: inline-block;
	margin-inline-end: 7px;
}

.phpbbgallery-online-users img
{
	height: 20px !important;
	margin: 2px;
	max-height: 20px !important;
	max-width: 20px !important;
	object-fit: cover;
	vertical-align: middle;
	width: 20px !important;
}

.phpbbgallery-new-images-badge
{
	align-items: center;
	background: #d9534f;
	border-radius: 999px;
	box-sizing: border-box;
	color: #fff;
	display: inline-flex;
	font-size: 0.75em;
	font-weight: 700;
	height: 1.5em;
	justify-content: center;
	line-height: 1;
	margin-left: 0.35em;
	min-width: 1.5em;
	padding: 0 0.4em;
	vertical-align: middle;
}

.gallery-comment-guidance
{
	align-items: baseline;
	display: flex;
	gap: 1em;
	justify-content: space-between;
	width: 100%;
}

.gallery-comment-submit-guidance
{
	display: inline-flex;
	margin-inline-start: 0.75em;
	vertical-align: middle;
	width: auto;
}

.gallery-comment-actions
{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
	justify-content: space-between;
	width: 100%;
}

.gallery-comment-actions .gallery-comment-guidance
{
	display: inline-flex;
	margin-inline-start: auto;
	text-align: end;
	width: auto;
}

.gallery-comment-counter
{
	font-weight: 700;
	margin-inline-start: auto;
	white-space: nowrap;
}

.gallery-comment-counter[hidden]
{
	display: none;
}

.gallery-comment-guidance-text[hidden],
[data-gallery-comment-guidance-text][hidden]
{
	display: none;
}

#postingbox .posting-btns .btn-group > button.btn
{
	box-sizing: border-box;
	height: 34px;
}

.gallery-comment-counter-exceeded
{
	color: #bc2a4d;
}

.phpbbgallery-image-page [data-gallery-comment-profile] .panel-body.user-profile-sep
{
	border-left: 2px dashed #eee;
	border-right: 0;
}

.gallery-sep .fa
{
	box-sizing: content-box;
	padding-left: 16px;
	padding-right: 16px;
}

.gallery-sep
{
	margin-top: 24px;
	margin-bottom: 24px;
}

.gallery-checkbox-label
{
	margin-left: 7px;
}

.gallery-signature-option
{
	align-items: center;
	display: flex;
	gap: 8px;
	min-height: 24px;
}

.gallery-signature-option .icheckbox_flat-aero
{
	flex: 0 0 20px;
	margin: 0;
}

.gallery-signature-option .gallery-checkbox-label
{
	align-items: center;
	display: inline-flex;
	line-height: 20px;
	margin: 0;
}

.gallery-upload-comments
{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	min-height: 34px;
}

.gallery-upload-comments .control-label
{
	margin: 0 10px 0 0;
}

.gallery-upload-comments .gallery-checkbox-label
{
	margin-bottom: 0;
}

.gallery-rating-stars
{
	display: inline-flex;
	flex-direction: row-reverse;
	gap: 2px;
	vertical-align: middle;
}

.gallery-rating-stars input
{
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

.gallery-rating-stars label
{
	color: #b7bdc7;
	cursor: pointer;
	font-size: 22px;
	line-height: 1;
	margin: 0;
	transition: color .12s ease-in-out, transform .12s ease-in-out;
}

.gallery-rating-stars input:checked ~ label,
.gallery-rating-stars label:hover,
.gallery-rating-stars label:hover ~ label
{
	color: #f0ad4e;
}

.gallery-rating-stars label:hover
{
	transform: translateY(-1px) scale(1.08);
}

.gallery-rating-stars input:focus-visible + label
{
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.gallery-rating-stars-ajax
{
	display: inline-flex;
	flex-direction: row-reverse;
	gap: 3px;
	vertical-align: middle;
}

.gallery-rating-stars-ajax .gallery-rating-star
{
	appearance: none;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: #b7bdc7;
	cursor: pointer;
	font-size: 24px;
	line-height: 1;
	margin: 0;
	padding: 1px;
	transition: color .12s ease-in-out, transform .12s ease-in-out;
}

.gallery-rating-stars-ajax .gallery-rating-star:hover,
.gallery-rating-stars-ajax .gallery-rating-star:hover ~ .gallery-rating-star,
.gallery-rating-stars-ajax .gallery-rating-star.is-selected,
.gallery-rating-stars-ajax .gallery-rating-star.is-selected ~ .gallery-rating-star
{
	color: #f0ad4e;
}

.gallery-rating-stars-ajax .gallery-rating-star:hover
{
	transform: translateY(-1px) scale(1.08);
}

.gallery-rating-stars-ajax .gallery-rating-star:focus-visible
{
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.gallery-rating-stars-ajax.is-busy
{
	opacity: .65;
}

.gallery-album-rating-form
{
	margin: 4px 0 0;
}

.gallery-image-card-metadata-item[hidden]
{
	display: none !important;
}

.gallery-album-rating-trigger
{
	appearance: none;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: inherit;
	cursor: pointer;
	font: inherit;
	margin: 0;
	padding: 0;
	text-decoration: underline;
	text-decoration-style: dotted;
	text-underline-offset: 2px;
}

.gallery-album-rating-trigger:focus-visible
{
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.gallery-album-rating-stars
{
	display: flex;
	justify-content: center;
}

.gallery-album-rating-stars .gallery-rating-star
{
	font-size: 18px;
	padding: 0;
}

.gallery-album-rating-status
{
	display: block;
	font-weight: 600;
	line-height: 1.3;
}

.gallery-album-rating-status:empty
{
	display: none;
}

.gallery-ip-toggle
{
	appearance: none;
	background: transparent;
	border: 0;
	box-shadow: none;
	color: inherit;
	cursor: pointer;
	font: inherit;
	line-height: inherit;
	margin: 0;
	padding: 0;
}

.gallery-sensitive-ip
{
	display: inline-block;
	filter: blur(4px);
	transition: filter .15s ease-in-out;
	user-select: none;
}

.gallery-ip-visible .gallery-sensitive-ip
{
	filter: none;
	user-select: text;
}

.gallery-ip-toggle:focus-visible
{
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce)
{
	.gallery-sensitive-ip
	{
		transition: none;
	}
}

.phpbbgallery-image-page .gallery-avatar-online
{
	display: inline-block;
	position: relative;
	vertical-align: top;
}

.phpbbgallery-image-page .gallery-avatar-online > .ribbon-wrapper
{
	left: auto;
	right: -3px;
}

.gallery-author-autocomplete
{
	overflow: visible;
	position: relative;
}

.gallery-author-autocomplete.is-open
{
	z-index: 10050;
}

fieldset dl.gallery-autocomplete-row-open
{
	display: flow-root;
	overflow: visible;
	position: relative;
	z-index: 10040;
}

.gallery-author-suggestions
{
	background: #fff;
	border: 1px solid #c7c7c7;
	box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
	box-sizing: border-box;
	left: 0;
	list-style: none;
	margin: 2px 0 0;
	max-height: 240px;
	overflow-y: auto;
	padding: 0;
	position: absolute;
	top: 100%;
	width: 100%;
	z-index: 10060;
}

.gallery-author-suggestions[hidden]
{
	display: none;
}

.gallery-author-suggestions button
{
	background: transparent;
	border: 0;
	box-shadow: none;
	box-sizing: border-box;
	color: #333;
	cursor: pointer;
	display: block;
	font: inherit;
	padding: 8px 10px;
	text-align: left;
	width: 100%;
}

.gallery-author-suggestions button:hover,
.gallery-author-suggestions .is-active button
{
	background: #e8f1f8;
}

.gallery-search-results-toolbar
{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 10px 18px;
	justify-content: space-between;
	margin: 10px 0 16px;
}

.gallery-album-top-actions
{
	min-height: 34px;
	position: relative;
}

.gallery-album-inline-search
{
	float: none;
	left: 50%;
	margin: 0;
	max-width: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 50%;
}

.gallery-album-inline-search form,
.gallery-album-inline-search fieldset,
.gallery-album-inline-search .input-group
{
	margin: 0;
	width: 100%;
}

@media (max-width: 1000px)
{
	.gallery-album-bootstrap-actions
	{
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: space-between;
	}

	.gallery-album-inline-search
	{
		clear: both;
		flex: 0 0 100%;
		left: auto;
		max-width: none;
		order: 10;
		position: static;
		transform: none;
		width: 100%;
	}
}

.gallery-search-results-refine
{
	flex: 0 1 360px;
	max-width: 360px;
	width: 100%;
}

.gallery-search-results-refine .input-group
{
	width: 100%;
}

.gallery-search-results-pagination
{
	margin: 0 0 0 auto;
}

.gallery-search-results-footer-toolbar
{
	align-items: flex-end;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 24px;
	justify-content: space-between;
	margin-top: 20px;
}

.gallery-search-results-sort
{
	flex: 0 1 560px;
	max-width: 560px;
	width: 100%;
}

.gallery-search-results-sort > .control-label
{
	display: block;
	margin-bottom: 6px;
}

.gallery-search-results-sort-controls
{
	align-items: center;
	display: flex;
	gap: 8px;
}

.gallery-search-results-sort-key
{
	flex: 0 1 240px;
}

.gallery-search-results-sort-direction
{
	flex: 0 1 170px;
}

.gallery-search-results-sort-key,
.gallery-search-results-sort-direction
{
	display: block;
}

.gallery-search-results-sort-controls select,
.gallery-search-results-sort-controls .bootstrap-select
{
	margin-bottom: 0;
	width: 100% !important;
}

.gallery-search-results-sort-controls > .btn
{
	flex: 0 0 auto;
}

@media (max-width: 767px)
{
	.gallery-search-results-refine
	{
		flex-basis: 100%;
		max-width: none;
	}

	.gallery-search-results-sort
	{
		flex-basis: 100%;
		max-width: none;
	}

	.gallery-search-results-sort-controls
	{
		flex-wrap: wrap;
	}

	.gallery-search-results-sort-key
	{
		flex-basis: 100%;
	}

	.gallery-search-results-sort-direction
	{
		flex: 1 1 170px;
	}
}

/* Keep every upload-review image and all of its add-on fields visually grouped. */
.gallery-image-review-row
{
	background-color: rgba(255, 255, 255, 0.52);
	border: 1px solid rgba(70, 100, 120, 0.16);
	border-radius: 5px;
	box-sizing: border-box;
	margin-bottom: 14px;
	padding: 14px;
}

.gallery-image-review-row:nth-of-type(even)
{
	background-color: rgba(92, 143, 171, 0.1);
}

.gallery-image-review-row:nth-of-type(odd)
{
	background-color: rgba(255, 255, 255, 0.58);
}

@media (max-width: 700px)
{
	.gallery-image-review-row
	{
		padding: 10px;
	}
}

.gallery-orientation-editor
{
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.gallery-orientation-toolbar
{
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.gallery-orientation-toolbar button
{
	align-items: center;
	display: inline-flex;
	justify-content: center;
	min-height: 34px;
	min-width: 38px;
}

.gallery-orientation-state
{
	color: inherit;
	display: block;
	font-size: 0.92em;
}

.gallery-orientation-apply-all
{
	align-items: center;
	display: inline-flex;
	gap: 7px;
}

.gallery-orientation-preview
{
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 170px;
	overflow: hidden;
	padding: 12px;
}

.gallery-orientation-preview img
{
	background-color: #fff;
	background-image: repeating-conic-gradient(#e2e5e8 0 25%, #fff 0 50%);
	background-position: 0 0;
	background-size: 16px 16px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.12);
	max-height: 220px;
	max-width: 100%;
	transform-origin: center;
	transition: transform 180ms ease;
}

.gallery-orientation-preview [data-gallery-upload-preview]
{
	cursor: zoom-in;
}

.gallery-upload-preview-dialog
{
	background: transparent;
	border: 0;
	color: #fff;
	max-height: calc(100vh - 32px);
	max-width: calc(100vw - 32px);
	padding: 0;
}

.gallery-upload-preview-dialog::backdrop
{
	background: rgba(0, 0, 0, 0.82);
}

.gallery-upload-preview-frame
{
	background: #111;
	border-radius: 6px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
	overflow: hidden;
	position: relative;
}

.gallery-upload-preview-frame figure
{
	margin: 0;
}

.gallery-upload-preview-frame img
{
	display: block;
	height: auto;
	max-height: calc(100vh - 96px);
	max-width: calc(100vw - 48px);
	width: auto;
}

.gallery-upload-preview-frame figcaption
{
	padding: 10px 48px 10px 14px;
}

.gallery-upload-preview-close
{
	background: rgba(0, 0, 0, 0.68);
	border: 0;
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	font-size: 24px;
	height: 36px;
	line-height: 32px;
	position: absolute;
	right: 8px;
	top: 8px;
	width: 36px;
	z-index: 1;
}

.gallery-album-custom-icon-frame
{
	overflow: visible;
	position: relative;
	z-index: 2;
}

.gallery-album-custom-icon-frame .gallery-album-custom-icon
{
	background: transparent;
	border-radius: 3px;
	box-sizing: border-box;
	display: block;
	height: 30px;
	max-height: 30px;
	max-width: 30px;
	object-fit: contain;
	position: relative;
	transform-origin: center;
	transition: box-shadow 160ms ease, transform 160ms ease;
	width: 30px;
	z-index: 2;
}

.gallery-classic-album-custom-visual
{
	background-image: none !important;
}

.gallery-album-custom-icon-frame .gallery-album-custom-icon:hover,
.gallery-album-custom-icon-frame:focus .gallery-album-custom-icon
{
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.3);
	transform: scale(3);
	z-index: 10;
}

.gallery-classic-album-icon-frame .gallery-album-custom-icon
{
	height: 50px;
	max-height: 50px;
	max-width: 50px;
	object-fit: contain;
	transition: none;
	width: 50px;
}

.gallery-classic-album-icon-frame .gallery-album-custom-icon:hover,
.gallery-classic-album-icon-frame:focus .gallery-album-custom-icon
{
	box-shadow: none;
	transform: none;
}

.gallery-modern-album-visual.gallery-album-custom-icon-frame
{
	overflow: hidden;
}

.gallery-modern-album-visual.gallery-album-custom-icon-frame .gallery-album-custom-icon
{
	height: calc(100% - 8px);
	max-height: calc(100% - 8px);
	max-width: calc(100% - 8px);
	transition: none;
	width: calc(100% - 8px);
}

.gallery-modern-album-visual.gallery-album-custom-icon-frame .gallery-album-custom-icon:hover,
.gallery-modern-album-visual.gallery-album-custom-icon-frame:focus .gallery-album-custom-icon
{
	box-shadow: none;
	transform: none;
}

.gallery-futuristic-album-visual.gallery-album-custom-icon-frame .gallery-album-custom-icon
{
	background: transparent;
	border-radius: 0;
	height: 100%;
	max-height: 100%;
	max-width: 100%;
	width: 100%;
}

.gallery-futuristic-album-visual.gallery-album-custom-icon-frame .gallery-album-custom-icon:hover,
.gallery-futuristic-album-visual.gallery-album-custom-icon-frame:focus .gallery-album-custom-icon
{
	box-shadow: none;
	transform: none;
}

.gallery-mcp-action-row
{
	align-items: flex-start;
	display: flex;
	gap: 12px 24px;
	justify-content: space-between;
	text-align: left;
}

.gallery-mcp-bulk-action
{
	flex: 0 1 auto;
}

.gallery-mcp-change-author
{
	align-items: center;
	display: flex;
	flex: 0 1 auto;
	gap: 6px;
	margin-inline-start: auto;
}

.gallery-mcp-change-author input
{
	max-width: 100%;
}

@media (max-width: 700px)
{
	.gallery-mcp-action-row
	{
		align-items: stretch;
		flex-direction: column;
	}

	.gallery-mcp-change-author
	{
		align-items: flex-start;
		flex-wrap: wrap;
		margin-inline-start: 0;
	}
}

@media (prefers-reduced-motion: reduce)
{
	.gallery-orientation-preview img,
	.gallery-album-custom-icon-frame .gallery-album-custom-icon
	{
		transition: none;
	}
}
