/**
 * Structure générale.
 *
 */
 
/*******  MP / COMMENTS  =  APPROX LINE  6660   *****************/

  
/********************************  MP NEW 2602  =  APPROX LINE  6.880   *****************************/


/******************  CUSTOM PAGES  /  HTML IN TEXT FIELDS  =  APPROX LINE  7.020  ******************/


/********************  MIN WIDTH 1181  NOT COMMENTS  =  APPROX LINE  7.280  *********************/



/***************************  MP RESPONS MAX 1180  (Ex-1024) =  APPROX LINE  7.360   ******************************/
 
 
/***************************  MP RESPONS MAX 479 =  APPROX LINE  7.440   ****************************************/
 
  
@font-face {
	font-family: "IcoMoon";
	src: url("icomoon.woff?v=98e") format("woff");
}
:root {
	--color: #3b5eb5;
	--focus-visible-color: var(--color);
}
h1,h2,h3,h4,h5,h6,p,td,form,ul,img,dl,dt,dd,body,html {
	border: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}
html,table,input,textarea,select {
	font-size: var(--text-size);
}
body {
	color: black;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: .8em;
}
table {
	border-collapse: separate;
	border-spacing: 0;
}
pre {
	font-family: "Courier New", serif;
	white-space: pre-wrap;
}
img {
	display: block;
}
img[src*="video-no-thumb.png"] {
	object-fit: cover;
}
#content {
	padding: 0 8px 1px;
}
main {
	padding: 10px 0 20px;
}
main::before {
	content: '';
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0;
	z-index: 10;
	transition: opacity .25s linear;
}
main.dark::before {
	display: block;
	opacity: 0.5;
}

/* Sélection de texte */
::selection {
	color: white;
	background: var(--color);
}

/* Liens */
a {
	color: black;
	text-decoration: none;
	border-bottom: 1px solid gray;
	margin-bottom: 1px;
}
a.js {
	border-bottom-style: dashed;
}
a:hover {
	border-width: 2px;
	margin-bottom: 0;
}
a.js:hover {
	border-bottom: 2px solid gray;
}
#gallery a:focus-visible,
input[type="range"]:focus-visible {
	outline: 2px solid var(--focus-visible-color);
	outline-offset: 3px;
}
a.u {
	border: none;
	margin: 0;
	text-decoration: underline;
	text-decoration-color: gray;
	text-underline-offset: 3px;
}
a.u:hover {
	text-decoration-thickness: 2px;
}

/* Émojis. */
.emoji {
	font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji",
		Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort;
}
span.emoji[title] {
	cursor: help;
}

/* Espaces. */
span[class^="space_"] {
	display: inline-block;
}
span.space_tab,
span.space_4 {
	width: 4ch;
}
span.space_3 {
	width: 3ch;
}
span.space_2 {
	width: 2ch;
}



/**
 * Header.
 *
 */
#header_top {
	position: relative;
	z-index: 11;
	display: flex;
	height: 44px;
	padding: 0 9px 0 7px;
	align-items: center;
	margin-bottom: 5px;
	background: var(--color);
	box-shadow: 0 0 5px #555;
}
#user_style_large {
	display: none;
}

/* Titre. */
#title {
	display: flex;
	flex: 1;
	text-align: center;
	overflow: hidden;
	white-space: nowrap;
}
:is(header.banner, header.user) #title {
	text-align: left;
}
header h1 {
	position: relative;
	z-index: 0;
	font-size: 150%;
	font-weight: normal;
	font-family: Georgia, serif;
	font-style: italic;
	display: inline-block;
}
header h1 a {
	border: 0;
	margin: 0;
	color: #fafafa;
}
header h1 a .emoji {
	font-style: normal;
}
#title h1:has(a:focus-visible) {
	outline: 3px solid var(--focus-visible-color);
}
#title h1 a:focus-visible {
	outline: none;
}

/* Menu utilisateur. */
#user_links {
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 10px;
}
#user_links img {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	object-fit: cover;
}
#user_links > a {
	border: 0;
	margin: 0;
}
#user_links ul {
	display: none;
	position: absolute;
	top: 58px;
	right: -2px;
	border-top: 1px solid silver;
}
#user_links ul a {
	display: block;
	padding: 15px;
	margin: 0;
	background: white;
	border: 1px solid silver;
	border-top: 0;
	white-space: nowrap;
	font-size: 120%;
}
#user_links li#user_login a {
	font-weight: bold;
	color: var(--color);
}
#user_links li#user_avatar {
	display: none;
}
#user_links > a img,
#user_links li#user_avatar img {
	background: #eee;
}
#header_top #user_style_small a {
	display: flex;
	align-items: center;
	font-family: "IcoMoon";
	font-size: 200%;
	color: #555;
}
#header_top > #user_style_small a {
	border: 0;
	padding: 0;
	margin: 0 0 0 15px;
	color: white;
}

/* Menu utilisateur : flèche */
#user_links ul::after,
#user_links ul::before {
	content: '';
	position: absolute;
	top: -17px;
	right: 10px;
	display: block;
	border: 10px solid transparent;
	border-width: 0 10px 16px;
	border-bottom-color: silver;
}
#user_links ul::after {
	top: -15px;
	border-bottom-color: white;
}

/* Menu principal */
#menu_link {
	display: none;
	border: 0;
	margin: 0 10px 0 0;
	font-family: "IcoMoon";
	font-size: 250%;
	color: #fafafa;
}
#menu_link.show {
	display: block;
}
#menu {
	display: none;
}
#menu.show {
	display: block;
}
#menu nav {
	display: none;
	position: absolute;
	top: 44px;
	width: 100%;
	background: #fff;
	z-index: 100;
}
#menu li a {
	display: flex;
	padding: 0 10px 0 48px;
	height: 44px;
	font-size: 120%;
	border-bottom: 1px solid silver;
	margin: 0;
	align-items: center;
	text-transform: uppercase;
	position: relative;
}
#menu li:nth-last-child(-n+2) a {
	border: none;
}
#menu li.icon {
	display: none;
}

/* Icônes */
#menu a::before {
	font-family: "IcoMoon";
	position: absolute;
	left: 10px;
	width: 30px;
	height: 100%;
	font-size: 160%;
	align-items: center;
	justify-content: center;
	display: flex;
	color: #555;
}
li[id^="menu_custom"] a::before {
	content: '\e943';
}
#menu_cameras a::before {
	content: '\e903';
}
#menu_comments a::before {
	content: '\e932';
}
#menu_contact a::before {
	content: '\e90f';
}
#menu_gallery a::before {
	content: '\e95e';
}
#menu_history a::before {
	content: '\e954';
}
#menu_members a::before {
	content: '\e930';
	top: -1px;
}
#menu_tags a::before {
	content: '\f02c';
}
#menu_search a::before {
	content: '\e90a';
}
#menu_worldmap a::before {
	content: '\e94b';
}
#browse,#search {
	display: none;
}



/**
 * Contenu.
 *
 */
#theme_options {
	display: none;
}
#gallery_closed {
	font-size: 130%;
	margin: 50px auto;
	line-height: 1.5em;
}

/* Titres */
h3.icon {
	font-size: 130%;
	font-weight: bold;
	color: #555;
	margin: 0 0 15px;
	display: flex;
	align-items: center;
}
h3.icon span:first-child {
	font-family: "IcoMoon";
	font-size: 140%;
	display: block;
	margin-right: 8px;
	font-weight: normal;
	position: relative;
	top: -1px;
}

/* Erreurs */
.error,
.error_trace {
	background: white;
	color: black;
	padding: 2px;
}
.error_trace {
	padding: 5px;
}
.error_page {
	position: relative;
	z-index: 0;
	margin: 80px auto 100px;
	max-width: 650px;
}
.error_page h2 {
	font-size: 250%;
	font-weight: normal;
	color: #555;
}
.error_page p {
	font-size: 110%;
	line-height: 1.5em;
	margin: 40px 0;
}
.error_page::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: right;
	z-index: -1;
	font-size: 1200%;
	color: #f0f0f0;
}
#error_404::after {
	top: -30px;
	content: '404';
}
#error_internal::after {
	content: '\e999';
	font-family: "IcoMoon";
}

/* Description */
.object_desc {
	margin: 20px auto 40px;
	max-width: 800px;
	font-size: 120%;
	line-height: 1.7em;
	word-break: break-word;
	overflow-wrap: break-word;
}
.object_desc strong {
	color: #333;
}
.object_desc .emoji {
	font-size: 130%;
}

/* Aide contextuelle. */
.infos_container {
	display: none;
}



/**
 * Tableaux.
 *
 */
.table_default_container {
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
}
.table_default_container > table.default {
	margin: 10px -8px 0;
}
table.default {
	margin: 0 auto;
}
table.default th {
	text-align: center;
	font-weight: bold;
	padding: 15px;
	border: 1px solid var(--color);
	border-right-color: #B0B0B0;
	background: var(--color);
	color: white;
	position: sticky;
	top: 0;
}
table.default th:first-child,
table.default td:first-child {
	border-left-width: 1px;
}
table.default th:last-child {
	border-right-color: var(--color);
}
table.default td {
	border: 1px solid #B0B0B0;
	border-width: 0 1px 1px 0;
	background: white;
	padding: 14px 8px;
	vertical-align: top;
}
table.default tr:nth-child(odd) td {
	background: #F8F8F8;
}
table.default .num {
	text-align: right;
}
.js table.sorter th {
	cursor: pointer;
}



/**
 * Formulaires.
 *
 */
fieldset {
	margin: 0 0 20px;
	padding: 0;
	border: 0;
}
legend {
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-weight: bold;
	color: #333;
}
.field {
	margin: 15px 0;
	line-height: 2em;
	position: relative;
}
.field.disabled {
	color: gray;
}
.field.disabled input,
.field.disabled label,
.field.disabled select,
.field.disabled textarea {
	cursor: not-allowed;
}
.field.disabled textarea {
	border-color: #ddd;
	background: none;
}
.field:has(#f_email) {
	display: none;
}
.field > br {
	margin: 0 0 5px;
}

/* Boutons. */
.button {
	border: 1px solid silver;
	margin: 10px 10px 10px 0;
	padding: 6px 10px;
	background: linear-gradient(0deg, #E5E5E5, #FFFFFF);
	white-space: nowrap;
	outline: none;
	cursor: pointer;
	font-size: 120%;
}
.button:active {
	background: linear-gradient(0deg, #FFFFFF, #E5E5E5);
}
.button:focus {
	border-color: gray;
}
.button:hover {
	box-shadow: 0 0 6px silver;
}
.button[disabled],
.button[disabled]:active,
.button[disabled]:focus,
.button[disabled]:hover {
	color: #aaa;
	border-color: #ddd;
	background: none;
	outline: none;
	box-shadow: none;
	cursor: default;
}

/* Boutons de formulaires : style 2 */
body.btn_2_clear .button,
body.btn_2_clear .button:active,
body.btn_2_clear .button:focus,
body.btn_2_clear .button:hover {
	background: var(--color);
	border: 2px solid var(--color);
	padding: 6px 12px;
	color: white;
	box-shadow: none;
}
body.btn_2_clear .button:active,
body.btn_2_clear .button:focus,
body.btn_2_clear .button:hover {
	color: var(--color);
	background: white;
}
body.btn_2_clear .button:active {
	box-shadow: 0 0 8px gray;
}
body.btn_2_clear .button[disabled],
body.btn_2_clear .button[disabled]:active,
body.btn_2_clear .button[disabled]:focus,
body.btn_2_clear .button[disabled]:hover {
	color: #aaa;
	border-color: #ddd;
	background: none;
	outline: none;
	box-shadow: none;
	cursor: default;
}

/* Bouton de sélection de fichier. */
.nojs .button_file {
	display: block;
}
.js input[type="file"] {
	opacity: 0;
	overflow: hidden;
	position: absolute;
	z-index: -1;
}
.js .button_file {
	background: #ddd;
	display: inline-block;
	padding: 2px 8px;
	margin: 10px 0 0;
	max-width: 90%;
	overflow: hidden;
	cursor: pointer;
	word-break: break-word;
}
.js input[type="file"]:focus + label,
.js .button_file:hover {
	background: #ccc;
}
.js .button_file:active {
	outline: 1px solid #555;
}

/* Champs texte. */
input[type="email"],
input[type="number"],
input[type="password"],
input[type="text"],
input[type="url"] {
	border: 1px solid silver;
	margin: 0;
	padding: 0 4px;
	background: #FAFAFA;
	height: 2.2em;
	outline: none;
}
input[type="email"].large,
input[type="number"].large,
input[type="password"].large,
input[type="text"].large,
input[type="url"].large {
	display: block;
	margin-top: 4px;
	width: 95%;
	max-width: 30em;
}
textarea {
	font-family: monospace, sans-serif;
	line-height: 1.3em;
	border: 1px solid silver;
	background: #FAFAFA;
	padding: 4px;
	display: block;
	margin-top: 5px;
	width: 95%;
	max-width: 40em;
	min-height: 2em;
	outline: none;
}

/* <input type="range"> */
input[type="range"] {
	--range-thumb-color: #7E7E7E;
	--range-thumb-size: 22px;
	--range-track-color: #7E7E7E;
	--range-track-size: 4px;
	-webkit-appearance: none;
	appearance: none;
	background: transparent;
	cursor: pointer;
	width: 100%;
}
input[type="range"]:hover {
	--range-thumb-color: #6E6E6E;
	--range-track-color: #6E6E6E;
}
input[type="range"]:focus-visible {
	outline: 2px solid var(--color);
}
input[type="range"]::-ms-track {
	background: var(--range-track-color);
	height: var(--range-track-size);
}
input[type="range"]::-moz-range-track {
	background: var(--range-track-color);
	height: var(--range-track-size);
}
input[type="range"]::-webkit-slider-runnable-track {
	background: var(--range-track-color);
	height: var(--range-track-size);
}
input[type="range"]::-ms-thumb {
	background: var(--range-thumb-color);
	border: 0;
	width: var(--range-thumb-size);
	height: var(--range-thumb-size);
	border-radius: 50%;
}
input[type="range"]::-moz-range-thumb {
	background: var(--range-thumb-color);
	border: 0;
	width: var(--range-thumb-size);
	height: var(--range-thumb-size);
	border-radius: 50%;
}
input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	background: var(--range-thumb-color);
	border: 0;
	width: var(--range-thumb-size);
	height: var(--range-thumb-size);
	border-radius: 50%;
	margin-top: -10px;
}

/* Bouton de visualisation des mots de passe. */
form .field .password_container {
	display: flex;
	width: calc(95% + 10px);
	margin-top: 4px;
}
form .field .password_container input[type] {
	margin: 0;
	max-width: 27em;
	border-right: 0;
}
form .field .password_container input[type] + .password_view {
	width: 3em;
	min-width: 3em;
	max-width: 3em;
}
form .field .password_container input[type] + .password_view a {
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "IcoMoon";
	font-size: 140%;
	color: white;
	cursor: pointer;
	border: 0;
	margin: 0;
	padding: 0;
	height: 100%;
	width: 100%;
	background: var(--color);
}

/* Cases à cocher. */
input[type="checkbox"],
input[type="radio"] {
	position: relative;
	top: 2px;
	margin: 0 3px 0 0;
	filter: grayscale(1);
}
@-moz-document url-prefix() {
	input[type="checkbox"],
	input[type="radio"] {
		top: 1px;
		filter: grayscale(1) brightness(1.3);
	}
}
input[type="checkbox"]:disabled {
	cursor: not-allowed;
}
input[type="checkbox"]:disabled + label {
	color: silver;
	cursor: not-allowed;
}

/* Listes. */
select {
	border: 1px solid silver;
	background: #FAFAFA;
	max-width: 15em;
	height: 2.2em;
	outline: none;
}
option[selected] {
	background: #cecece;
}
option[disabled] {
	color: #aaa;
}

/* Date et heure */
input[type="number"][class^="dt_"] {
	width: 4.8em;
}
input[type="number"][class^="dt_"].dt_year {
	width: 5.5em;
}
input[type="number"][class^="dt_"] + span {
	display: inline-block;
	width: .5em;
	text-align: center;
}
input[type="number"][class^="dt_"] + a {
	margin-left: 5px;
}
a.dt_now,
a.dt_now:hover,
a.dt_reset,
a.dt_reset:hover {
	font-family: "IcoMoon";
	font-size: 170%;
	border: 0;
	padding: 2px;
	position: absolute;
	color: #333;
}

/* Éléments:focus */
input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="text"]:focus,
input[type="url"]:focus,
select:focus, textarea:focus {
	border-color: gray;
}

/* Champs erronés */
.field_error :is(input, input:focus, select, select:focus, textarea, textarea:focus) {
	border: 1px solid var(--color);
	outline: 1px solid var(--color);
}



/**
 * Formulaire standard.
 *
 */
form.standard {
	max-width: 28em;
	margin: 20px auto;
	padding: 0;
}
form.standard h2 {
	font-size: 180%;
	color: #555;
	font-weight: normal;
	margin-bottom: 30px;
}
form.standard *[class^="message_"] {
	margin-bottom: 30px;
}
form.standard .required {
	position: relative;
}
form.standard .required label {
	padding-left: 1.5em;
}
form.standard .required::before {
	content: '\2731';
	position: absolute;
	font-size: 120%;
	color: var(--color);
}

/* Formulaire d'inscription. */
#register_form #password_validation_text {
	line-height: 2em;
	margin-top: 10px;
	display: block;
}
#register_form #password_validation_text span:last-child {
	display: block;
	font-weight: bold;
	color: #333;
}

/* Mot de passe oublié. */
#forgot_password .text {
	line-height: 1.7em;
}



/**
 * Pages personnalisées.
 *
 */
#page_custom {
	margin: 20px 0 30px;
	font-size: 120%;
	line-height: 1.7em;
}
#page_custom .emoji {
	font-size: 130%;
}
#page_custom :is(h1,h2,h3,h4,h5,h6) {
	color: #444;
}
#page_custom h1 {
	font-size: 160%;
}
#page_custom h2 {
	font-size: 130%;
}



/**
 * Viewer.
 *
 */
#viewer {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(0,0,0,0.7);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: zoom-out;
}
#viewer img {
	max-width: 100%;
	max-height: 100%;
	background: white;
}
#viewer img:not([data-type="image/jpeg"]) {
	background: white;
}



/**
 * Page contact.
 *
 */
#contact_form {
	max-width: 520px;
}
#contact_form :is(input[type="email"], input[type="text"], input[type="url"]) {
	max-width: 400px;
}
#contact_message {
	max-width: 100%;
	margin-bottom: 30px;
}



/**
 * Messages de rapport.
 *
 */
#messages {
	margin: 0 0 30px;
}
*[class^="message_"] {
	margin: 15px 0;
	font-size: 120%;
	padding-left: 1.8em;
	position: relative;
	color: var(--color);
}
*[class^="message_"] :is(a, span) {
	color: var(--color);
	border-color: var(--color);
}
*[class^="message_"]::before {
	font-family: "IcoMoon";
	position: absolute;
	font-size: 140%;
	color: var(--color);
	margin-top: -2px;
	top: 0;
	left: 0;
	display: flex;
}
@-moz-document url-prefix() {
	*[class^="message_"]::before { margin-top: -4px; }
}
*[class="message_error"]::before {
	content: '\e904';
	top: .025em;
}
*[class="message_info"]::before {
	content: '\f06a';
}
*[class="message_success"]::before {
	top: -1px;
	content: '\e905';
}



/**
 * Page de déconnexion.
 *
 */
#logout {
	margin: 30px 0 60px;
	text-align: center;
}



/**
 * Fil d'Ariane et outils.
 *
 */
#breadcrumb_tools {
	margin-bottom: 5px;
}
#breadcrumb, .breadcrumb_filter, #tools {
	min-height: 1.8em;
}
#breadcrumb_tools nav {
	flex: 1;
	align-items: center;
}
#breadcrumb {
	font-size: 110%;
}
#breadcrumb a {
	line-height: 1.6em;
}
#breadcrumb .current {
	font-weight: bold;
	border-width: 0;
	color: #333;
}
#breadcrumb .current:hover {
	border-width: 2px;
}
.breadcrumb_filter {
	font-size: 110%;
	line-height: 1.6em;
	margin-bottom: 4px;
}
.breadcrumb_filter :is(.filter_name, #cat_name) {
	font-weight: bold;
	color: var(--color);
	border-color: var(--color);
}
#objects_count {
	font-weight: normal;
}

/* Pages */
#page_breadcrumb {
	font-size: 110%;
	line-height: 1.6em;
	margin-bottom: 30px;
}
#page_breadcrumb :is(span, a) {
	font-weight: bold;
	color: var(--color);
	border-color: var(--color);
}
#page_breadcrumb + .message_info {
	margin-top: 40px;
}

/* Outils */
#tools {
	margin: 10px 0 30px;
	text-align: center;
	position: relative;
	height: 0;
}
#section_item #tools {
	margin: 10px 0 20px;
}
#tools li {
	display: inline-block;
	margin: 0 5px;
}
#tools a {
	font-family: "IcoMoon";
	border: 0;
	padding: 0;
	margin: 0;
	font-size: 200%;
	color: #555;
	display: flex;
	height: 38px;
	width: 38px;
	align-items: center;
	justify-content: center;
}
#tools a:hover {
	color: var(--color);
}
#link_prev {
	position: absolute;
	left: -10px;
}
#link_next {
	position: absolute;
	right: -10px;
}
#link_prev a,
#link_next a {
	display: flex;
	justify-content: center;
	margin-top: 1px;
}

/* Icônes */
#link_logout {
	position: relative;
	top: -1px;
}
#tools :is(#link_delete a, #link_edit a, #link_selection a) {
	font-size: 170%;
	position: relative;
	top: -1px;
}
#tools :is(#link_admin, #link_cameras, #link_delete, #link_diaporama, #link_download,
#link_edit, #link_favorites, #link_history, #link_logout, #link_selection, #link_upload) {
	display: none;
}
@media (min-width: 200px) {
	#tools #link_diaporama {
		display: inline-block;
	}
}
@media (min-width: 250px) {
	#tools #link_selection {
		display: inline-block;
	}
}
@media (min-width: 300px) {
	#tools.cat #link_upload {
		display: inline-block;
	}
	#tools.item #link_download {
		display: inline-block;
	}
}
@media (min-width: 350px) {
	#tools.cat #link_favorites {
		display: inline-block;
	}
	#tools.item #link_favorites {
		display: inline-block;
	}
}
@media (min-width: 400px) {
	#tools.cat #link_logout {
		display: inline-block;
	}
	#tools.item #link_edit {
		display: inline-block;
	}
}
@media (min-width: 450px) {
	#tools.cat #link_download {
		display: inline-block;
	}
	#tools.item #link_logout {
		display: inline-block;
	}
}
@media (min-width: 500px) {
	#tools.cat #link_edit {
		display: inline-block;
	}
	#tools.item #link_admin {
		display: inline-block;
	}
}
@media (min-width: 550px) {
	#tools.cat #link_delete {
		display: inline-block;
	}
}
@media (min-width: 600px) {
	#tools.cat #link_admin {
		display: inline-block;
	}
}
@media (min-width: 650px) {
	#tools.cat #link_history {
		display: inline-block;
	}
}
@media (min-width: 700px) {
	#tools.cat #link_cameras {
		display: inline-block;
	}
}



/**
 * Boîtes flottantes.
 *
 */
.box_outer {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: hsla(0, 0%, 0%, 0.5);
	z-index: 999;
}
.box_inner {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
}
.box {
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	position: absolute;
}

/* Menu. */
.box_menu {
	display: flex;
	overflow: auto;
	scrollbar-width: none;
}
.box_menu a {
	cursor: pointer;
	padding: .6em 1em;
	background: white;
	display: flex;
	align-items: center;
	font-size: 120%;
	white-space: nowrap;
	color: #555;
	border: 0;
	border-left: 1px solid #ddd;
	margin: 0;
}
.box_menu li:first-child a {
	border: 0;
}
.box_menu a:hover,
#gallery .box_menu a:focus-visible {
	background: #f0f0f0;
	outline: none;
}
#gallery .box_menu li.current a:focus-visible {
	background: #aaa;
	color: #333;
}
#gallery .box_menu li.current a {
	color: white;
	background: var(--color);
}
.box_menu li.current a,
.box_menu li.current + li a {
	border-color: transparent;
}
.box_menu span {
	font-family: "IcoMoon";
	font-size: 120%;
	margin-right: 10px;
}
.box_menu span.emoji {
	font-size: 110%;
}
.box_menu span.emoji[title] {
	cursor: pointer;
}

/* Contenu. */
.box_page {
	display: none;
}
.box_menu + .box_page {
	display: block;
}
.box_content {
	border-top: 3px solid var(--color);
	padding: 15px 20px 0;
	background: white;
	overflow: auto;
	scrollbar-width: thin;
}
.box_content::after {
	content: '';
	display: block;
	height: 15px;
	width: 100%;
}
.box_content .field {
	margin-top: 0;
}
.box_content :is(input[type="text"], input[type="password"], textarea) {
	margin: 5px 0 0;
	display: block;
	width: calc(100% - 10px);
	min-width: calc(100% - 10px);
	max-width: calc(100% - 10px);
}
.box_content textarea {
	max-height: 250px;
}
form .box_content .password_container {
	width: 100%;
}
form .box_content .password_view {
	margin-left: calc(1px - 3em);
}

/* Boutons. */
.box_buttons {
	padding: 5px 20px;
	border-top: 1px solid #ddd;
	background: #fafafa;
	display: flex;
	align-items: center;
	position: relative;
}

/* Loading */
#box_loading {
	margin: 0 0 0 10px;
	width: 24px;
	height: 24px;
}
#box_loading::after {
	content: '';
	background: #aaa;
	position: absolute;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	transform: scale(0);
	opacity: 1;
	animation: box-loading 0.8s ease-out infinite;
}
@keyframes box-loading {
	100% {
		transform: scale(1.0);
		opacity: 0;
	}
}

/* Rapport. */
#box_report {
	position: absolute;
	top: 0;
	left: 0;
	width: calc(100% - 40px);
	height: 100%;
	display: flex;
	align-items: center;
	padding: 0 20px;
	background: #fafafa;
	overflow: auto;
	cursor: pointer;
}
#box_report > span[class^="message_"]::before {
	top: 0;
}

/* Media queries */
@media (min-height: 0px) {
	.box {
		top: 5vh;
	}
	.box_content {
		max-height: calc(85vh - 150px);
	}
}
@media (min-height: 600px) {
	.box {
		top: 10vh;
	}
	.box_content {
		max-height: calc(85vh - 180px);
	}
}
@media (min-height: 800px) {
	.box {
		top: 15vh;
	}
	.box_content {
		max-height: calc(85vh - 200px);
	}
}

/* Édition du fichier. */
#box_category .box,
#box_item .box {
	max-width: 650px;
}
#box_comment_delete .box_content,
#box_item_delete .box_content {
	padding: 25px 20px 30px;
}

/* Mode sélection. */
#box_selection .box_menu span {
	margin-right: 0;
	font-size: 130%;
}
#box_selection #selection_tools a {
	border-bottom: 1px dashed #aaa;
	padding: 0 0 1px 0;
}
#box_selection #selection_tools a:hover {
	border-bottom: 2px solid #aaa;
}
#box_selection .selection_title {
	font-size: 150%;
	font-weight: bold;
	margin-bottom: 25px;
	color: #555;
}
#box_selection .box_content .message_info {
	margin-top: 30px;
}
#box_selection .selection_count {
	position: absolute;
	top: 0;
	right: 0;
	display: flex;
}
#box_selection .selection_count a,
#box_selection .selection_count span {
	display: inline-block;
	padding: 0 15px;
	border: 0;
	margin: 0;
	color: white;
}
#box_selection .selection_count a {
	background: var(--color);
}
#box_selection .selection_count a + a {
	margin-left: 8px;
	font-family: "IcoMoon";
	font-size: 130%;
}
#box_selection .selection_count:has(span) a,
#box_selection .selection_count:has(span + span) span:first-child {
	margin-right: 6px;
}
#box_selection .selection_count span {
	background: #555;
	margin-left: 6px;
}
#box_selection .select_tool a {
	border: 0;
	margin: 0;
}
#box_selection .select_tool span:first-child {
	font-family: "IcoMoon";
	font-size: 130%;
	color: #555;
	top: 3px;
	position: relative;
	margin-right: 8px;
}
#box_selection .select_tool span:last-child {
	padding-bottom: 1px;
	border-bottom: 1px dashed gray;
	margin-bottom: 1px;
}
#box_selection .select_tool a:hover span:last-child {
	border-bottom: 2px solid gray;
	margin-bottom: 0;
}

/* Console de connexion. */
/* Mot de passe de catégorie. */
#box_login .box,
#box_password .box {
	max-width: 380px;
}
.box_menu *[data-box-page-id="box_login_page"] span {
	font-size: 130%;
}

/* Sélection. */
#box_selection_link_admin span {
	transform: scale(1.2);
}



/**
 * Liens de navigation entre les pages.
 *
 */
:is(#section_category, #section_album, #section_item) #pages_top {
	display: none;
}
.pages {
	margin: 20px auto;
	position: relative;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pages form {
	display: none;
}
#item_columns + #pages_bottom {
	display: none;
}
#item_columns + #pages_bottom.show {
	display: block;
}

/* Liens. */
.pages .link > * {
	display: flex;
	height: 33px;
	width: 33px;
	margin: 0 8px;
	border: 1px solid silver;
	background: #FAFAFA;
	position: relative;
}
.pages a:hover::after {
	background: #eee;
}
.pages .first > *,
.pages .last > * {
	width: 32px;
}
.pages .link > * span {
	display: none;
}

/* Icônes. */
.pages .link > *::after {
	position: absolute;
	font-family: "IcoMoon";
	font-size: 150%;
	color: #333;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: white;
}
.pages .first > *::after {
	content: '\f104\f104';
}
.pages .prev > *::after {
	content: '\f104';
}
.pages .next > *::after {
	content: '\f105';
}
.pages .last > *::after {
	content: '\f105\f105';
}

/* Liens inactifs. */
.pages .link > span {
	background: none;
	border-color: #E6E6E6;
}
.pages .link > span::after {
	opacity: .25;
}



/**
 * Vignettes de catégories.
 *
 */
#thumbs_cat {
	margin: 0 -8px;
	display: flex;
	flex-wrap: wrap;
}
#thumbs_cat dl {
	margin: 10px auto;
	position: relative;
	width: calc(100% - 10px);
	max-width: 244px;
}

/* Taille : grande */
#thumbs_cat.large dl {
	max-width: 331px;
}

/* Image */
#thumbs_cat dt {
	position: relative;
	margin-bottom: 5px;
}
#thumbs_cat dt a {
	display: flex;
	justify-content: center;
	border: 1px solid silver;
	background: white;
	margin: 0;
	padding: 5px;
}
#thumbs_cat dt a:hover,
#thumbs_cat dt a:focus-visible {
	border-color: var(--color);
	outline: 1px solid var(--color);
	outline-offset: 0;
}
#thumbs_cat dt img {
	width: 100%;
	height: 100%;
	min-height: 100px;
}

/* Fichiers récents */
#thumbs_cat .recent,
#thumbs_cat .recent:hover {
	position: absolute;
	top: 4px;
	left: 9px;
	padding: 8px;
	font-size: 110%;
	font-weight: normal;
	margin: 0;
	border: 0;
	color: white;
	z-index: 0;
}
#thumbs_cat .recent::after {
	z-index: -1;
	position: absolute;
	content: '';
	background: var(--color);
	width: calc(100% + 10px);
	height: 100%;
	top: 0;
	left: -5px;
	transform: rotate(-6deg);
}
#thumbs_cat .recent:focus-visible {
	outline: none;
}

/* Fichiers récents : transition */
#thumbs_cat .recent::after {
	transition: transform 0.1s ease;
}
#thumbs_cat .recent:hover::after,
#thumbs_cat .recent:focus-visible::after {
	transform: scale(1.15) rotate(6deg);
	transition: transform 0.1s linear;
}

/* Titre */
#thumbs_cat dd {
	margin: 0 5px;
}
#thumbs_cat .title {
	display: block;
	padding: 2px 0;
	overflow: hidden;
	line-height: 1.45em;
	max-height: 5.8em;
}
#thumbs_cat .title a {
	border: 0;
	font-size: 100%;
	font-weight: bold;
	color: #333;
	padding: 5px 0 0;
}
#thumbs_cat.large .title {
	line-height: 1.7em;
	max-height: calc(6.8em + 3px);
}
#thumbs_cat.large .title a {
	font-size: 120%;
}
#thumbs_cat .title a:hover {
	border-bottom: 2px solid gray;
}
#thumbs_cat .title a:focus-visible {
	outline: none;
}
#thumbs_cat .title:has(a:focus-visible) {
	outline: 2px solid var(--focus-visible-color);
	outline-offset: 0;
}

/* Stats */
dl ul.stats li {
	color: #555;
	white-space: nowrap;
	margin: 5px 0;
	overflow: hidden;
}
dl ul.stats li:has(a:focus-visible) {
	overflow: visible;
}
dl ul.stats li:not(.rating) span:nth-child(2) {
	margin-left: 8px;
	padding-left: 8px;
	border-left: 1px solid #929292;
	position: relative;
}
dl ul.stats li.rating span span {
	font-family: "IcoMoon";
	font-size: 130%;
	color: var(--color);
}
#thumbs_cat dl ul.stats li.rating span span {
	font-size: 120%;
}
.thumbs_items dl ul.stats li.filter {
	font-size: 100%;
	color: var(--color);
}
dl ul.stats li a {
	color: #555;
	display: inline-block;
	border-color: transparent;
}
dl ul.stats li a:hover {
	border-color: gray;
}

/* Stats en icônes */
dl ul.stats_icon {
	opacity: 0;
	position: absolute;
	top: 6px;
	right: 6px;
	height: calc(100% - 12px);
	width: 50%;
	max-width: 150px;
	background: linear-gradient(90deg, transparent, var(--color));
}
dl ul.stats_icon li {
	display: flex;
	align-items: center;
	color: #fff;
	padding: 4px;
	margin-left: -50%;
	text-align: right;
	text-shadow: 1px 1px 1px #000;
}
dl ul.stats_icon li span:first-child {
	flex: 1;
	white-space: nowrap;
}
dl ul.stats_icon li span + span {
	font-family: "IcoMoon";
	font-size: 120%;
	position: relative;
	top: 0;
	width: 1.5em;
}
dl ul.stats_icon li.votes span + span {
	top: -1px;
}

/* Protection par mot de passe */
#thumbs_cat dl.locked dt a span {
	display: flex;
	position: relative;
	width: 100%;
	padding-top: 72%;
}
#thumbs_cat.portrait dl.locked dt a span {
	padding-top: 150%;
}
#thumbs_cat.square dl.locked dt a span {
	padding-top: 100%;
}
#thumbs_cat dl.locked dt a span::before {
	content: '\e92e';
	font-family: "IcoMoon";
	font-size: 300%;
	color: #555;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
#thumbs_cat.large dl.locked dt a span::before {
	font-size: 400%;
}
#thumbs_cat dl.locked dt a:hover span::before {
	color: var(--color);
}
#thumbs_cat dl.unlocked dt a::before {
	content: '\e94e';
	font-family: "IcoMoon";
	font-size: 150%;
	background: white;
	color: #333;
	position: absolute;
	bottom: 20px;
	left: 20px;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	opacity: 0.8;
}



/**
 * Vignettes de fichiers.
 *
 */
.thumbs_items {
	margin: 10px -8px 0;
	display: flex;
	flex-wrap: wrap;
}
.thumbs_items dl {
	position: relative;
	margin: 10px auto;
	width: calc(100% - 10px);
	width: 100%;
}
.thumbs_items.standard dl {
	max-width: 151px;
}
.thumbs_items:is(.landscape, .portrait, .square) dl {
	max-width: 161px;
}

/* Image */
.thumbs_items dt {
	position: relative;
}
.thumbs_items dt a {
	display: flex;
	border: 0;
	margin: 0;
	align-items: center;
	justify-content: center;
	padding-top: 100%;
	width: 100%;
	background: white;
}
#gallery .thumbs_items dt a:focus-visible {
	outline-offset: 0;
}
.thumbs_items.small.landscape dt a {
	padding-top: 66.46%;
}
.thumbs_items.large.landscape dt a {
	padding-top: 66.53%;
}
.thumbs_items.superlarge.landscape dt a {
	padding-top: 66.66%;
}
.thumbs_items:is(.square, .standard) dt a {
	padding-top: 100%;
}
.thumbs_items.small.portrait dt a {
	padding-top: 149.69%;
}
.thumbs_items.large.portrait dt a {
	padding-top: 149.59%;
}
.thumbs_items.superlarge.portrait dt a {
	padding-top: 149.73%;
}
.thumbs_items dt a img {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.thumbs_items.standard dt a img {
	max-height: 151px;
	max-width: 151px;
}
.thumbs_items:is(.landscape, .portrait, .square) dt a img {
	max-width: 161px;
}
.thumbs_items.standard dt a {
	outline: 1px solid silver;
}
.thumbs_items.standard dt a:hover {
	outline: 1px solid var(--color);
}

/* Taille : grande */
.thumbs_items.large.standard dl {
	max-width: 238px;
}
.thumbs_items.large:is(.landscape, .portrait, .square) dl {
	max-width: 248px;
}
.thumbs_items.large.standard dt a img {
	max-height: 238px;
	max-width: 238px;
}
.thumbs_items.large:is(.landscape, .portrait, .square) dt a img {
	max-width: 248px;
}

/* Taille : très grande */
.thumbs_items.superlarge.standard dl {
	max-width: 325px;
}
.thumbs_items.superlarge:is(.landscape, .portrait, .square) dl {
	max-width: 335px;
}
.thumbs_items.superlarge.standard dt a img {
	max-height: 325px;
	max-width: 325px;
}
.thumbs_items.superlarge:is(.landscape, .portrait, .square) dt a img {
	max-width: 335px;
}

/* Fichiers récents */
.thumbs_items dt span.new {
	position: absolute;
	top: -2px;
	left: 2px;
	padding: 6px;
	font-weight: normal;
	margin: 0;
	border: 0;
	color: white;
	z-index: 1;
	font-size: 80%;
}
.thumbs_items dt span.new::after {
	z-index: -1;
	position: absolute;
	content: '';
	background: var(--color);
	width: calc(100% + 10px);
	height: 100%;
	top: 0;
	left: -5px;
	transform: rotate(-6deg);
}

/* Sélection. */
#gallery .thumbs_items.selectable dl.selected dt a {
	outline: 2px solid var(--color);
}
.thumbs_items dt .selection_icon {
	font-family: "IcoMoon";
	position: absolute;
	font-size: 120%;
	width: 2.7em;
	height: 2.7em;
	display: none;
	padding: 2px 2px 0 0;
	align-items: center;
	justify-content: center;
	bottom: 0;
	left: 0;
	color: white;
	background: var(--color);
	border-radius: 0 50% 0 0;
	opacity: 0.5;
	cursor: pointer;
}
.thumbs_items.selection_max dl:not(.selected) .selection_icon {
	cursor: not-allowed;
}
.thumbs_items.selectable :is(dt:hover, dl.selected) .selection_icon {
	display: flex;
}
.thumbs_items.selectable dt .selection_icon:hover,
.thumbs_items.selectable dl.selected .selection_icon {
	opacity: 1;
}

/* Titre */
.thumbs_items dd span.title {
	display: block;
	margin: 5px 0 2px;
	padding: 2px;
	overflow: hidden;
	line-height: 1.45em;
	max-height: 5.8em;
	text-align: center;
}
.thumbs_items dd span.title a {
	border: 0;
	padding: 5px 0 0;
	font-weight: bold;
	color: #333;
}
.thumbs_items[class*="large"] dd span.title {
	line-height: 1.7em;
	max-height: calc(6.8em + 3px);
}
.thumbs_items[class*="large"] dd span.title a {
	font-size: 110%;
}
.thumbs_items dd span.title a:hover {
	border-bottom: 2px solid gray;
}
#gallery .thumbs_items .title a:focus-visible {
	outline: none;
}
.thumbs_items .title:has(a:focus-visible) {
	outline: 2px solid var(--focus-visible-color);
	outline-offset: 0;
}

/* Type de fichier : vidéo */
.thumbs_items dl.video dt a {
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Durée */
.thumbs_items .duration {
	position: absolute;
	z-index: 1;
	bottom: 10px;
	right: 8px;
	display: flex;
	align-items: center;
	padding: 3px 5px;
	background: #222;
	color: #fff;
	font-size: 100%;
}
.thumbs_items[class*="large"] .duration {
	padding: 4px 6px;
	font-size: 105%;
}
.thumbs_items.superlarge .duration {
	font-size: 110%;
}

/* Stats */
.thumbs_items ul.stats li {
	text-align: center;
	font-weight: normal;
	color: #333;
	font-size: 85%;
	margin-bottom: 5px;
}
.thumbs_items:not(.small) ul.stats li {
	font-size: 100%;
}

/* Stats en icônes */
.thumbs_items dl ul.stats_icon {
	top: 0;
	right: 0;
	height: 100%;
}
.thumbs_items.small.landscape dl ul.stats_icon {
	display: none;
}



/**
 * Page des images & vidéos.
 *
 */
#item {
	margin: 0 0 0 -8px;
	width: calc(100% + 16px);
	background: #111;
	min-height: 100px;
	position: relative;
}
#item_container,
#item_link {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
#item img {
	max-width: 100%;
	max-height: 700px;
}
#item img:not([data-type="image/jpeg"]) {
	background: white;
}
#item video {
	width: 100%;
	max-height: 700px;
	background: black;
}
#item_link {
	position: relative;
	overflow: hidden;
	border: 0;
	padding: 0;
	margin: 0;
}
#item_container.viewer,
#item_container.viewer #item_link {
	cursor: zoom-in;
}
#item_container.large img {
	max-height: none!important;
}
#item_container.viewer.large,
#item_container.viewer.large #item_link {
	cursor: zoom-out;
}
#item_link::after {
	position: absolute;
	content: '';
	background: #fff;
	opacity: 0;
	width: 200%;
	height: 200%;
	top: 0;
	left: 0;
}
#item_title {
	display: none;
	font-size: 120%;
	font-weight: bold;
	color: #333;
	overflow: hidden;
	margin: 15px auto 20px;
	max-width: 650px;
	text-align: center;
}
#item_title.show {
	display: block;
}
#item_description {
	margin: 0 auto 40px;
}

/* Favori et sélection. */
#item.favorite::after,
#item.selection::before {
	font-family: "IcoMoon";
	position: absolute;
	right: 12px;
	top: 12px;
	color: white;
	background: var(--color);
	z-index: 1;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0.9;
}
#item.favorite::after {
	content: '\e910';
	font-size: 150%;
}
#item.selection::before {
	content: '\ea52';
	font-size: 130%;
}
#item.favorite.selection::before {
	top: 64px;
}

/* Listes */
#item_columns ul li {
	margin: 5px 0;
}
#item_columns ul li span {
	font-weight: bold;
	color: #333;
}

/* Colonnes */
#item_columns {
	margin-top: 50px;
}
#item_columns > div > div > div {
	margin-bottom: 40px;
}
#item_left > div:last-child {
	margin-bottom: 0;
}
#item_left,
#item_right {
	margin: 0 auto;
	max-width: 530px;
}
#item_exif,
#item_iptc,
#item_xmp {
	word-break: break-word;
	overflow-wrap: break-word;
}
#item_xmp h3.icon span {
	font-size: 150%;
}

/* Statistiques */
#item_stats {
	display: none;
	justify-content: center;
	order: 1;
	margin: 0 -8px;
	padding: 6px 8px;
	background: #333;
}
#item_stats.show {
	display: flex;
}
#item_stats li {
	margin: 0 10px;
	font-size: 120%;
	color: white;
	display: flex;
	align-items: center;
}
#item_stats span:last-child {
	font-family: "IcoMoon";
	margin-left: 8px;
}

/* Tags */
#item_tags ul li {
	display: inline-block;
	margin: 7px 10px 7px 0;
}
#item_tags ul li a {
	display: inline-block;
	padding: 6px 8px;
	border: 0;
	border-radius: 6px;
	font-size: 110%;
	border: 1px solid silver;
	margin: 0;
}
#item_tags ul li a:hover {
	border-color: gray;
}

/* Description */
#item_columns .object_desc {
	margin: 0;
}

/* Utilisateur et propriétés */
#item_user,
#item_properties {
	display: none;
}
#item_user.show,
#item_properties.show {
	display: block;
}
#item_user div {
	display: flex;
	align-items: center;
}
#item_user_avatar {
	margin-right: 10px;
}
#item_user_avatar > a {
	border: 0;
	margin: 0;
	display: inline-block;
}
#item_user_avatar img {
	object-fit: cover;
	margin: 0;
	border-radius: 50%;
	background: #eee;
	width: 50px;
	height: 50px;
}
#item_user div > p {
	line-height: 1.8em;
}
#item_user_login,
#item_user_login a {
	font-weight: bold;
	color: var(--color);
	text-decoration-color: var(--color);
}

/* Pagination */
#item_prev,
#item_next {
	display: none;
}

/* Votes */
#item_rating h3:not(.icon) {
	color: #555;
	margin-bottom: 10px;
}
#item_rating .message_info {
	margin-top: 35px;
	padding-bottom: 10px;
}
#item_note {
	margin-top: 5px;
	margin-bottom: 30px;
}
#item_note .rating {
	position: relative;
	top: 2px;
	font-family: "IcoMoon";
	font-weight: bold;
	font-size: 160%;
	color: #555;
}
#item_user_note {
	height: 48px;
	display: flex;
	align-items: center;
}
#item_user_note > span {
	font-size: 220%;
	margin-left: -5px;
	font-family: "IcoMoon";
	cursor: pointer;
}
#item_user_note .rating {
	margin: 0 5px;
	border: 0;
	padding: 0;
	color: var(--color);
	outline: none;
}
#item_user_note_delete {
	position: relative;
	top: 2px;
	margin: 0 0 0 20px;
	border: 0;
	padding: 0;
	font-family: "IcoMoon";
	color: var(--color);
	font-size: 320%;
	outline-offset: 0;
}
#item_user_note_delete.hidden {
	visibility: hidden;
}



/**
 * Page des images & vidéos : commentaires.
 *
 */
#item_no_comment {
	margin-bottom: 50px;
}
#item_comments {
	max-width: 500px;
}
#item_comments #rss {
	margin: 0;
}
#item_comments .message_info {
	margin-top: 60px;
}
#comment-form {
	top: -10px;
	position: relative;
}

/* Formulaire. */
#item_comments_add {
	margin-top: 60px;
}
#item_comments_add form {
	max-width: 100%;
}
#item_comments_add input {
	max-width: 300px;
}
#item_comments_add textarea {
	max-width: 500px;
}
#item_comments_add h3 {
	color: #555;
	margin-bottom: 20px;
	padding-bottom: 3px;
	border-bottom: 1px solid silver;
}
#item_comments_add .message_info {
	margin-top: 25px;
	margin-bottom: 20px;
}
#item_comments_add #submit {
	display: flex;
	flex-direction: column;
}
#item_comments_add #submit p:first-child {
	order: 2;
}
#item_comments_add #submit p:last-child {
	order: 1;
}
#item_comment_remember {
	margin-bottom: 20px;
}
#comment_preview {
	background: var(--color);
	color: white;
	padding: 6px 10px;
	margin-top: 20px;
	position: relative;
}
#comment_preview::after {
	content: '';
	position: absolute;
	bottom: -24px;
	left: calc(50% - 12px);
	display: block;
	border: 10px solid transparent;
	border-width: 12px 12px;
	border-top-color: var(--color);
}

/* Émojis. */
#item_comment_emoji_link {
	float: right;
	display: inline-block;
	border: 0;
	padding: 0;
	margin: 0 15px 0 0;
}
#item_comment_emoji_link span {
	font-size: 130%;
}
#box_emoji .box_content {
	padding: 10px 10px 0;
}
#box_emoji .box_content .emoji {
	border: 0;
	padding: 0;
	margin: 5px;
	font-size: 200%;
	display: inline-flex;
	justify-content: center;
	width: 1.2em;
	height: 1.2em;
}
#box_emoji .box_menu a {
	height: auto;
	padding: 10px;
	font-size: 200%;
}
#box_emoji .box_menu span {
	margin: 0;
	padding: 0;
}



/**
 * Commentaires.
 *
 */
.comment {
	padding-top: 10px;
	margin: 20px 0 40px;
}

/* Image. */
.comment_avatar {
	margin-right: 12px;
}
.comment_avatar a {
	display: block;
	border: 0;
	margin: 0;
}
.comment_avatar img {
	width: 50px;
	height: 50px;
	object-fit: cover;
	border-radius: 50%;
	background: #eee;
}

/* Partie supérieure. */
.comment_top {
	padding-bottom: 5px;
	border-bottom: 1px solid silver;
	display: flex;
}
.comment_infos {
	display: flex;
	flex: 1;
	flex-direction: column;
	justify-content: center;
}
.comment_infos > div {
	display: flex;
}
.comment_infos > div > p:first-child {
	flex: 1;
}

/* Auteur et date. */
.comment_author {
	padding-bottom: 10px;
}
.comment_name {
	font-weight: bold;
	font-size: 120%;
}
.comment_name,
.comment_name a {
	color: var(--color);
	border-color: var(--color);
}
.comment_author,
.comment_date {
	overflow: hidden;
	white-space: nowrap;
	width: 0;
}
.comment_author:has(a:focus-visible) {
	overflow: visible;
}
.comment_date > span:first-child {
	display: none;
}
.comment_edit,
.comment_num {
	margin-left: 15px;
}
.comment_website {
	display: none;
}

/* Icône d'édition. */
.comment_edit a {
	font-family: "IcoMoon";
	font-size: 130%;
	color: #555;
	border: 0;
	margin: 0;
	padding: 0;
}
.comment_edit a:hover {
	color: #000;
}

/* Message */
.comment_message {
	margin-top: 10px;
	line-height: 1.6em;
	word-break: break-word;
	overflow-wrap: break-word;
}
.comment_message .emoji {
	font-size: 130%;
}



/**
 * Page des commentaires.
 *
 */
#page_comments {
	max-width: 700px;
	margin: 0 auto;
}
#page_comments .comment {
	margin: 0 0 20px;
}
#page_comments .comment_thumb {
	margin-right: 12px;
	margin-bottom: -1px;
}
#page_comments .comment_thumb a {
	display: flex;
	justify-content: center;
	margin: 0;
	padding: 5px;
	width: 54px;
	height: 54px;
	border: 1px solid transparent;
	border-right: 1px solid silver;
	border-bottom: 1px solid silver;
	position: relative;
}
#page_comments .comment_thumb a:focus-visible {
	outline-offset: -1px;
}
#page_comments .comment_thumb img {
	width: 100%;
	object-fit: contain;
}
#page_comments .comment_thumb.video a::after {
	content: '';
	width: 28px;
	height: 28px;
	position: absolute;
	top: 18px;
	left: 18px;
	background: white;
	border-radius: 50%;
	opacity: 0.7;
}
#page_comments .comment_thumb.video a::before {
	content: '\ea1c';
	font-family: "IcoMoon";
	font-size: 110%;
	color: black;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	position: absolute;
	top: 18px;
	left: 19px;
	z-index: 1;
	opacity: 0.7;
}
#page_comments .comment_thumb.video a:hover::after,
#page_comments .comment_thumb.video a:hover::before {
	opacity: 0;
}
#page_comments .comment_top {
	padding: 0;
	border: 0;
}
#page_comments .comment_infos > div {
	margin-right: 10px;
}
#page_comments .comment_author {
	padding-bottom: 15px;
}
#page_comments .comment_message {
	border-top: 1px solid silver;
	padding: 10px 10px 10px 5px;
	margin: 0;
}
#page_comments .comment_message .emoji {
	font-size: 130%;
}
@media (min-width: 800px) {
	#page_comments .comment_thumb a {
		width: 70px;
		height: 70px;
	}
	#page_comments .comment_thumb.video a::after {
		width: 30px;
		height: 30px;
		top: 25px;
		left: 25px;
	}
	#page_comments .comment_thumb.video a::before {
		width: 30px;
		height: 30px;
		top: 25px;
		left: 26px;
		font-size: 125%;
	}
	#page_comments .comment_author {
		padding-bottom: 20px;
	}
}



/**
 * Moteur de recherche.
 *
 */
#search_query {
	width: 100%;
	max-width: calc(100% - 10px);
}
#search_date_start {
	margin-bottom: 0;
}
#search_date_end {
	margin-top: 0;
}
#search_query_container span {
	display: flex;
	align-items: center;
}
#search_query_container label {
	flex: 1;
}
#search_query_container a,
#search_query_container a:hover {
	font-family: "IcoMoon";
	font-size: 130%;
	padding: 0;
	border: 0;
	margin: 0;
	color: #555;
}
#search_query_container a:hover {
	color: #111;
}
#search_options {
	margin: 30px 0 20px;
}
#search_options input:is([type="checkbox"], [type="radio"]) + label {
	margin-right: 15px;
}
#search_options select:first-child {
	margin-bottom: 15px;
}
#search_page input[type="text"]:not(.large) {
	width: 4em;
}
#search_page input[type="number"] {
	margin-bottom: 8px;
}
#search_page input[type="submit"] {
	margin-top: 20px;
}
#search_options_link {
	display: none;
	align-items: center;
	margin: 30px 0 20px;
}
#search_options_link a {
	border: 0;
	margin: 0;
	font-size: 130%;
	color: #333;
	display: flex;
	align-items: center;
}
#search_options_link span {
	font-family: "IcoMoon";
	font-size: 100%;
	margin: 1px 8px 0 0;
}
#search_options_link :is(a:hover, span) {
	color: var(--color);
}
#search_infos span {
	display: block;
	margin: 0 0 10px 1.3em;
	max-width: 42em;
	position: relative;
}
#search_infos span::before {
	content: '\f105';
	font-family: "IcoMoon";
	font-size: 155%;
	top: -1px;
	left: -0.8em;
	color: #555;
	margin-right: 0.5em;
	position: absolute;
}



/**
 * Géolocalisation.
 *
 */
#worldmap {
	z-index: 0;
}
#worldmap *:not(#popup_thumbs) a,
#worldmap *:not(#popup_thumbs) a:hover {
	border: none;
	margin: 0;
}

/* Popup */
#worldmap .leaflet-popup-close-button {
	display: none;
}
#worldmap .leaflet-popup-content-wrapper {
	border-radius: 0;
}
#worldmap .leaflet-popup-content {
	margin: 0;
}
#popup_thumbs :is(#thumbs_cat, .thumbs_items) {
	margin: 5px 4px 5px 5px;
	font-size: 110%;
}
#popup_thumbs .thumbs_items dl,
#popup_thumbs #thumbs_cat dl {
	margin: 0;
	display: none;
}
#popup_thumbs #thumbs_cat dl a {
	border: 1px solid silver;
}
#popup_thumbs #thumbs_cat dl a:hover {
	border: 1px solid var(--color);
}
#popup_thumbs .thumbs_items dd,
#popup_thumbs #thumbs_cat dd {
	padding-top: 5px;
	overflow: hidden;
}
#popup_thumbs dl#popup_1 {
	display: block;
}
#popup_thumbs .thumbs_items dl,
#popup_thumbs .thumbs_items dd {
	width: 110px;
}
#popup_thumbs #thumbs_cat dt img {
	width: 100px;
	height: auto;
	min-height: auto;
}
#popup_thumbs #thumbs_cat dl,
#popup_thumbs #thumbs_cat dd {
	width: 130px;
}
#popup_thumbs #thumbs_cat dt img {
	width: 120px;
	height: auto;
	min-height: auto;
}
#popup_thumbs #thumbs_cat dd {
	margin: 0 1px;
}

/* Popup : pagination */
#popup_thumbs #thumbs_pagination {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: .8em;
	position: relative;
	text-align: center;
	max-width: 150px;
	margin: 5px auto 10px;
	color: #333;
}
#popup_thumbs #thumbs_pagination span {
	font-size: 130%;
}
#popup_thumbs #thumbs_pagination a {
	font-family: "IcoMoon";
	font-size: 130%;
	cursor: pointer;
	color: #999;
	display: inline-block;
	padding: 0;
	border: 0;
}
#popup_thumbs #thumbs_pagination a:hover {
	color: #777;
}
#popup_thumbs #thumbs_pagination_prev {
	visibility: hidden;
	float: left;
	margin-left: 15px;
}
#popup_thumbs #thumbs_pagination_next {
	float: right;
	margin-right: 15px;
}

/* Carte du monde */
#section_worldmap #worldmap {
	height: 400px;
}

/* Page des photos */
.js #item_geolocation #worldmap {
	text-align: left;
	height: 300px;
	margin-bottom: 15px;
}
.js #gallery[class*="large"] #item_geolocation #worldmap {
	height: 350px;
}



/**
 * Pages des membres.
 *
 */
#member_page_content {
	max-width: 600px;
	margin: 0 auto;
}
#member_page_edit {
	width: 100%;
	min-width: 100%;
	max-width: 100%;
}

/* Menu : icônes */
#member_menu {
	display: flex;
	margin: 0 auto;
	justify-content: center;
	flex-wrap: wrap;
}
#member_menu li {
	margin: 10px 5px;
}
#member_menu a {
	display: inline-block;
	border: 0;
	margin: 0;
	white-space: nowrap;
}
#member_menu span + span {
	display: none;
}
.member_menu_icon {
	font-family: "IcoMoon";
	font-size: 180%;
	color: #555;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
}
#member_menu li.current .member_menu_icon {
	background: var(--color);
	border-radius: 50%;
	color: white;
}
#member_menu_admin .member_menu_icon,
#member_menu_avatar .member_menu_icon {
	font-size: 200%;
}
#member_menu_upload .member_menu_icon {
	padding-left: 2px;
	width: 42px;
	font-size: 190%;
}

/* Nom d'utilisateur et description */
#member_page h2 {
	margin: 5px 0 15px;
	padding: 0 0 5px;
	font-size: 100%;
	font-weight: normal;
	text-align: center;
}
#member_page h2 > a {
	font-weight: bold;
	font-size: 180%;
	color: var(--color);
	border: 0;
}
#member_page h2 span:not(#member_page_admin) {
	font-size: 125%;
	margin-top: 8px;
	display: block;
}
#member_page h2 span:not(#member_page_admin),
#member_page h2 span a {
	color: #444;
}
#member_page_description {
	margin: 15px auto;
	left: -15px;
	position: relative;
	width: calc(100% - 7px);
	padding: 15px;
	border: 1px solid silver;
	border-width: 1px 0;
}
#member_page_description > span {
	display: block;
	max-width: 600px;
	font-size: 110%;
	line-height: 1.5em;
}
#member_page_description .emoji {
	font-size: 130%;
}

/* Titres */
#member_page_content h3 {
	font-size: 140%;
	margin: 15px 0 30px;
	justify-content: center;
	text-align: center;
}

/* Listes */
#member_page_content li {
	margin-bottom: 15px;
}
#member_page_content li span {
	font-weight: bold;
	display: block;
	margin-bottom: 5px;
	color: #333;
}

/* Formulaires */
#member_page form.standard {
	max-width: 400px;
}

/* Page de profil */
#member_page_profile {
	margin-top: 20px;
}
#member_page_stats {
	margin-top: 40px;
}
#member_page_avatar img {
	margin: 0 auto 40px;
	max-width: 250px;
	background: #eee;
}
#member_page_stats .link_number > * {
	display: inline-block;
	margin: 0;
	border: 0;
	font-size: 100%;
	padding: 10px 12px;
	color: white;
}
#member_page_stats .link_number a {
	background: var(--color);
}
#member_page_stats .link_number span {
	background: #555;
}

/* Édition de l'avatar */
#member_page_edit_avatar h4 {
	margin: 50px 0 15px;
	color: #333;
	font-weight: bold;
	font-size: 110%;
}
#member_page_edit_avatar img {
	margin: 15px auto 0;
	max-width: 100%;
	background: #eee;
}



/**
 * Historique.
 *
 */
#history_type {
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	margin: 20px 0 30px;
}
#history_type a {
	font-size: 120%;
	border: 1px solid silver;
	display: inline-block;
	margin: 10px;
	padding: 10px 15px;
	text-align: center;
}
#history_type a:hover {
	border-color: #888;
}
#gallery #history_type a.current {
	color: white;
	background: var(--color);
	border-color: var(--color);
}
#history_current {
	text-align: center;
	font-size: 150%;
	margin: 0 0 40px;
	color: #555;
}
#history {
	position: relative;
	margin: 0 auto 20px;
	padding: 0;
	width: 95%;
}
#history::before {
	content: '';
	position: absolute;
	display: block;
	width: calc(50% - 1.5px);
	height: 100%;
	border-right: 3px solid #ddd;
}
#history > div {
	position: relative;
	display: flex;
	flex-direction: column;
	width: 50%;
	padding-bottom: 40px;
}
#history .history_count {
	line-height: 1.6em;
}
#history > div:nth-child(odd) {
	left: -11.5px;
	margin-right: auto;
	padding-right: 10px;
	text-align: right;
}
#history > div:nth-child(odd) > * {
	margin-left: auto;
}
#history > div:nth-child(even) {
	left: 11.5px;
	margin-left: auto;
	padding-left: 10px;
}
#history > div:nth-child(even) > * {
	margin-right: auto;
}
#history > div:first-child {
	padding-top: 30px;
}
#history > div:last-child {
	padding-bottom: 30px;
}
.history_date {
	font-size: 140%;
}
.history_date,
.history_date a {
	color: #555;
}
#history .history_thumb {
	margin: 15px 0 8px;
	border: 0;
	background: #fafafa;
}
#history .history_thumb img {
	max-width: 140px;
	max-height: 140px;
}
@media (min-width: 600px) {
	#history_type {
		flex-direction: row;
	}
	#history_type p {
		width: 50%;
		display: flex;
	}
	#history > div:nth-child(odd) {
		left: -16.5px;
		padding-right: 15px;
	}
	#history > div:nth-child(even) {
		left: 16.5px;
		padding-left: 15px;
	}
	#history_type > p:first-child {
		justify-content: flex-end;
	}
	#history .history_thumb img {
		max-width: 200px;
		max-height: 200px;
	}
}



/**
 * Envoi de fichiers.
 *
 */
#upload {
	margin-top: 20px;
	max-width: 575px;
}
.upload_limits {
	margin: 10px 0;
	line-height: 1.5em;
}

/* Liste des fichiers */
#upload_list {
	outline: 1px solid silver;
	overflow-y: scroll;
	height: 183px;
	background: white;
}
#upload_list.dragover {
	outline: 3px dashed #69A644;
	border-color: transparent;
}
#upload_list.dragleave {
	border-color: silver;
}
#upload_startmsg {
	color: #bbb;
	font-size: 150%;
	margin: auto;
	text-align: center;
	position: relative;
	top: 50%;
	transform: translateY(-50%);
}

/* Fichier */
#upload_list .upload_file {
	border-left: 4px solid #FCFCFC;
	border-bottom: 1px solid #ddd;
	background: #FCFCFC;
	height: 60px;
	overflow: hidden;
}
#upload_list .upload_file_infos {
	display: flex;
	padding: 10px 15px 0 10px;
	height: 20px;
}
#upload_list .upload_file_progress {
	display: flex;
	align-items: center;
	padding: 0 15px 5px 10px;
	height: 25px;
}
#upload_list .upload_file_name {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	flex: 1;
	width: 0;
}
#upload_list .upload_file_size {
	overflow: hidden;
	white-space: nowrap;
	width: 7em;
	text-align: right;
}
#upload_list .upload_file_progress p {
	position: relative;
	padding-left: 24px;
	font-weight: bold;
}
#upload_list .upload_file_progress p::before {
	top: -4px;
	left: 0;
	position: absolute;
	font-family: "IcoMoon";
	font-size: 150%;
}
#upload_list .upload_file_progress > div {
	border: 1px solid silver;
	flex: 1;
}
#upload_list .upload_file_progress div div {
	height: 4px;
	background: #385074;
	width: 0%;
}
#upload_list .upload_file_delete {
	float: right;
	margin: 7px 11px 0 0;
	height: 22px;
	width: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	padding: 0;
	position: relative;
}
#upload_list .upload_file_delete::before {
	content: '\e916';
	position: absolute;
	font-family: "IcoMoon";
	font-size: 160%;
}

/* Fichier : non autorisé */
#upload_list .upload_file_warning {
	background: #F0F0F0;
	border-left-color: #CB9225;
}
#upload_list .upload_file_warning .upload_file_progress p {
	color: #BC8722;
}
#upload_list .upload_file_warning .upload_file_progress p::before {
	content: '\f06a';
}
#upload_list .upload_file_warning .upload_file_thumb {
	display: none;
}

/* Fichier : échec de l'envoi */
#upload_list .upload_file_error {
	background: #F0F0F0;
	border-left-color: #D60E0E;
}
#upload_list .upload_file_error .upload_file_progress p {
	color: #D60E0E;
}
#upload_list .upload_file_error .upload_file_progress p::before {
	content: '\f06a';
}

/* Fichier : envoi réussi */
#upload_list .upload_file_success {
	border-left-color: #739C2C;
}
#upload_list .upload_file_success .upload_file_progress p {
	color: #648F27;
}
#upload_list .upload_file_success .upload_file_progress p::before {
	content: '\e905';
}

/* Informations générales */
#upload_infos {
	margin: 10px 0 15px;
}
#upload_infos_total {
	margin-bottom: 5px;
}

/* Catégories */
#list_categories {
	padding: 6px 0 10px;
}
#list_categories_msg {
	line-height: 2em;
}
#select_path {
	margin: 0 0 30px;
	line-height: 1.5em;
}
#select_path::before {
	top: 1px;
}
@-moz-document url-prefix() {
	#select_path::before {
		top: .2em;
	}
}
#list_categories select {
	margin-bottom: 5px;
	min-width: 90%;
	max-width: 90%;
}
#list_categories option:first-child {
	font-weight: bold;
}
#new_cat_form #list_categories {
	padding: 6px 0 4px;
}
#new_cat_form #list_categories :is(select, textarea) {
	margin: 0;
	width: calc(95% + 10px);
	min-width: auto;
	max-width: calc(30em + 10px);
}
#new_cat_form #list_categories textarea {
	max-width: calc(38em + 10px);
}



/**
 * Page des membres.
 *
 */
#members_list table img {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	object-fit: cover;
}
#members_list :is(.date_created, .date_lastvisited) {
	display: none;
}
#members_list .avatar a {
	display: block;
	border: 0;
	margin: 0;
}



/**
 * Flux RSS.
 *
 */
#rss {
	text-align: right;
	margin: 20px 10px 0;
}
#rss li {
	display: inline-block;
	margin: 20px 0 0 15px;
}
#rss a {
	border: 0;
	margin: 0;
}
#rss span:first-child {
	font-family: "IcoMoon";
	font-size: 130%;
	color: var(--color);
	top: 3px;
	position: relative;
	margin-right: 2px;
}
#rss span:last-child {
	border-bottom: 1px solid gray;
	margin-bottom: 1px;
}
#rss a:hover span:last-child {
	border-width: 2px;
	margin-bottom: 0;
}

/* Page des fichiers */
#item_columns #rss {
	margin-top: 50px;
}
#item_columns #rss a span {
	font-weight: normal;
}



/**
 * Tags de catégories.
 *
 */
#bottom_tags > a {
	margin-top: 25px;
	display: inline-block;
}
#cat_tags li {
	display: inline-block;
	margin: 10px 10px 10px 0;
}
#cat_tags li a {
	font-size: 120%;
	border-width: 0;
	color: var(--color);
}
#cat_tags li a:hover {
	border-bottom: 2px solid var(--color);
}
#cat_tags .w1 { font-size: 100% }
#cat_tags .w2 { font-size: 110%; }
#cat_tags .w3 { font-size: 120%; }
#cat_tags .w4 { font-size: 130%; }
#cat_tags .w5 { font-size: 140%; }
#cat_tags .w6 { font-size: 150%; }
#cat_tags .w7 { font-size: 160%; }
#cat_tags .w8 { font-size: 170%; }
#cat_tags .w9 { font-size: 180%; }
#cat_tags .w10 { font-size: 190%; }

/* Page des tags. */
#section_tags #cat_tags li {
	margin: 10px;
	line-height: 1.7em;
}



/**
 * Bas de page.
 *
 */
#bottom {
	margin: 20px -8px 0;
	padding: 20px 8px 10px;
	display: flex;
	flex-direction: column;
	overflow-wrap: anywhere;
}
body.bg #bottom {
	margin-top: 0;
	background: #fafafa;
	border-top: 2px solid #ddd;
}
#item_columns + #pages_bottom {
	margin-top: 60px;
}
#bottom > div {
	margin: 0 auto 40px;
	max-width: 520px;
	width: 100%;
}
#bottom > div:last-child {
	margin-bottom: 10px;
}
#bottom h3 {
	color: #555;
	font-weight: bold;
	font-size: 135%;
	margin-bottom: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Statistiques des catégories */
#bottom_stats li {
	display: inline-block;
	margin: 10px 5px;
	line-height: 1.5em;
}
#bottom_stats li.rating {
	font-family: "IcoMoon";
	font-size: 130%;
	color: var(--color);
}
#bottom_stats li .icon {
	font-family: "IcoMoon";
	font-size: 130%;
	border: 0;
	padding: 0;
	margin: 0 0 0 4px;
	position: relative;
	top: 3px;
	color: #555;
}
#bottom_stats li .icon:hover {
	color: var(--color);
}

/* Liens externes et utilisateurs en ligne */
#bottom_links > div,
#bottom_online > div {
	columns: auto 150px;
	margin: 20px 0 0 15px;
}
#bottom_links ul,
#bottom_online ul {
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid-column;
    display: table;
}
#bottom_links li,
#bottom_online li {
	list-style: square;
	color: var(--color);
	margin: 0 15px 15px 0;
	line-height: 1.5em;
}
#bottom_links a {
	padding-top: 5px;
}
:is(#bottom_links, #bottom_online) a:focus-visible {
	outline: none;
}
:is(#bottom_links, #bottom_online) li:has(a:focus-visible) {
	outline: 2px solid var(--focus-visible-color);
}

/* Au hasard */
#bottom #bottom_random {
	max-width: 100%;
}
#bottom_random h3 a {
	color: #555;
	font-family: "IcoMoon";
	border: none;
	padding: 0;
	margin: 0 0 0 10px;
}
#bottom_random h3 a.load {
	opacity: 0.25;
	cursor: default;
}
#bottom_random h3 a.finish {
	opacity: 1;
	cursor: default;
	transition: opacity 0.25s linear;
}
#bottom_random .thumbs_items {
	margin: 10px 0 0 0;
}
#bottom #bottom_random dl {
	margin: 7px auto 0;
}
#bottom_random .thumbs_items dd span.title {
	height: 1.45em;
	max-height: 1.45em;
}
#bottom_random .thumbs_items[class*="large"] dd span.title {
	height: 1.7em;
	max-height: 1.7em;
}



/**
 * Debug.
 *
 */
#debug .log {
	background: white;
	margin: 20px 0;
}



/**
 * Footer.
 *
 */
footer {
	margin: 20px auto 10px;
	padding-top: 10px;
	border-top: 1px solid #ddd;
}
body.bg footer {
	margin-top: 0;
}
footer p {
	text-align: center;
	color: #333;
	font-size: 90%;
	margin-bottom: 8px;
}
footer a,
footer a:hover {
	color: #333;
	border-color: #333;
	padding: 1px;
}
footer a:hover,
footer a:hover span {
	color: #333;
	border-color: #333;
}
#footer_text {
	margin: 0 0 10px;
}

/* Lien du menu des langues */
#footer_lang {
	display: flex;
	justify-content: center;
}
#footer_lang a {
	border: 0;
	display: flex;
	align-items: center;
	margin: 0 10px 0 0;
}
#footer_lang a:hover,
#footer_lang a:hover span {
	color: black;
}
#footer_lang a span {
	font-family: "IcoMoon";
	font-size: 170%;
	margin: -1px 5px 0 0;
}

/* Menu des langues */
#form_lang {
	display: none;
}
#lang_switch {
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	display: flex;
}
#lang_switch::before {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.5;
	z-index: 100;
}
#lang_switch ul {
	max-width: 800px;
	max-height: calc(100% - 30px);
	padding: 15px;
	background: white;
	z-index: 100;
	overflow: auto;
}
#lang_switch li {
	margin: 10px;
}
#lang_switch li a {
	padding: 10px;
	padding-right: 25px;
	border: 1px solid silver;
	margin: 0;
	display: flex;
	align-items: center;
	color: #000;
}
#lang_switch li a span {
	font-family: "Courier New", serif;
	margin: 0 5px;
	top: 1px;
	position: relative;
}
#lang_switch li a:hover {
	background: #eee;
}
#lang_switch li.current {
	outline: 2px solid var(--color);
}
#lang_switch li.current a {
	border-color: var(--color);
}



/**
 * Media queries : vignettes de catégories.
 *
 */
/* Taille : petite */
@media (min-width: 360px) {
	#thumbs_cat.small {
		margin: 10px -5px 0;
		max-width: 1016px;
	}
	#thumbs_cat.small dl {
		width: calc(50% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 515px) {
	#thumbs_cat.small dl {
		width: calc(33.3333% - 10px);
	}
}
@media (min-width: 768px) {
	#thumbs_cat.small dl {
		width: calc(25% - 10px);
	}
}
@media (min-width: 1020px) {
	#thumbs_cat.small {
		margin: 10px auto 0;
	}
}

/* Taille : grande */
@media (min-width: 360px) {
	#thumbs_cat.large {
		margin: 10px -5px 0;
		max-width: 1023px;
	}
	#thumbs_cat.large dl {
		width: calc(50% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 700px) {
	#thumbs_cat.large dl {
		width: calc(33.3333% - 10px);
	}
}
@media (min-width: 1020px) {
	#thumbs_cat.large {
		margin: 10px auto 0;
	}
}



/**
 * Media queries : vignettes de fichiers.
 *
 */
/* Taille : petite */
@media (min-width: 250px) {
	.thumbs_items.small {
		margin: 10px -5px 0;
		max-width: 1016px;
	}
	.thumbs_items.small dl {
		width: calc(50% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 325px) {
	.thumbs_items.small dl {
		width: calc(33.3333% - 10px);
	}
}
@media (min-width: 500px) {
	.thumbs_items.small dl {
		width: calc(25% - 10px);
	}
}
@media (min-width: 650px) {
	.thumbs_items.small.standard {
		margin: 10px auto 0;
		max-width: 680px;
	}
	.thumbs_items.small dl {
		width: calc(22%);
		margin: 10px 1.5%;
	}
}
@media (min-width: 750px) {
	.thumbs_items.small.standard {
		margin: 10px -8px 0;
		max-width: 1016px;
	}
	.thumbs_items.small dl {
		width: calc(16.6667% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 972px) {
	.thumbs_items.small,
	.thumbs_items.small.standard {
		margin: 10px auto 0;
	}
	.thumbs_items.small.standard dl {
		max-width: 161px;
	}
	.thumbs_items.small.standard dt a img {
		padding: 5px;
		width: calc(100% - 10px);
		height: calc(100% - 10px);
	}
}
@media (min-width: 1180px) {
	.thumbs_items.small,
	.thumbs_items.small.standard {
		margin: 10px -10px 20px;
		max-width: none;
		padding-left: 4px;
	}
	.thumbs_items.small dl {
		margin: 10px 7.5px;
	}
	.thumbs_items.small dt span.new {
		top: 0;
		padding: 8px;
		font-size: 90%;
	}
}

/* Taille : grande */
@media (min-width: 360px) {
	.thumbs_items.large {
		margin: 10px -5px 0;
		max-width: 1016px;
	}
	.thumbs_items.large dl {
		width: calc(50% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 502px) {
	.thumbs_items.large dl {
		width: calc(33.3333% - 10px);
	}
}
@media (min-width: 744px) {
	.thumbs_items.large {
		margin: 10px auto 0;
		max-width: 744px;
	}
}
@media (min-width: 850px) {
	.thumbs_items.large {
		max-width: 998px;
	}
	.thumbs_items.large dl {
		width: calc(25% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 972px) {
	.thumbs_items.large,
	.thumbs_items.large.standard {
		margin: 10px auto 0;
	}
	.thumbs_items.large.standard dl {
		max-width: 248px;
	}
	.thumbs_items.large.standard dt a img {
		padding: 5px;
		width: calc(100% - 10px);
		height: calc(100% - 10px);
	}
}
@media (min-width: 1180px) {
	.thumbs_items.large,
	.thumbs_items.large.standard {
		max-width: none;
		margin: 10px -17px 20px 0;
		padding-left: 1px;
	}
	.thumbs_items.large dl {
		margin: 10px 17px 10px 0;
	}
	.thumbs_items[class*="large"] dt span.new {
		top: 0;
		padding: 9px;
		font-size: 100%;
	}
	.thumbs_items.superlarge dt span.new {
		font-size: 110%;
	}
	.thumbs_items[class*="large"] dt .selection_icon {
		font-size: 130%;
		width: 3em;
		height: 3em;
	}
}

/* Taille : très grande */
@media (min-width: 360px) {
	.thumbs_items.superlarge {
		margin: 10px -5px 0;
		max-width: 687px;
	}
	.thumbs_items.superlarge dl {
		width: calc(50% - 10px);
		margin: 10px 5px;
	}
}
@media (min-width: 680px) {
	.thumbs_items.superlarge {
		margin: 10px auto 0;
		max-width: 1035px;
	}
	.thumbs_items.superlarge dl {
		width: calc(33.3333% - 10px);
	}
}
@media (min-width: 972px) {
	.thumbs_items.superlarge,
	.thumbs_items.superlarge.standard {
		margin: 10px auto 0;
	}
	.thumbs_items.superlarge.standard dl {
		max-width: 335px;
	}
	.thumbs_items.superlarge.standard dt a img {
		padding: 5px;
		width: calc(100% - 10px);
		height: calc(100% - 10px);
	}
}
@media (min-width: 1180px) {
	.thumbs_items.superlarge,
	.thumbs_items.superlarge.standard {
		max-width: none;
		margin: 10px -15px 0 3px;
	}
	.thumbs_items.superlarge dl {
		margin: 10px 17px 10px 0;
	}
}



/**
 * Media queries : écrans larges.
 *
 */
@media (min-width: 1180px) {
	/**
	 * Structure générale.
	 *
	 */
	body {
		overflow-x: hidden;
	}
	#gallery {
		margin: 0 auto;
		max-width: 1045px;
	}
	#content {
		padding: 0;
	}
	main.dark::before {
		display: none;
	}
	a:focus {
		outline: 1px dotted #808080;
	}



	/**
	 * Header.
	 *
	 */
	#gallery header {
		margin-bottom: 5px;
	}
	#header_top {
		height: auto;
		margin: 0 0 30px;
		padding: 0;
		border: 0;
		align-items: flex-start;
		box-shadow: none;
		background: none;
	}

	/* Changement du style. */
	#user_style_large {
		position: absolute;
		top: 15px;
		right: 15px;
		z-index: 1;
	}
	header.user #user_style_large {
		right: -40px;
	}
	#user_style_large.active {
		display: block;
	}
	#user_style_large a {
		font-family: "IcoMoon";
		font-size: 175%;
		color: #555;
		padding: 0;
		border: 0;
		margin: 0;
		background: hsla(255, 100%, 100%, 0.75);
		outline: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 40px;
		height: 40px;
	}
	#user_style_large a:focus-visible {
		outline-offset: 0;
	}
	header.user #user_style_large a {
		background: white;
	}
	#user_style_large a:hover {
		color: #333;
	}
	header.none #user_style_large {
		right: -50px;
	}

	/* Titre. */
	header h1 {
		font-size: 250%;
		margin: 15px auto;
	}
	header h1 a {
		color: #333;
	}
	header.user h1 {
		margin: 15px 0;
	}
	header.color h1 {
		margin: 10px 0;
	}

	/* Couleur. */
	header.color #header_top {
	   background: var(--color);
	   margin: 0 0 5px;
	}
	header.color #title a,
	header.color #user_menu {
		margin: 0 10px;
	}
	header.color #title a,
	header.color #user_links #user_menu a {
		color: white;
		border-color: white;
	}

	/* Bannière. */
	header.banner #title {
		overflow: visible;
		display: block;
		white-space: normal;
		margin-right: 200px;
	}
	header.banner h1 {
		border-left: 5px solid var(--color);
		padding: 0 15px;
		margin-left: -5px;
	}
	header.banner #header_top {
		margin: 0;
		height: var(--header-height);
		background-size: var(--banner-size);
		background-position: var(--banner-position);
		background-repeat: var(--banner-repeat);
		background-image: var(--banner-image);
		background-color: var(--banner-color);
	}
	header.banner #header_top h1 {
		padding: 5px 15px;
		background: hsla(255, 100%, 100%, 0.75);
	}

	/* Bannière : aucune texture ni fichier. */
	header:not(.banner) #user_links {
		margin: auto;
	}
	header:not(.banner):has(#user_style_large.active) #user_links {
		margin-right: calc(1.5em + 25px);
		padding-right: 15px;
	}
	header:not(.banner) #user_style_large.active {
		position: absolute;
		top: 0;
		right: 10px;
		height: 100%;
		margin: 0;
		padding: 0;
		display: flex;
		align-items: center;
		font-size: 110%;
	}
	header:not(.banner) #user_style_large a {
		background: none;
		color: white;
		border: 0;
	}

	/* Aucune bannière. */
	header.none #user_links {
		padding-right: 0;
	}
	header.none:has(#user_style_large.active) #user_links {
		margin-right: calc(1.5em + 8px);
	}
	header.none #user_style_large.active {
		right: -8px;
	}
	header.none #user_style_large a {
		color: #555;
	}

	/* Menu */
	#menu_link.show {
		display: none;
	}
	#menu nav {
		display: block !important;
		opacity: 1 !important;
		margin: 0 auto 20px;
		position: relative;
		top: 0;
		background: none;
		max-width: var(--menu-max-width);
	}
	#menu ul {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	#menu li,
	#menu li.icon {
		display: inline-block;
		margin: 0 8px 5px;
	}
	#menu li a {
		display: flex;
		border: 0;
		padding: 8px 8px 5px;
		font-size: 120%;
		text-transform: uppercase;
		color: #555;
		height: auto;
	}
	#menu li.current :is(a, a:hover) {
		margin-bottom: -2px;
		border-bottom: 2px solid var(--color);
		color: var(--color);
	}
	#menu li a:hover {
		color: #000;
		background: none;
	}
	#menu a::before {
		display: none;
	}

	/* Icônes. */
	#menu li.icon a {
		font-family: "IcoMoon";
		color: #555;
	}
	#menu li.icon {
		position: relative;
		display: flex;
		justify-content: center;
	}
	#menu li.icon::before {
		font-family: "IcoMoon";
		position: absolute;
		color: #555;
	}
	#menu li.icon:hover::before,
	#menu #menu_gallery.browse:hover::before {
		color: #000;
	}
	#menu li.icon.current::before,
	#menu li.icon.current:hover::before,
	#menu #menu_gallery.browse.current::before,
	#menu #menu_gallery.browse.current:hover::before {
		color: var(--color);
	}
	#menu li.icon a span {
		visibility: hidden;
		display: block;
	}

	/* Liste des catégories : icône */
	#menu #menu_gallery.browse {
		position: relative;
	}
	#menu #menu_gallery.browse a {
		padding-right: calc(1.25em + 8px);
	}
	#menu #menu_gallery.browse::before {
		content: '\f107';
		position: absolute;
		display: flex;
		align-items: center;
		justify-content: center;
		top: 0;
		right: 8px;
		height: 100%;
		width: 0.5em;
		font-family: "IcoMoon";
		font-size: 160%;
		color: #555;
		padding-top: 3px;
		box-sizing: border-box;
	}

	/* Home. */
	#menu li#menu_home_icon {
		display: none;
	}
	#menu li#menu_home_icon.show {
		display: flex;
	}
	#menu li#menu_home_icon::before {
		content: '\e906';
		font-size: 175%;
		bottom: 3px;
	}
	@-moz-document url-prefix() {
		#menu li#menu_home_icon::before
		{
			bottom: 1px;
		}
	}
	#menu li#menu_home_icon {
		top: -0.05em;
	}
	#menu li#menu_home_icon a span {
		margin: 0 2px;
	}

	/* Recherche. */
	#menu li#menu_search {
		display: none;
	}
	#menu li#menu_search_icon {
		top: -0.5px;
	}
	#menu li#menu_search_icon::before {
		content: '\e986';
		font-size: 120%;
		bottom: .4em;
	}
	@-moz-document url-prefix() {
		#menu li#menu_search_icon::before
		{
			bottom: .3em;
		}
	}

	/* Liens utilisateur. */
	#user_style_small {
		display: none;
	}
	#user_links {
		padding: 0 15px;
		margin-top: 15px;
	}
	#user_links img {
		width: 40px;
		height: 40px;
	}
	#user_links > a {
		display: none;
	}
	header.banner #user_links {
		background: hsla(255, 100%, 100%, 0.75);
	}
	#header_top #user_links ul {
		display: flex !important;
		align-items: center;
		position: relative;
		top: 0;
		right: 0;
		border: 0;
		margin: 0;
	}
	#user_links ul :is(a, a:hover) {
		display: inline;
		padding: 0;
		margin: 0;
		border: 0;
		background: none;
		border-bottom: 1px solid gray;
		margin-bottom: 1px;
		font-size: 100%;
	}
	#user_links ul a:hover {
		border-width: 2px;
		margin-bottom: 0;
	}
	#user_links ul::after,
	#user_links ul::before {
		display: none;
	}
	#user_links li#user_avatar {
		display: block;
		margin: 0 10px 0 0;
	}
	#user_links li#user_avatar a {
		display: block;
		margin: 0;
		border: 0;
	}
	#user_links li#user_avatar a:focus-visible {
		outline-offset: 0;
	}
	#user_links li:is(#user_login, #user_register) {
		margin-right: 10px;
	}
	#user_links li#user_login a {
		border-color: var(--color);
	}



	/**
	 * Contenu.
	 *
	 */
	#gallery_closed {
		max-width: 520px;
	}

	/* Description */
	.object_desc {
		margin: 20px 0 30px;
		max-width: var(--desc-max-width);
	}



	/**
	 * Tableaux.
	 *
	 */
	table.default td {
		padding: 10px;
	}
	



	/**
	 * Formulaires.
	 *
	 */
	.field_sublvl {
		margin-left: 20px;
		padding-left: 15px;
		border-left: 1px solid silver;
	}
	.js .button_file {
		max-width: 400px;
	}

	/* Bouton d'envoi. */
	input:is([type="reset"], [type="submit"]) {
		min-height: 26px;
	}

	/* Formulaire standard. */
	form.standard {
		padding: 0;
		margin-top: 10px;
	}
	form.standard .required label {
		padding-left: 0;
	}
	form.standard .required::before {
		left: -1.2em;
	}



	/**
	 * Fil d'Ariane et outils.
	 *
	 */
	#breadcrumb_tools nav {
		margin-right: 30px;
	}



	/**
	 * Viewer.
	 *
	 */
	#viewer {
		padding: 15px;
	}
	#viewer img {
		border: 5px solid white;
	}



	/**
	 * Liens de navigation entre les pages.
	 *
	 */
	#gallery #pages_top {
		display: block;
	}
	.pages form {
		display: block;
		margin: 0 10px;
	}
	.pages form input {
		width: 2.5em;
		height: 2.2em;
	}

	/* Liens. */
	#gallery .pages .link > * {
		height: 2.2em;
		width: 2.2em;
		margin: 0 5px;
	}

	/* Icônes. */
	.pages .link > *::after {
		font-size: 120%;
		font-weight: bold;
	}

	/* Page des fichiers. */
	#item_columns + #pages_bottom {
		margin-top: 30px;
	}



	/**
	 * Fil d'Ariane et outils.
	 *
	 */
	#breadcrumb_tools {
		display: flex;
	}
	#gallery #breadcrumb_tools #tools {
		top: 3px;
		margin: 0;
		text-align: left;
		display: flex;
		align-items: flex-end;
	}
	#tools li {
		margin: 0 0 0 13px;
	}
	#tools a {
		font-size: 180%;
		display: inline;
		height: auto;
	}
	#tools :is(#link_prev, #link_next) {
		display: none;
	}
	#tools #link_edit a {
		font-size: 150%;
	}
	#tools #link_delete a {
		font-size: 160%;
	}
	#tools #link_selection a {
		font-size: 150%;
		position: relative;
		top: -1px;
	}



	/**
	 * Boîtes flottantes.
	 *
	 */
	.box {
		width: 600px;
		min-width: 600px;
		max-width: 600px;
	}
	.box_page {
		box-shadow: 0 0 10px #555;
	}

	/* Édition du fichier. */
	#box_category .box,
	#box_item .box {
		width: 650px;
		min-width: 650px;
		max-width: 650px;
	}
	
	/* Console de connexion. */
	/* Mot de passe de catégorie. */
	#box_login .box,
	#box_password .box {
		width: 380px;
		min-width: 380px;
		max-width: 380px;
	}

	/* Émojis. */
	#item_comment_emoji_link {
		margin: 0;
	}
	#box_emoji .box {
		width: 800px;
		min-width: 800px;
		max-width: 800px;
	}



	/**
	 * Boîtes flottantes avec flèche.
	 *
	 */
	#user_menu {
		opacity: 1 !important;
	}
	.box_arrow:not(#user_menu) {
		display: none;
		position: absolute;
		right: 0;
		top: 40px;
		background: #fff;
		border: 1px solid #aaa;
		z-index: 100;
	}

	/* Flèche */
	.arrow_top,
	.arrow_top_border {
		content: '';
		position: absolute;
		top: -17px;
		left: 20px;
		display: block;
		border: 10px solid transparent;
		border-width: 0 10px 16px;
		border-bottom-color: #aaa;
	}
	.arrow_top {
		top: -15px;
		border-width: 0 10px 16px;
		border-bottom-color: white;
	}



	/**
	 * Liste des catégories.
	 *
	 */
	#browse_inner {
		overflow-x: hidden;
	}
	#browse ul {
		overflow-x: hidden;
		overflow-y: auto;
		max-height: 600px;
	}
	#browse[data-subcats="1"] li {
		display: none;
	}
	#browse[data-subcats="1"] li:is([id*=":0{"], [id*=":1{"]) {
		display: flex;
	}
	#browse a {
		display: flex;
		flex: 1;
		align-items: center;
		height: 1.9em;
		margin: 0;
		padding: 0 5px;
		border: 0;
		outline: none;
		min-width: 0;
	}
	#browse b {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		font-weight: normal;
	}
	#browse i {
		font-style: normal;
	}

	/* Chemin complet. */
	#browse_path {
		display: none;
		padding: 8px 10px;
		border-top: 1px solid #aaa;
		line-height: 1.8em;
	}

	/* Largeur. */
	*[data-levels="1"] { width: 35em; max-width: 35em; }
	*[data-levels="2"] { width: 37em; max-width: 37em; }
	*[data-levels="3"] { width: 39em; max-width: 39em; }
	*[data-levels="4"] { width: 41em; max-width: 41em; }
	*[data-levels="5"] { width: 43em; max-width: 43em; }
	*[data-levels="6"] { width: 45em; max-width: 45em; }
	*[data-levels="7"] { width: 47em; max-width: 47em; }
	*[data-levels="8"] { width: 49em; max-width: 49em; }
	*[data-levels="9"] { width: 51em; max-width: 51em; }
	*[data-levels="10"] { width: 53em; max-width: 53em; }
	*[data-levels="11"] { width: 55em; max-width: 55em; }
	*[data-levels="12"] { width: 57em; max-width: 57em; }
	*[data-levels="13"] { width: 59em; max-width: 59em; }
	*[data-levels="14"] { width: 61em; max-width: 61em; }
	*[data-levels="15"] { width: 63em; max-width: 63em; }
	*[data-levels="16"] { width: 65em; max-width: 65em; }
	*[data-levels="17"] { width: 67em; max-width: 67em; }
	*[data-levels="18"] { width: 69em; max-width: 69em; }
	*[data-levels="19"] { width: 71em; max-width: 71em; }
	*[data-levels="20"] { width: 73em; max-width: 73em; }

	/* Indentation. */
	*[id*=":1{"] b { margin-left: 15px; }
	*[id*=":2{"] b { margin-left: 30px; }
	*[id*=":3{"] b { margin-left: 45px; }
	*[id*=":4{"] b { margin-left: 60px; }
	*[id*=":5{"] b { margin-left: 75px; }
	*[id*=":6{"] b { margin-left: 90px; }
	*[id*=":7{"] b { margin-left: 105px; }
	*[id*=":8{"] b { margin-left: 120px; }
	*[id*=":9{"] b { margin-left: 135px; }
	*[id*=":10{"] b { margin-left: 150px; }
	*[id*=":11{"] b { margin-left: 165px; }
	*[id*=":12{"] b { margin-left: 180px; }
	*[id*=":13{"] b { margin-left: 195px; }
	*[id*=":14{"] b { margin-left: 210px; }
	*[id*=":15{"] b { margin-left: 225px; }
	*[id*=":16{"] b { margin-left: 240px; }
	*[id*=":17{"] b { margin-left: 255px; }
	*[id*=":18{"] b { margin-left: 270px; }
	*[id*=":19{"] b { margin-left: 285px; }
	*[id*=":20{"] b { margin-left: 300px; }

	/* Boutons "+" et "-". */
	#browse li > i {
		display: flex;
		align-items: center;
		justify-content: center;
		font-family: "Courier New", serif;
		font-size: 150%;
		cursor: pointer;
		width: 1.3em;
		max-width: 1.3em;
		min-width: 1.3em;
	}
	#browse:is(.search, [data-subcats="0"]) li > i {
		display: none;
	}
	#gallery #browse li > i:hover {
		background: #aaa;
	}
	#gallery #browse li[id*="c"] > i:hover {
		background: #777;
	}

	/* Liens. */
	#browse li[id*="c"] * {
		background-color: var(--color);
		color: white;
	}
	#browse li:not([id*="c"]):hover *,
	#browse li:not([id*="c"]):has(a:focus-visible) * {
		background: #dedede;
	}
	#browse li[id*="c"]:has(a:focus-visible) * {
		background: #777;
	}
	#browse li a:focus-visible {
		outline: none;
	}
	#browse[data-subcats="1"]:not(.search) li:not(:has(> i)) > a {
		padding-left: calc(5px + 1.95em);
	}

	/* Icône de catégorie (dé)verrouillée. */
	#browse li:is([id*="l"], [id*="u"]) b {
		position: relative;
		padding-left: 1.5em;
	}
	#browse li:is([id*="l"], [id*="u"]) b::before {
		font-family: "IcoMoon";
		font-size: 120%;
		color: #555;
		position: absolute;
		top: -1px;
		left: 0;
		height: 100%;
		width: 19px;
		display: flex;
		align-items: center;
	}
	#browse li:is([id*="l"], [id*="u"])[id*="c"] b::before {
		color: white;
	}
	#browse li[id*="l"] b::before {
		content: '\e92e';
	}
	#browse li[id*="u"] b::before {
		content: '\e94e';
	}

	/* Nombre de fichiers. */
	#browse li a i {
		display: flex;
		align-items: center;
		justify-content: end;
		height: 1.9em;
		padding: 0 6px;
		margin: 0;
		border: 0;
		color: #555;
		outline: none;
	}
	#browse li a i::before {
		content: '[';
	}
	#browse li a i::after {
		content: ']';
	}
	#browse li[id*="c"] a i {
		color: white;
	}

	/* Recherche. */
	#browse_search {
		margin: 4px 5px;
	}
	#browse_search input {
		width: calc(100% - 10px);
		min-width: calc(100% - 10px);
		max-width: calc(100% - 10px);
	}



	/**
	 * Moteur de recherche.
	 *
	 */
	#search {
		width: 28em;
		max-width: 28em;
		min-width: 28em;
		padding: 5px;
	}
	#search form {
		display: flex;
		align-items: center;
	}
	#search a {
		margin-top: 5px;
		display: inline-block;
	}
	#search input[type="text"] {
		flex: 1;
	}
	#search input[type="submit"] {
		margin: 0 0 0 5px;
	}
	#search ul {
		border-top: 1px solid silver;
		margin-top: 8px;
		padding-top: 5px;
	}
	#search ul a {
		display: block;
		overflow: hidden;
		padding: 5px;
		margin: 0;
		border: none;
	}
	#search ul a:hover {
		background: #f0f0f0;
	}



	/**
	 * Vignettes de catégories.
	 *
	 */
	#thumbs_cat dd {
		width: calc(100% - 18px);
	}

	/* Taille : petite */
	#thumbs_cat.small {
		margin: 10px -15px 20px 0;
		max-width: none;
	}
	#thumbs_cat.small dl {
		margin: 10px 15px 10px 0;
		width: 250px;
		max-width: 250px;
	}
	#thumbs_cat.small dd {
		margin: 0 8px;
	}
	#thumbs_cat.small dt a {
		padding: 8px;
	}
	#section_category #thumbs_cat.small dt img {
		height: 167px;
	}
	#section_category #thumbs_cat.small.square dt img {
		height: 232px;
	}
	#section_category #thumbs_cat.small.portrait dt img {
		height: 348px;
	}

	/* Taille : grande */
	#thumbs_cat.large {
		margin: 10px -17px 20px 0;
		max-width: none;
	}
	#thumbs_cat.large dl {
		margin: 10px 17px 10px 0;
		width: 337px;
		max-width: 337px;
	}
	#thumbs_cat.large dd {
		margin: 0 8px;
	}
	#thumbs_cat.large dt a {
		padding: 8px;
	}
	#section_category #thumbs_cat.large dt img {
		height: 230px;
	}
	#section_category #thumbs_cat.large.square dt img {
		height: 319px;
	}
	#section_category #thumbs_cat.large.portrait dt img {
		height: 478px;
	}

	/* Stats */
	#thumbs_cat ul {
		margin-top: 2px;
	}
	:is(#thumbs_cat.large, .thumbs_items:not(.small)) dl ul.stats li {
		font-size: 100%;
	}

	/* Stats en icônes */
	dl ul.stats_icon {
		top: 7px;
		right: 9px;
		height: calc(100% - 18px);
		font-size: 120%;
		transition: opacity 0.4s linear;
	}
	dl dt:hover ul.stats_icon,
	dl:has(dt a:focus-visible) ul.stats_icon {
		opacity: 1;
	}
	dl ul.stats_icon li {
		padding: 2px 6px;
	}
	dl ul.stats_icon li:first-child {
		padding-top: 5px;
	}

	/* Stats en icônes (grande taille) */
	:is(#thumbs_cat.large, .thumbs_items:not(.small)) dl ul.stats_icon {
		font-size: 130%;
	}
	:is(#thumbs_cat.large, .thumbs_items:not(.small)) dl ul.stats li.rating span span {
		font-size: 140%;
	}
	:is(#thumbs_cat.large, .thumbs_items.large) dl ul.stats_icon li {
		padding: 5px 8px;
	}
	.thumbs_items.superlarge dl ul.stats_icon li:first-child {
		margin-top: 2px;
	}
	.thumbs_items.superlarge dl ul.stats_icon li {
		padding: 5px 10px;
	}

	/* Mot de passe */
	#thumbs_cat dl.locked dt a span::before {
		font-size: 400%;
	}
	#thumbs_cat.large dl.locked dt a span::before {
		font-size: 500%;
	}
	#thumbs_cat dl.unlocked dt a::before {
		font-size: 200%;
		width: 50px;
		height: 50px;
	}
	#thumbs_cat.large dl.unlocked dt a::before {
		font-size: 220%;
		width: 56px;
		height: 56px;
	}

	/* Fichiers récents */
	#thumbs_cat :is(.recent, .recent:hover) {
		top: 4px;
		font-size: 120%;
	}
	#thumbs_cat.large :is(.recent, .recent:hover) {
		padding: 10px;
		font-size: 125%;
	}



	/**
	 * Page des images & vidéos.
	 *
	 */
	#item {
		margin: 0 0 10px 0;
		width: 100%;
	}
	#item,
	#item_link,
	#item video {
		min-height: 350px;
	}
	#item_link {
		outline: none;
	}

	/* Hauteur du fichier */
	#item :is(video, img) {
		max-height: calc(100vh - 6.3em);
	}
	#gallery:has(.breadcrumb_filter) #item :is(video, img) {
		max-height: calc(100vh - 8.6em);
	}
	#pages_top.show + #item #item_container :is(video, img) {
		max-height: calc(100vh - 12.2em);
	}
	#gallery:has(.breadcrumb_filter) #pages_top.show + #item #item_container :is(video, img) {
		max-height: calc(100vh - 14.5em);
	}

	/* Pagination */
	#section_item #pages_top {
		display: none;
	}
	#section_item #pages_top.show {
		display: block;
	}
	#item_prev,
	#item_next {
		position: absolute;
		align-items: center;
		top: 0;
		width: 0;
		height: 100%;
	}
	#item_prev.show,
	#item_next.show {
		display: flex;
	}
	#item_prev {
		left: 0;
		justify-content: flex-end;
	}
	#item_next {
		right: 0;
		justify-content: flex-start;
	}
	#item_prev a,
	#item_next a {
		font-family: "IcoMoon";
		font-size: 250%;
		color: #777;
		margin: 0;
		border: 0;
		padding: 10px;
	}
	#item_next a:hover,
	#item_prev a:hover {
		color: #555;
	}

	/* Favori et sélection. */
	#item.favorite::after,
	#item.selection::before {
		right: 15px;
		top: 15px;
		width: 54px;
		height: 54px;
	}
	#item.favorite::after {
		font-size: 200%;
	}
	#item.selection::before {
		font-size: 160%;
	}
	#item.favorite.selection::before {
		top: 84px;
	}

	/* Favori et sélection (galerie large). */
	#gallery[class*="large"] #item.favorite::after,
	#gallery[class*="large"] #item.selection::before {
		right: 20px;
		top: 20px;
		width: 70px;
		height: 70px;
	}
	#gallery[class*="large"] #item.favorite::after {
		font-size: 250%;
	}
	#gallery[class*="large"] #item.selection::before {
		font-size: 210%;
	}
	#gallery[class*="large"] #item.favorite.selection::before {
		top: 108px;
	}

	/* Titre et description. */
	#item_title {
		font-size: 130%;
		margin: 0 30px 20px 0;
		max-width: 100%;
		text-align: left;
	}
	#item_stats {
		float: right;
		background: none;
		margin: 0;
		padding: 0;
	}
	#item_stats li {
		font-size: 140%;
		margin: 0 0 0 20px;
		color: #555;
	}
	#item_description {
		margin: 0 0 40px;
	}

	/* Colonnes */
	#item_columns {
		display: flex;
		width: 100%;
	}
	#item_columns > div > div {
		margin: 0 20px;
		max-width: 580px;
	}
	#item_right {
		margin: 0;
		width: 50%;
		order: 1;
		max-width: none;
	}
	#item_left {
		margin: 0 0 0 20px;
		width: calc(50% - 20px);
		order: 2;
		max-width: none;
	}
	#item_columns #item_right > div {
		margin-left: 40px;
	}
	#item_columns textarea {
		width: 95%;
		min-width: 95%;
		max-width: 95%;
	}

	/* Colonnes (sans les commentaires) */
	#item_columns:not(.item_columns_comment) #item_left {
		max-width: 100%;
		width: 100%;
		margin: 0;
	}
	#gallery #item_columns:not(.item_columns_comment) #item_left_inner {
		column-count: 2;
		column-gap: 20px;
		max-width: 100%;
		margin-bottom: 20px;
		padding: 0 50px;
	}
	#item_columns:not(.item_columns_comment) #item_left_inner > div {
		padding: 20px;
		box-sizing: border-box;
		break-inside: avoid;
		margin-bottom: 20px;
	}
	#item_columns:not(.item_columns_comment) #item_left_inner > div:last-child {
		margin-bottom: 0;
	}

	/* Utilisateur */
	#item_user p {
		margin-top: -.2em;
	}
	#item_user br {
		margin-bottom: 2px;
	}
	#item_user_avatar img {
		width: 60px;
		height: 60px;
	}

	/* Votes */
	#item_user_note > span {
		font-size: 200%;
		margin-left: -2px;
	}
	#item_user_note .rating {
		margin: 0 2px;
	}
	#item_user_note .rating:nth-child(1) {
		margin-left: 0;
	}
	#item_user_note .rating:nth-child(5) {
		margin-right: 0;
	}
	#item_user_note #item_user_note_delete {
		font-size: 250%;
	}



	/**
	 * Page des images & vidéos : commentaires.
	 *
	 */
	#item_comments {
		max-width: 100%;
	}
	#item_comments_container {
		max-height: 80vh;
		overflow: auto;
		scrollbar-width: thin;
		padding-right: 15px;
		margin-right: -15px;
	}
	#item_comments_container .comment:first-child {
		margin-top: 5px;
	}
	#item_comments_container .comment:last-child {
		margin-bottom: 0;
	}

	/* Formulaire */
	#item_comments_add textarea {
		width: calc(100% - 10px);
		max-width: calc(100% - 10px);
		min-width: calc(100% - 10px);
	}
	#item_comments_add #submit {
		display: block;
	}
	#item_comments_add #submit p {
		display: inline-block;
	}
	#item_comment_remember {
		margin: 0 0 0 10px;
	}
	#box_emoji .box_content .emoji {
		margin: 5px 3px;
		font-size: 190%;
	}
	#box_emoji .box_menu a {
		font-size: 190%;
	}

	/* Commentaires */
	.comment_avatar {
		padding-left: 5px;
	}
	.comment_avatar img {
		width: 60px;
		height: 60px;
	}
	.comment_author {
		padding-bottom: 15px;
	}
	.comment_website {
		margin-left: 5px;
		display: inline;
	}
	.comment_date > span:first-child {
		display: inline;
		font-style: italic;
	}
	.comment_date > span:last-child {
		display: none;
	}



	/**
	 * Pages des commentaires.
	 *
	 */
	#page_comments .comment {
		margin: 20px 0 40px;
	}
	#page_comments .comment_message {
		border-left: 1px solid silver;
		margin-left: 105px;
		padding: 12px;
		position: relative;
	}
	#page_comments .comment_message::before {
		content: '';
		position: absolute;
		top: -4px;
		left: -4px;
		width: 7px;
		height: 7px;
		background: var(--color);
		transform: rotate(45deg);
	}
	#page_comments .comment_thumb a {
		width: 94px;
		height: 94px;
	}
	#page_comments .comment_author {
		padding-bottom: 28px;
	}
	#page_comments .comment:hover .comment_thumb a {
		border-right-color: var(--color);
		border-bottom-color: var(--color);
	}
	#page_comments .comment:hover .comment_message,
	#page_comments .comment_thumb a:hover {
		border-color: var(--color);
	}
	#page_comments .comment_thumb.video a::after {
		width: 35px;
		height: 35px;
		top: 35px;
		left: 35px;
	}
	#page_comments .comment_thumb.video a::before {
		top: 35px;
		left: 37px;
		width: 35px;
		height: 35px;
		font-size: 150%;
	}



	/**
	 * Géolocalisation.
	 *
	 */
	/* Carte du monde */
	#section_worldmap #worldmap {
		height: 90vh;
	}
	#worldmap .leaflet-popup-content {
		margin: 0;
	}
	#popup_thumbs .thumbs_items {
		margin: 11px 10px 8px 7px;
	}
	#popup_thumbs #thumbs_cat {
		margin: 10px 9px 10px 10px;
	}
	#popup_thumbs .thumbs_items :is(dl, dd) {
		width: 150px;
	}
	#popup_thumbs #thumbs_cat dt img {
		width: 130px;
	}
	#popup_thumbs #thumbs_cat :is(dl, dd) {
		width: 180px;
	}
	#popup_thumbs #thumbs_cat dt img {
		width: 162px;
	}



	/**
	 * Pages des membres.
	 *
	 */
	#member_page {
		margin: 10px auto 20px;
		width: 85%;
		max-width: 950px;
	}
	#member_page > div {
		display: flex;
	}
	#member_page_content {
		padding: 0 30px 0 0;
		flex: 1;
		margin: 0;
		max-width: 100%;
	}
	#member_page_content h3 {
		display: none;
	}
	#member_page_profile h3,
	#member_page_stats h3 {
		display: flex;
		font-size: 130%;
		margin: 0 0 15px;
		justify-content: flex-start;
		text-align: left;
	}
	#member_page_stats .link_number > * {
		padding: 8px 10px;
	}

	/* Nom d'utilisateur et description */
	#member_page h2 {
		text-align: left;
		margin: 0 0 20px;
	}
	#member_page_description {
		margin: 0 0 20px;
		width: 100%;
	}

	/* Menu */
	#member_menu {
		display: block;
		margin: -20px -20px 0 30px;
		order: 2;
	}
	#member_menu li {
		margin: 10px 0 0;
		position: relative;
	}
	#member_menu li#member_menu_upload,
	#member_menu li#member_menu_admin {
		margin-top: 40px;
	}
	#member_menu a {
		border: 1px solid silver;
		position: relative;
		display: flex;
		margin: 0;
		font-size: 110%;
		background: white;
	}
	#member_menu a > span {
		position: relative;
		display: flex;
		align-items: center;
		padding: 0 10px;
		height: 38px;
		width: 100%;
	}
	#member_menu span + span {
		display: inline-block;
	}
	.member_menu_icon {
		font-size: 140%;
		margin-right: 8px;
	}
	#member_menu_options .member_menu_icon {
		font-size: 150%;
	}
	:is(#member_menu_admin, #member_menu_avatar) .member_menu_icon {
		font-size: 180%;
	}
	#member_menu_upload .member_menu_icon {
		font-size: 170%;
	}

	/* Menu : contour */
	#member_menu span + span {
		position: relative;
		display: inline-block;
		height: 100%;
		width: 100%;
		display: flex;
		align-items: center;
		margin-right: 20px;
	}
	#member_menu a::before,
	#member_menu a::after,
	#member_menu span + span::before,
	#member_menu span + span::after {
		content: '';
		position: absolute;
		top: 0;
		display: block;
		border: 10px solid transparent;
		border-width: 0 0 39px 20px;
		border-bottom-color: silver;
	}
	#member_menu a::before {
		left: -21px;
	}
	#member_menu a::after {
		left: -20px;
		border-bottom-color: #fff;
	}
	#member_menu span + span::before {
		right: -30px;
	}
	#member_menu span + span::after {
		right: -31px;
		border-bottom-color: #fff;
	}
	#member_menu a > span::before {
		content: '';
		position: absolute;
		z-index: 1;
		bottom: -1px;
		left: -20px;
		height: 1px;
		width: 100%;
		display: block;
		background: silver;
	}

	/* Menu : hover */
	#member_menu a:hover {
		border-color: #888;
	}
	#member_menu a:hover::before,
	#member_menu a:hover span + span::before {
		border-bottom-color: #888;
	}
	#member_menu a:hover > span::before {
		background: #888;
	}

	/* Menu : Current */
	#member_menu li.current a {
		border-color: var(--color);
	}
	#member_menu li.current a::before,
	#member_menu li.current span + span::before {
		border-bottom-color: var(--color);
	}
	#member_menu li.current a > span::before {
		background: var(--color);
	}
	#member_menu li.current :is(a, .member_menu_icon) {
		color: white;
		background: var(--color);
		border-radius: 0;
	}
	#member_menu li.current .member_menu_icon {
		background: none !important;
	}
	#member_menu li.current a::after {
		border-bottom-color: var(--color);
	}

	/* Menu : focus */
	#member_menu a:focus {
		outline: none;
	}
	#member_menu li:has(a:focus-visible)::before {
		content: '';
		z-index: 1;
		position: absolute;
		top: calc(50% - 5px);
		left: 0px;
		width: 10px;
		height: 10px;
		border-radius: 50%;
		background: #555;
	}
	#member_menu li.current:has(a:focus-visible)::before {
		background: white;
	}

	/* Formulaires */
	#member_page form.standard {
		margin: 0;
	}

	/* Informations */
	#member_page_infos {
		display: flex;
	}
	#member_page_infos > div {
		width: 50%;
	}
	#member_page_infos #member_page_avatar {
		margin: 0 50px 0 0;
	}
	#member_page_avatar img {
		margin: 0 0 40px;
		max-width: 100%;
	}
	#member_page_profile {
		margin: 0 50px 0 0;
	}
	#member_page_stats {
		margin: 0 50px 0 0;
	}
	#member_page_avatar + div + div {
		margin-right: 0;
	}

	/* Édition de l'avatar */
	#member_page_edit_avatar img {
		margin: 0;
	}



	/**
	 * Envoi de fichiers.
	 *
	 */
	#upload_list {
		height: 244px;
	}
	#upload_startmsg {
		font-size: 225%;
	}
	#upload_infos_total {
		display: inline-block;
		float: left;
		width: 70%;
	}
	#upload_infos_total + p {
		display: inline-block;
		text-align: right;
		width: 30%;
	}
	#list_categories select {
		width: 400px;
		min-width: 400px;
		max-width: 400px;
	}



	/**
	 * Page des membres.
	 *
	 */
	#members_list table img {
		width: 70px;
		height: 70px;
	}
	#members_list :is(.date_created, .date_lastvisited) {
		display: table-cell;
	}



	/**
	 * Moteur de recherche.
	 *
	 */
	#search_page {
		max-width: 32em;
	}
	#search_page.adv {
		max-width: 90%;
	}
	#gallery[class*="large"] #search_page.adv {
		max-width: 70%;
	}
	#search_page.adv #search_query_container {
		max-width: 32em;
	}
	#search_options {
		display: flex;
		max-width: 100%;
		margin-right: -160px;
	}
	#search_options > div:nth-child(1) {
		margin-right: 50px;
		padding-right: 50px;
	}
	#search_options > div:nth-child(2) fieldset:last-child {
		margin-bottom: 0;
	}



	/**
	 * Tags de catégories.
	 *
	 */
	#section_tags #cat_tags {
		padding: 5px 20px 20px;
	}
	#section_tags #cat_tags li {
		margin: 8px;
	}



	/**
	 * Bas de page.
	 *
	 */
	#bottom {
		padding: 20px 0;
		margin: 20px -10px 0;
		background: none;
		border: 0;
		flex-direction: row;
	}
	#bottom > div,
	#bottom > div#bottom_random {
		margin: 0;
		min-width: 15%;
		max-width: 50%;
		padding: 0 20px;
		width: auto;
	}
	#bottom > div:last-child {
		border: 0;
		margin-bottom: 0;
	}

	/* Titre */
	#bottom h3 {
		margin: -10px 0 0px;
		padding: 10px 0;
	}

	/* Statistiques */
	#bottom_stats ul {
		margin-top: 7px;
	}
	#bottom_stats li {
		display: block;
		text-align: center;
		margin: 5px;
	}

	/* Liens externes et utilisateurs en ligne */
	#bottom_links > div,
	#bottom_online > div {
		margin-top: 7px;
	}
	#bottom_links li,
	#bottom_online li {
		margin-bottom: 8px;
	}

	/* Au hasard */
	#bottom_random dl {
		width: 100%;
	}
	#bottom_random .thumbs_items dl {
		min-width: 161px;
	}
	#bottom_random .thumbs_items.landscape dl img {
		width: 161px;
		height: 107px;
	}
	#bottom_random .thumbs_items.portrait dl img {
		width: 161px;
		height: 241px;
	}
	#bottom_random .thumbs_items.square dl img {
		width: 161px;
		height: 161px;
	}
	#bottom_random .thumbs_items.standard dl img {
		width: 151px;
		height: 151px;
	}

	/* Au hasard : grande taille */
	#bottom #bottom_random:has(.thumbs_items.large) {
		min-width: 248px;
	}
	#bottom_random .thumbs_items.large dl {
		min-width: 248px;
	}
	#bottom_random .thumbs_items.large.landscape dl img {
		width: 248px;
		height: 165px;
	}
	#bottom_random .thumbs_items.large.portrait dl img {
		width: 248px;
		height: 371px;
	}
	#bottom_random .thumbs_items.large.square dl img {
		width: 248px;
		height: 248px;
	}
	#bottom_random .thumbs_items.large.standard dl img {
		width: 238px;
		height: 238px;
	}

	/* Au hasard : très grande taille */
	#bottom #bottom_random:has(.thumbs_items.superlarge) {
		min-width: 335px;
	}
	#bottom_random .thumbs_items.superlarge dl {
		min-width: 335px;
	}
	#bottom_random .thumbs_items.superlarge.landscape dl img {
		width: 335px;
		height: 223px;
	}
	#bottom_random .thumbs_items.superlarge.portrait dl img {
		width: 335px;
		height: 502px;
	}
	#bottom_random .thumbs_items.superlarge.square dl img {
		width: 335px;
		height: 335px;
	}
	#bottom_random .thumbs_items.superlarge.standard dl img {
		width: 325px;
		height: 325px;
	}



	/**
	 * Footer.
	 *
	 */
	footer {
		width: 50%;
		padding-top: 8px;
	}
	footer p {
		font-size: 100%;
		margin-bottom: 5px;
	}
	#footer_text {
		margin-left: -50%;
		margin-right: -50%;
	}



	/**
	 * Options de thème.
	 *
	 */
	#theme_options {
		display: flex;
		position: fixed;
		top: 11%;
		left: -360px;
		z-index: 101;
		max-height: 100%;
		transition: left 0.25s ease-in-out;
	}
	#theme_options.open {
		left: 0;
	}
	#theme_options_inner {
		width: 360px;
	}
	#theme_options.open #theme_options_inner {
		box-shadow: 0 0 10px #555;
	}
	#theme_options h1 {
		width: 100%;
		font-size: 120%;
		font-style: normal;
		font-weight: normal;
		font-family: Verdana, Arial, Helvetica, sans-serif;
		color: white;
		background: var(--color);
		padding: 6px 10px 6px 12px;
		margin: 0;
		box-sizing: border-box;
	}
	#theme_options_content {
		padding: 10px 10px 0 12px;
		overflow-y: auto;
		scrollbar-width: thin;
		max-height: 60vh;
		background: white;
	}
	@media (min-height: 900px) {
		#theme_options
		{
			top: 9%;
		}
		#theme_options_content
		{
			padding: 15px 10px 15px 12px;
		}
	}

	/* Icône. */
	#theme_options_icon {
		margin-top: 55px;
		position: absolute;
		top: 0;
		right: -2.8em;
	}
	#theme_options_icon a {
		font-family: "IcoMoon";
		font-size: 180%;
		padding: .4em .4em .4em 2em;
		border-radius: 0 8px 8px 0;
		border: 0;
		margin: 0;
		color: white;
		background: var(--color);
	}

	/* Menu. */
	#theme_options_menu {
		border-bottom: 1px solid #ddd;
		background: #FAFAFA;
	}
	#theme_options_menu ul {
		display: flex;
		flex-wrap: wrap;
	}
	#theme_options_menu li {
		white-space: nowrap;
	}
	#theme_options_menu a {
		border: 0;
		padding: 10px 12px;
		margin: 0;
		display: block;
	}
	#theme_options_menu a:hover {
		background: #eee;
	}
	#theme_options_menu a.current {
		background: #ddd;
	}
	#theme_options_menu a:focus-visible,
	#theme_options_menu a.current:focus-visible {
		background: #ccc;
		outline: none;
	}

	/* Contenu. */
	#theme_options fieldset {
		display: none;
	}
	#theme_options fieldset#theme_options_style {
		display: block;
	}
	#theme_options h2 {
		color: #333;
		font-weight: bold;
		font-size: 100%;
		margin-top: 15px;
	}
	#theme_options p + h2 {
		margin-top: 30px;
	}
	#theme_options .button {
		margin-bottom: 0;
	}
	#theme_options form {
		z-index: 1;
		position: relative;
		display: none;
	}
	#theme_options .radio {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 15px;
		padding-right: 10px;
	}
	#theme_options .radio label {
		white-space: nowrap;
	}
	#theme_options label input {
		margin-right: .7em;
	}
	#theme_banner_file select,
	#theme_background_file select {
		display: block;
		margin-top: 8px;
		width: 100%;
		max-width: 100%;
	}
	#theme_options span.sep {
		display: block;
		margin-top: 10px;
	}
	#theme_options #theme_banner_texture + p,
	#theme_options #theme_background_texture + p {
		margin-top: 25px;
	}

	/* Couleurs. */
	#theme_palette {
		margin-bottom: 15px;
	}
	#theme_color_picker > div {
		margin: 0 auto;
	}
	#theme_palette {
		font-size: 0;
		padding: 4px;
		background: #fff;
		width: 310px;
	}
	#theme_palette a[data-code],
	#theme_palette a[data-code]:hover {
		display: inline-block;
		width: 36px;
		height: 36px;
		margin: 4px;
		border: none;
		cursor: pointer;
		position: relative;
	}
	#theme_palette a[data-code]::before {
		content: '';
		position: absolute;
		display: block;
		width: 28px;
		height: 28px;
		border: 5px solid #fff;
		top: -1px;
		left: -1px;
	}
	#theme_palette a[data-code].current::before {
		width: 26px;
		height: 26px;
		border-width: 3px;
		top: 2px;
		left: 2px;
	}

	/* Aide. */
	#theme_options h2 > span {
		display: flex;
		align-items: center;
	}
	#theme_options .infos_icon {
		font-family: "IcoMoon";
		font-size: 150%;	
		cursor: pointer;
		border: none;
		padding: 0;
		margin: 0;
		margin-left: 10px;
		font-weight: normal;
		color: #555;
	}
	.theme_file_icons + .infos_container {
		margin: 10px 0;
		line-height: 1.5em;
	}

	/* Icône de rechargement de liste. */
	.theme_file_icons {
		display: flex;
		align-items: center;
	}
	.theme_file_icons label {
		flex: 1;
	}
	.theme_file_icons a[data-dir] {
		font-family: "IcoMoon";
		font-size: 130%;
		cursor: pointer;
		border: none;
		padding: 0;
		margin: 0;
		margin-left: 10px;
		color: #555;
	}
	.theme_file_icons a[data-dir].load {
		color: #ddd;
		cursor: default;
	}
	.theme_file_icons a[data-dir].rotate {
		transform: rotate(360deg);
		transition: transform 0.4s linear;
	}

	/* Textures */
	.theme_textures {
		display: flex;
		border: 1px solid silver;
	}
	.theme_textures_prev,
	.theme_textures_next {
		width: 12%;
		font-family: "IcoMoon";
		font-size: 250%;
		display: flex;
		align-items: center;
		justify-content: center;
		border-right: 1px solid silver;
		cursor: pointer;
		position: relative;
	}
	.theme_textures_next {
		border: 0;
		border-left: 1px solid silver;
	}
	.theme_textures_prev span,
	.theme_textures_next span {
		position: relative;
		top: -3px;
		transform: scaleY(1.75);
		color: gray;
	}
	.theme_textures_prev::after,
	.theme_textures_next::after {
		content: '';
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		position: absolute;
	}
	.theme_textures_prev:hover span,
	.theme_textures_next:hover span {
		color: #555;
	}
	.theme_textures_prev.disabled,
	.theme_textures_next.disabled,
	.theme_textures_prev.disabled span,
	.theme_textures_next.disabled span {
		color: #ddd;
		cursor: default;
	}
	.theme_textures_images {
		flex: 1;
		display: flex;
	}
	.theme_textures_images > div {
		height: 85px;
		width: 33.33%;
		border-right: 1px solid silver;
		cursor: pointer;
		position: relative;
	}
	.theme_textures_images > div:nth-child(3) {
		border: 0;
	}
	.theme_textures_images > div.selected::after {
		content: '\e905';
		font-family: "IcoMoon";
		font-size: 100%;
		position: absolute;
		top: 8px;
		right: 8px;
		background: #333;
		padding: 5px;
		border-radius: 50%;
		color: white;
		opacity: 0.75;
		line-height: 1em;
	}

	/* Code CSS */
	#theme_css_infos pre {
		overflow: auto;
		white-space: pre;
		max-width: 320px;
	}
	#theme_css_code {
		height: 240px;
		width: 310px;
		min-width: 310px;
		max-width: 310px;
	}

	/* Boutons. */
	#theme_options_buttons {
		background: #fafafa;
		padding: 0 10px 10px;
		display: flex;
		align-items: center;
		position: relative;
		min-height: 48px;
		border-top: 1px solid #ddd;
	}
	#theme_loading {
		margin: 10px 0 0 10px;
		width: 24px;
		height: 24px;
		position: relative;
	}
	#theme_loading::after {
		content: '';
		background: #aaa;
		position: absolute;
		width: 26px;
		height: 26px;
		border-radius: 50%;
		transform: scale(0);
		opacity: 1;
		animation: theme-loading 0.8s ease-out infinite;
	}
	@keyframes theme-loading {
		100%
		{
			transform: scale(1.0);
			opacity: 0;
		}
	}
	div[id^="theme_report"] {
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		padding: 0 10px;
		align-items: center;
		background: white;
		display: none;
		box-sizing: border-box;
		cursor: pointer;
	}

	/* Élements de formulaires. */
	#theme_options .range {
		display: flex;
		margin-top: 5px;
	}
	#theme_options .range span {
		width: 6em;
		margin: 0 5px 0 0;
		white-space: nowrap;
		text-align: right;
	}
	#theme_options label[for="theme_menu_width"] + .range {
		width: 60%;
	}



	/**
	 * Fond.
	 *
	 */
	body.bg {
		background-color: var(--background-color);
		background-image: var(--background-image);
		background-attachment: var(--background-attachment);
	}
	body.bg #gallery {
		max-width: 1065px;
	}
	body.bg #gallery_inner {
		background: white;
		padding: 0 10px;
		box-shadow: 0 0 15px silver;
	}
	body.bg main {
		padding-bottom: 20px;
	}
	body.bg #item {
		margin-left: -10px;
		margin-right: -10px;
		width: calc(100% + 20px);
	}
	body.bg header:is(.banner, .color) {
		margin: 0 -10px;
	}
	body.bg #bottom {
		margin: 0 -10px;
		padding: 20px 0;
		background: #fafafa;
		border-top: 2px solid #ddd;
	}



	/**
	 * Aucun fond.
	 *
	 */
	body:not(.bg) #gallery[class*="large"] header:not(.none) #gallery {
		padding-top: 8em;
	}
	body:not(.bg) #gallery[class*="large"] header:not(.none) #header_top {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
	}
	body:not(.bg) #gallery[class*="large"] header:is(.banner, .user) #title {
		margin-left: 15px;
	}
	body:not(.bg) #gallery[class*="large"] #user_links {
		margin-right: 15px;
	}
	body:not(.bg) #gallery[class*="large"] header:not(.none) #user_style_large {
		position: static;
		margin: 15px 15px 0 0;
	}
	body:not(.bg) #rss {
		margin-right: 0;
	}
	body:not(.bg) #gallery[class*="large"] #bottom {
		margin: 20px -100% 0;
		padding: 20px calc(100% - 20px);
		box-sizing: border-box;
	}

	/* Texture pour le bas de page. */
	body:not(.bg).bottom_bg #gallery[class*="large"] #bottom {
	   margin-top: 10px;
	   border: 3px solid #ddd;
	   border-width: 1px 0;
	   background: #fff url(./../../../images/textures/low-contrast-linen.png);
	}
	body:not(.bg).bottom_bg #gallery[class*="large"] footer {
	   margin-top: 0;
	   border: 0;
	}

	/* Bannière : texture ou fichier. */
	body:not(.bg) #gallery[class*="large"]:has(header.banner) {
		padding-top: var(--header-height);
	}
	body:not(.bg) #gallery[class*="large"] header.banner #user_style_large {
		margin-left: -15px;
	}
	body:not(.bg) #gallery[class*="large"] header.banner #user_style_large a {
		background: hsla(255, 100%, 100%, 0.75);
		color: #555;
		border-left: 1px solid #555;
	}

	/* Bannière : couleur. */
	body:not(.bg) #gallery[class*="large"] header.color #header_top {
		display: flex;
		align-items: center;
	}
	body:not(.bg) #gallery[class*="large"]:has(header.color) {
		padding-top: 4.8em;
	}
	body:not(.bg) #gallery[class*="large"]:has(header.color):has(#title .emoji) {
		padding-top: 5.4em;
	}
	body:not(.bg) #gallery[class*="large"] header.user.color #title {
		margin-left: 0;
	}
	body:not(.bg) #gallery[class*="large"] header.color #user_links {
		margin-right: 0;
	}
	body:not(.bg) #gallery[class*="large"] header.color:has(#user_style_large.active) #user_links {
		margin-right: -1px;
	}
	body:not(.bg) #gallery[class*="large"] header.color #user_style_large.active {
		margin: 0 10px 0 0;
	}

	/* Aucune bannière. */
	body:not(.bg) #gallery[class*="large"] header.none #header_top #title {
		margin-left: 0;
	}
	body:not(.bg) header.none #header_top #user_links {
		padding-right: 0;
		margin-right: 0;
	}
	body:not(.bg) header.none:has(#user_style_large.active) #header_top #user_links {
		margin-right: calc(1.5em + 23px);
	}
}



/**
 * Galerie large et écran large.
 *
 */
@media (min-width: 1520px) {
	#gallery[class*="large"] {
		max-width: 1400px;
		padding-left: 1px;
	}
	body.bg #gallery[class*="large"] {
		max-width: 1419px;
	}
	#gallery[class*="large"] #page_thumbs.thumbs_items.superlarge {
		margin-left: 4px;
	}
	#gallery[class*="large"] #item_columns.item_columns_comment #item_right_inner {
		margin-left: auto;
	}
	#gallery[class*="large"] #item_columns:not(.item_columns_comment) #item_left_inner {
		column-count: 3;
		margin-left: 0;
		margin-right: 0;
	}
}
@media (min-width: 1520px) and (max-width: 1719px) {
	/* Vignettes de catégories : petite */
	#gallery[class*="large"] #thumbs_cat.small dl {
		width: calc(16.6667% - 15px);
	}
	#gallery[class*="large"] #thumbs_cat.small dt img {
		width: 203px;
		height: 146px;
	}
	#gallery[class*="large"] #thumbs_cat.small.square dt img {
		width: 203px;
		height: 203px;
	}
	#gallery[class*="large"] #thumbs_cat.small.portrait dt img {
		width: 203px;
		height: 304px;
	}

	/* Vignettes de fichiers : petite */
	#gallery[class*="large"] #page_thumbs.thumbs_items.small {
		padding-left: 0;
	}
	body.bg #gallery[class*="large"] #page_thumbs.thumbs_items.small {
		padding-left: 6px;
	}

	/* Vignettes de fichiers : grande */
	body.bg #gallery[class*="large"] #page_thumbs.thumbs_items.large {
		padding-left: 0;
	}
	#gallery[class*="large"] .thumbs_items.large dl {
		margin-right: 18px;
		width: calc(16.6667% - 10px);
		max-width: 218px;
	}
	#gallery[class*="large"] .thumbs_items.large.standard dt a img {
		max-height: 208px;
		max-width: 208px;
	}
	#gallery[class*="large"] .thumbs_items.large:is(.landscape, .portrait, .square) dt a img {
		max-width: 218px;
	}

	/* Au hasard : grande taille */
	#gallery[class*="large"] #bottom #bottom_random:has(.thumbs_items.large) {
		min-width: 248px;
	}
	#gallery[class*="large"] #bottom_random .thumbs_items.large dl {
		min-width: 218px;
	}
	#gallery[class*="large"] #bottom_random .thumbs_items.large.landscape dl img {
		width: 218px;
		height: 145px;
	}
	#gallery[class*="large"] #bottom_random .thumbs_items.large.portrait dl img {
		width: 218px;
		height: 326px;
	}
	#gallery[class*="large"] #bottom_random .thumbs_items.large.square dl img {
		width: 218px;
		height: 218px;
	}
	#gallery[class*="large"] #bottom_random .thumbs_items.large.standard dl img {
		width: 208px;
		height: 208px;
	}
}
@media (min-width: 1720px) {
	#gallery.superlarge {
		max-width: 1574px;
	}
	body.bg #gallery.superlarge {
		max-width: 1594px;
	}
	#gallery.superlarge #menu {
		font-size: 105%;
	}
	#gallery.superlarge #thumbs_cat.large {
		margin-left: auto;
		margin-right: auto;
		padding-left: 17px;
		max-width: 1416px;
	}
	#gallery.superlarge #thumbs_cat.small {
		margin-left: 0;
		margin-right: -16px;
		padding: 0;
	}
	#gallery.superlarge #page_thumbs.thumbs_items.small {
		margin-left: -8px;
	}
	#gallery.superlarge .pages form input {
		width: 2.8em;
		height: 2.4em;
	}
	#gallery.superlarge .pages .link > * {
		height: 2.4em;
		width: 2.4em;
		margin: 0 6px;
	}

	/* Colonnes de la page des fichiers. */
	#gallery.superlarge #item_columns:not(.item_columns_comment) #item_left_inner {
		column-count: 3;
		column-gap: 30px;
		padding: 0 20px;
	}
	#gallery.superlarge #item_columns:not(.item_columns_comment) #item_left_inner > div {
		margin-bottom: 30px;
	}
	#gallery.superlarge #item_columns:not(.item_columns_comment) #item_left_inner > div:last-child {
		margin-bottom: 0;
	}

	/* Vignettes de catégories : petite */
	#gallery.large #thumbs_cat.small dl {
		width: calc(16.6667% - 15px);
	}
	#gallery.large #thumbs_cat.small dt img {
		width: 203px;
		height: 146px;
	}
	#gallery.large #thumbs_cat.small.square dt img {
		width: 203px;
		height: 203px;
	}
	#gallery.large #thumbs_cat.small.portrait dt img {
		width: 203px;
		height: 304px;
	}

	/* Vignettes de catégories : grande */
	#gallery.superlarge #thumbs_cat.large {
		padding: 0;
		margin-right: -17px;
		margin-left: -1px;
		max-width: none;
	}
	#gallery.superlarge #thumbs_cat.large dl {
		width: 381px;
		max-width: 381px;
	}
	#gallery.superlarge #thumbs_cat.large dt img {
		width: 363px;
		height: 262px;
	}
	#gallery.superlarge #thumbs_cat.large.square dt img {
		width: 363px;
		height: 363px;
	}
	#gallery.superlarge #thumbs_cat.large.portrait dt img {
		width: 363px;
		height: 544px;
	}

	/* Vignettes de fichiers : grande */
	body.bg #gallery.large #page_thumbs.thumbs_items.large {
		padding-left: 0;
	}
	#gallery.large .thumbs_items.large dl {
		margin-right: 18px;
		width: calc(16.6667% - 10px);
	}
	#gallery.large .thumbs_items.large dl {
		max-width: 218px;
	}
	#gallery.large .thumbs_items.large.standard dt a img {
		max-height: 208px;
		max-width: 208px;
	}
	#gallery.large .thumbs_items.large:is(.landscape, .portrait, .square) dt a img {
		max-width: 218px;
	}

	/* Au hasard : grande taille */
	#gallery.large #bottom #bottom_random:has(.thumbs_items.large) {
		min-width: 248px;
	}
	#gallery.large #bottom_random .thumbs_items.large dl {
		min-width: 218px;
	}
	#gallery.large #bottom_random .thumbs_items.large.landscape dl img {
		width: 218px;
		height: 145px;
	}
	#gallery.large #bottom_random .thumbs_items.large.portrait dl img {
		width: 218px;
		height: 326px;
	}
	#gallery.large #bottom_random .thumbs_items.large.square dl img {
		width: 218px;
		height: 218px;
	}
	#gallery.large #bottom_random .thumbs_items.large.standard dl img {
		width: 208px;
		height: 208px;
	}

	/* Vignettes de fichiers : très grande */
	#gallery.superlarge .thumbs_items.superlarge dl {
		margin-right: 18px;
	}
	#gallery.superlarge .thumbs_items.superlarge dl {
		max-width: 378px;
	}
	#gallery.superlarge .thumbs_items.superlarge.standard dt a img {
		max-height: 368px;
		max-width: 368px;
	}
	#gallery.superlarge .thumbs_items.superlarge:is(.landscape, .portrait, .square) dt a img {
		max-width: 378px;
	}

	/* Au hasard : très grande taille */
	#gallery.superlarge #bottom #bottom_random:has(.thumbs_items.superlarge) {
		min-width: 378px;
	}
	#gallery.superlarge #bottom_random .thumbs_items.superlarge dl {
		min-width: 378px;
	}
	#gallery.superlarge #bottom_random .thumbs_items.superlarge.landscape dl img {
		width: 378px;
		height: 252px;
	}
	#gallery.superlarge #bottom_random .thumbs_items.superlarge.portrait dl img {
		width: 378px;
		height: 566px;
	}
	#gallery.superlarge #bottom_random .thumbs_items.superlarge.square dl img {
		width: 378px;
		height: 378px;
	}
	#gallery.superlarge #bottom_random .thumbs_items.superlarge.standard dl img {
		width: 368px;
		height: 368px;
	}
}


 /***********************************************************   MP  *******************************************************************/
 /************************************************************************************************************************************/



/***************************************  COMMENTS *****************************************/


/*****************  RESPONS MIN 1180  ******************/


@media (min-width: 1180px) {
	
	#item_columns {
		margin-top: 2rem;
	}
    #item_columns > div > div {
        max-width: unset;
    }
    .comment_date > span:last-child {
        display: initial;
    }
	#item_comment_remember {
		display: none!important;
	}
	.comment_date > span:first-child {
		display: none;
	}

}
/**********************************************************/

dl ul.stats_icon {
    opacity: 1;
    background: none;
}
dl ul.stats_icon li span.icon {
    font-size: 90%;
    color: lightskyblue;
    left: 0.2em;
}
dl ul.stats_icon li {
    padding: 0;
    text-shadow: none;
    display: block;
}
.stats_icon .comments span {
    background: rgba(0, 0, 0, .5);
}
dl ul.stats_icon li span:first-child {
    padding-right: 0.2em;
    padding-left: 0.2em;
}
.field #email,
.field #website,
#item_no_comment,
#item_comments_add .message_info,
.field.required:before,
#item_comment_remember {
    display: none!important;
}
.field label {
	display: initial;
}
.field.required label {
    display: initial;
}
#section_item #item_right {
    max-width: 100%;
}
#item_comments {
    max-width: 90%;
    margin: 0 auto;
}
#item_comments #item_comments_messages h3.icon {
    /*position: absolute;  NOMORE - Ex = PUT AT TOP */
    /*top: 90px;*/
    /*left: 5%;*/
    /*right: auto;*/
    font-size: 1.1em;
    color: lightskyblue;
	display: block;
	text-align: center!important;
}
h3.icon span:first-child {
    right: 0rem;
	display: inline;
}

#item_comments_add {
    margin-top: 3em;
}
.comment_avatar {
    display: none;
}
#item_comments .comment_infos,
#item_comments .comment_infos div,
#item_comments .comment_author,
#item_comments .comment_date,
#item_comments .comment_num {
    display: inline;
}
.comment_name {
    font-weight: normal;
    font-size: 1.1em;
}
.comment_date {
    font-weight: normal;
    font-size: 0.9em;
    color: lightskyblue!important;
    margin-left: 0.5em;
}
.comment_name:before {
    content: "Da";
    margin-right: 0.5em;
    color: lightskyblue;
    font-weight: normal;
}
.comment_num {
    display: none!important;
}
#item_comments_add h3 {
    color: hotpink!important;
    font-weight: normal;
    font-size: 1.1em;
    text-align: center;
    padding-bottom: 0em;
    border-bottom: none;
}
#item_comments_add .field.required {
    /*text-align: center;*/
}
#item_comments_add .field.required label,
#item_comments_add #author {
    /*display: inline-block;*/
}
#item_comments_add .field.required label {
    padding-left: 0;
    margin-right: 1em;
}
#item_comments_add input {
    /*max-width: 75%;*/
    /*font-size: 1.3em;*/
    /*padding-left: 1em;*/
}
#item_comments_add textarea {
    max-width: 100%;
    width: 90%;
    font-size: 1.2em;
    font-family: unset;
    padding: 1.5em;
}
.comment_message {
    margin-top: 1em;
    margin-left: 1em;
    font-size: 1.1em;
    font-family: Arial, Helvetica, Sans-serif;
    letter-spacing: 0.05em;
}
.comment {
    margin: 10px 0 20px;
}
.comment_name {
    color: hotpink!important;
}


/***********   NEW FOR COMMENTS  26-02 +  *************/


#item_comments_add #submit {
	text-align: center;
}
#item_comments_add p.field {
    display: none;
}
#item_comments_add p.field.required {
    display: initial;
	line-height: 3rem;
}
#item_comments_add form {
    margin-top: -1rem;
}
#section_item #item_comments {
    margin-bottom: -2rem;
}


/**********  MENU PAGE "COMMENTS"  **********/


#page_comments {
    max-width: unset;
    margin: unset;
    padding: 1rem 1rem;
}
#section_comments #page_breadcrumb {
	margin-top: 5rem;
	text-align: center;
	margin-bottom: 1rem;
}
#section_comments #page_breadcrumb a {
    display: none;
}
#page_comments .comment_message {
    padding: 1.3rem 1rem;
}
span.mp-comments-count {
    color: lightskyblue!important;
    font-weight: unset!important;
    margin-left: 0.4rem;
}

/***********************  END  COMMENTS ***************************/



/********************************************   NEW OTHER 26-02 +  ***********************************/


/***********  DIAPORAMA  *************/


#diaporama_breadcrumb {
    margin-left: 0.8rem;
}
a.diaporama_icon.diaporama_sidebar_icon {
    display: none;
}
a.diaporama_icon:first-child:after {
    color: #888;
	font-size: 1.2rem;
}
#link_diaporama img {
    height: 1.3rem;
    width: auto;
}
div#diaporama_auto_mode {
    display: none;
}
a#search_infos_link {
    display: none;
}
#diaporama_bottom #diaporama_position {
    display: none;
}
#diaporama_text {
    width: 100%;
}
#diaporama_text p {
	background: rgba(17,17,17,0.6)!important;
	width: 100%;
	text-align: center;
}


/***********  SEARCH  *************/


#search_page {
    padding-top: 4rem;
}
#search_page h2 {
    display: none;
}
.breadcrumb_filter { /* MAYBE ONLY #section_item */
    margin-bottom: 1rem!important;
    line-height: 2rem!important;
	color: lightskyblue!important;
}
.mp-exit-text {
    /*color: hotpink;*/
}


/***********  ORI =  FOOTER  *************/


footer #footer_system {
    display: none;
}
#footer_lang {
	position: fixed;
	top: 0.3rem;
	right: 0;
	z-index: 999;
	margin: 0.5rem 0!important;
	font-size: 100%;
    text-transform: uppercase;
}
#footer_lang a {
	color: lightskyblue;
}
#lang_switch {
	height: unset;
	justify-content: flex-end;
    top: 4rem;
}
#lang_switch span {
    display: none;
}
#lang_switch li a {
    padding-left: 1.5rem;
}


/**************  ORI AT BOTTOM  **************/


#rss {
    display: none;
}

#section_category #bottom,
#section_album #bottom {
    position: absolute!important;
    top: 3rem;
    left: 0;
    right: 0;
    border-top: none;
    border-bottom: 3px solid #873d9f;
    padding-bottom: 0.5rem;
	z-index: 12;
}
#bottom_stats h3 {
    display: none;
}
#bottom_stats {
    font-size: 0.9rem;
}
body.bg #bottom {
    background: unset!important;
    padding: 0;
    text-align: center;
	margin: 0;
}
#bottom_stats ul li:first-child a {
    pointer-events: none;
    border-bottom: none;
}
#bottom_stats ul li:last-child a {
    color: yellow;
    padding-bottom: 0.1rem;
}
#bottom > div:last-child {
    margin-bottom: 0;
}
#bottom_stats li {
    margin: 1rem 0 0 1rem;
}
#bottom_stats li:before {
    content: "●";
    left: -0.5rem;
    position: relative;
}


/************  CUSTOM PAGE  /  HTML IN TEXT FIELDS  *************/


.mp-gal-top-butt-to-WP { /* 2 BUTTONS AT TOP GALL TO GO WP SITE */
    margin-bottom: 3rem!important;
}
.mp-gal-top-butt-to-WP a {
    background: mediumblue;
    padding: 0.2rem 1rem;
    /*border-bottom: none;*/
	border: 1px solid #666;
    border-radius: 1rem;
    margin-left: 0.5rem;
}

body#section_page.bg #content {
    padding: 0;
}

article#page_custom {
	max-width: 80%;
	display: inline-block;
	left: 50%;
	transform: translateX(-50%);
	position: relative;
}
#page_custom {
	font-size: 100%;
}
#page_custom ul {
    /* margin-left: 2.5em; */
    padding-left: 0;
    list-style: disc;
    left: 20%;
    position: relative;
	margin-bottom: 1rem;
}
#page_custom ul li {
    margin-bottom: 1rem;
}
#page_custom li::marker {
    color: hotpink;
}
#page_custom p {
    margin-bottom: 1rem;
}
#page_custom a { /* FOR WHITE BAK */
	color: royalblue;
}
#page_custom summary {
    border-bottom: 1px solid hotpink;
}
#page_custom img {
    display: unset;
}
#page_custom .mp-page.title {
    font-size: 110%;
    margin-bottom: 3rem;
    border: 1px solid hotpink;
    padding: 1rem 2rem;
    display: inline-block;
    left: 50%;
    transform: translateX(-50%);
    position: relative;
}

.mp-arrow-left:before {
    content: '▶';
    color: dodgerblue;
    margin-right: 0.6rem;
    position: relative;
}
.mp-new-tab:after {
    content: '↗';
    color: hotpink;
    margin-left: 0.4rem;
    top: -0.4rem;
    position: relative;
	font-weight: bold;
}
.mp-align-center {
	text-align: center;
}
.mp-text-sub-header { /* PARAGRAPH */
    color: lightskyblue; /* FOR DARK BAK */
	text-align: center;
    font-weight: bold;
	margin-top: 3rem;
	margin-bottom: 2rem!important;
}
.mp-inline-img {
	display: inline;
    position: relative;
    top: 0.4rem;
    left: -1rem;
	width: 1.5rem;
}
.mp-marg-left-3 {
    margin-left: 3rem;
}
.mp-marg-top-0-5 {
	margin-top: 0.5rem;
}
.mp-photo-ID { /* THE PHOTOS' ID INSIDE DESCRIPTION MODEL */
    color: grey;
}
.mp-color-lightskyblue {
	color: lightskyblue;
}
.mp-color-deeppink {
	color: hotpink; /* DARKER = #aa00aa */
}

p.mp-go-top-p {
    position: fixed;
    right: 1rem;
    bottom: 1rem;
}
a.mp-go-top-a {
	color: #fff ;
    font-size: 1rem;
    background: #EAB5F1;
    padding: 0.5rem 0.5rem;
    border-radius: 1rem;
    font-weight: bold;
}

img.mp-flag {
    height: 1.5rem;
    vertical-align: bottom;
}
.mp-globe-lang {
    font-family: "IcoMoon";
    color: lightskyblue;
    font-size: 1.3rem;
    vertical-align: top;
}

.mp-space-div {
	
}


/*************   SPECIFIC CUSTOM PAGES  *************/


article#page_custom.page_1, /*** ISTRUZIONI ***/
article#page_custom.page_2 { /*** ALBERO ***/
    color: black;
    background: white;
    max-width: 100%;
    padding: 4rem 5rem;
}
article#page_custom.page_1 .mp-text-sub-header { /*** ISTRUZIONI ***/
    color: royalblue;
}

article#page_custom.page_2 { /*** ALBERO ***/
    background-image: url(/images/Tree-Savanna.png)!important;
    background-repeat: no-repeat!important;
    background-size: contain!important;
}
#page_custom.page_2 .mp-page.title { /*** ALBERO ***/
    margin-top: 18rem;
}

img.mp-iGal-pho-norm { /*** ISTRUZIONI ***/
    width: 20%;
    margin-right: 1rem;
}
img.mp-iGal-pho-full { /*** ISTRUZIONI ***/
    width: 20%;
    margin-left: 1rem;
}
p#commenti { /*** ISTRUZIONI ***/
    /*margin-top: 2rem;*/
}


/*****************  IMAGE ALBERO  ******************/

img.mp-albero-img-thumb {
    max-width: 80%;
	border: 1px solid dodgerblue;
}


/*********************************  NEW MISC  *************************************/


body.bg {
    background-color: #3A3A3A!important;
}
body#section_category {
	padding-bottom: 3rem;
}

#breadcrumb {
    margin-bottom: 0.5rem;
}
#breadcrumb .current {
    font-weight: normal;
    color: lightskyblue!important;
}
#breadcrumb a.current {
    pointer-events: none;
}
#section_item #breadcrumb_tools {
    margin-top: 0rem!important;
}

#objects_count {
    color: hotpink;
	margin-left: 0.5rem;
}
#objects_count .mp-bracket-left, #objects_count .mp-bracket-right {
    margin: 0.2rem!important;
    color: lightskyblue!important;
}
#gallery .object_desc {
    margin: 0rem 1rem 1rem 1rem;
	font-size: 1rem;
}
#section_item #gallery .object_desc {
    margin: 2rem 1rem 1rem 1rem;
	font-size: 100%;
    /*font-size: 0.8rem;*/
}
#cat_desc p {
    margin-bottom: 0.5rem;
}

body.bg #thumbs_cat dt a,
body.bg #thumbs_cat dt a:hover,
#gallery .thumbs_items dt a:hover,
#gallery .thumbs_items dt a:focus-visible {
	box-shadow: none!important;
}
body.bg .thumbs_items.standard dt a,
body.bg .thumbs_items.standard dt a:hover {
    outline: none!important;
	background: #333!important;
}

#thumbs_cat dt img {
	max-height: 20vh;
	width: auto;
	min-height: unset;
	border-radius: 1rem;
}
body.bg #thumbs_cat dt a {
    border-color: #3A3A3A!important;
    background: #3A3A3A!important;
}
#thumbs_cat .title {
	text-align: center;
}
#thumbs_cat .title a {
    font-weight: normal;
}
#thumbs_cat .stats .albums_filesize:before {
    content: '-';
    margin-right: 0.4rem;
}
#thumbs_cat .stats .items a {
    color: hotpink;
    /*border-bottom: 1px dotted hotpink;*/
    /*padding-bottom: .2rem;*/
	pointer-events: none; /* MAYBE TEMP */
}
#thumbs_cat .recent,
#thumbs_cat .recent:hover {
	left: 1rem;
	padding: 0.3rem;
}
.breadcrumb_filter :is(.filter_name, #cat_name) {
    font-weight: normal;
}
.albums_filesize span {
    color: skyblue;
}
ul.stats {
    text-align: center;
}
ul.stats li {
    display: inline;
}
#page_thumbs ul.stats {
    margin-top: 1rem;
}

#tools #link_download a {
    color: #888!important;
	font-size: 1.1rem;
}
#tools #link_diaporama {
    /*margin-left: 1rem;*/
}

.mp-ID-jump { /* TEST ID JUMP TARGET AT TOP */
	scroll-margin-top: 3rem;
}


/****************************  MIN WIDTH 1181  NOT COMMENTS  *********************/


@media (min-width: 1181px) {
	
    #footer_lang {
		right: 25%;
		border: 1px dotted lightskyblue;
		padding: 0.3rem;
	}
	#footer_lang a span {
		color: #8F379C;
		margin-right: 0.5rem;
	}
	
	#item_left {
        display: none;
   }
    #item_right {
        width: 100%;
    }
	
	#content p,
	.object_desc,
	.cat_desc,
	#page_custom a {
		font-size: 1rem;
	}
	#thumbs_cat .title a {
		letter-spacing: 0.05rem;
	}
	
	#page_custom { /* CUSTOM PAGE */
		font-size: 110%;
	}
	
	#bottom {
		left: 15%!important;
		border-bottom: none!important;
	}
	#bottom_stats li {
		display: unset!important;
	}
	
}


/**************************************  MP RESPONS MAX 1180px   ************************************************/


@media only screen and (max-width: 1180px) {
	
	body#section_page.bg { /*** CUSTOM PAGE  ***/
		background: white;
	}
	body#section_page.bg #gallery_inner {
		padding: 0;
		background: white;
	}
	#section_page #page_custom {
		/*padding: 5rem 2rem 3rem 2rem;*/
		margin-bottom: 0;
		/*height: 100vh;*/
	}
	article#page_custom.page_1 { /***  PAGE ISTRUZIONI  - PB ON PIXEL MP  ***/
		background: white;
		padding: 4rem 4rem;
		max-width: unset;
	}
	#page_custom.page_2 .mp-page.title { /*** PAGE ALBERO ***/
		margin-top: 15rem;
	}
	#page_custom {
		font-size: 110%;
	}
	/***************************************************/
	
	header {
		position: fixed;
		width: 100%;
		z-index: 999;
		display: flex;
		justify-content: center;
		background: linear-gradient(156deg,#252d4a,#aa278c 51%,#3062BD); /* #873d9f */
	}
	#header_top {
		margin-left: -2rem;
		background: none; /* FOR GRADIENT ... */
	}
	#header_top #title,
	#header_top #mp-hambar {
		margin-top: 0.3rem;
	}
	#header_top #menu_link {
		margin-left: 1.5rem;
		margin-right: 0;
	}
	#menu nav {
		/*right: 40%; or 0rem */
		width: auto;
		top: 3rem;
		padding: 0 1rem;
		left: 50%;
        transform: translateX(-50%);
	}
	
	#footer_lang a span {
		color: lightskyblue;
		margin-right: 0.5rem;
	}
	
	#breadcrumb {
		margin-bottom: 0.5rem;
	}
	#section_category #gallery #breadcrumb_tools,
	#section_album #gallery #breadcrumb_tools {
		margin-top: 7rem!important;
	}
	#section_item #gallery #breadcrumb_tools {
		margin-top: 4rem!important;
	}
	#section_item #gallery #breadcrumb_tools #breadcrumb {
		margin-bottom: 0.5rem!important;
	}
	#section_item #tools {
		margin: 0rem 0 1.5rem 0;
	}
	#section_item img {
		max-height: 60vh!important;
	}
	
	#diaporama_breadcrumb {
		font-size: 0.8rem!important;
	}
	#section_item #diaporama_item img {
		max-height: unset!important;
	}
	#diaporama_text {
		
	}
	#diaporama_description .mp-photo-ID {
		/*display: none;*/
	}
	
	#item_description {
		margin: 1rem 0 0 1rem;
		font-size: unset;
	}
	#item_columns {
		margin-top: 1rem;
	}
	
	#gallery .object_desc {
		margin-top: 8rem;
	}
	#section_album .object_desc {
		margin-top: 1rem;
	}
	#section_item #gallery #item_description {
		margin-top: 1rem;
	}
	
	#section_category #bottom {
		padding-bottom: 0.7rem;
	}
	
	.mp-gal-top-butt-to-WP { /* 2 BUTTONS AT TOP GALL TO GO WP SITE */
		margin-bottom: 2rem!important;
	}
	
	.mp-ID-jump { /* TEST ID JUMP TARGET AT TOP */
		scroll-margin-top: 6rem;
	}
	
}


/**************************************  MP RESPONS MAX 479 - Ex- 720px   ****************************************/

 
@media only screen and (max-width: 479px) {
	
	#section_category #gallery #breadcrumb_tools,
	#section_album #gallery #breadcrumb_tools	{
		margin-top: 6.5rem!important;
	}
	#section_category #gallery .object_desc {
		margin: 8rem 1rem 1rem 1rem;
		font-size: 0.8rem;
	}
	
	#page_custom {
		font-size: 110%;
		padding-left: 2rem !important;
        padding-right: 2rem !important;
	}
	article#page_custom.page_2 { /*** ALBERO ***/
	    margin-top: 2rem;
	}
	#page_custom.page_2 .mp-page.title { /*** PAGE ALBERO ***/
		margin-top: 7rem;
	}
	.mp-gal-top-butt-to-WP a { /* 2 BUTTONS AT TOP GALL TO GO WP SITE */
		padding: 0.2rem 0.5rem;
		margin-left: 0.2rem;
	}
	.mp-gal-top-butt-to-WP .mp-new-tab:after {
		margin-left: 0.2rem;
	}
	
	p.mp-gal-top-butt-to-WP {
		margin-left: -1rem;
		margin-right: -1rem;
	}
	
}



