/**
 * Structure générale.
 *
 */
@font-face
{
	font-family: "IcoMoon";
	src: url("../../../../../template/default/style/icomoon.woff?v=98") format("woff");
}
*
{
	image-rendering: optimizeSpeed;
	image-rendering: -moz-crisp-edges;
	image-rendering: -o-crisp-edges;
	image-rendering: -webkit-optimize-contrast;
	image-rendering: pixelated;
	image-rendering: optimize-contrast;
}
h1,h2,h3,h4,h5,h6,p,td,form,ul,img,dl,dt,dd,body,html,optgroup
{
	border: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}
html,table,input,textarea,select
{
	font-size: 105%;
}
html,body
{
	height: 100%;
}
body
{
	color: black;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: .8em;
}
table
{
	font-size: 100%;
	border-collapse: collapse;
}
pre
{
	font-family: "Courier New", serif;
	white-space: pre-wrap;
}
img
{
	display: block;
}
#wrapper
{
	display: flex;
	min-height: 100%;
}
#content
{
	display: flex;
	flex: 1;
	flex-direction: column;
}
#debug
{
	padding: 15px;
}

/* Liens. */
a
{
	color: black;
	text-decoration: none;
	border-bottom: 1px solid #8D3B3B;

	/* Astuce pour éviter les problèmes avec les liens alignés avec flex. */
	margin-bottom: 1px;
}
a:hover
{
	border-width: 2px;
	margin-bottom: 0;
}
a.ex,a.ex:hover
{
	padding-right: 12px;
	background: url(links-external.png) no-repeat 100% 50%;
}
a:focus,a.js:focus
{
	outline: none;
}

/* Liens Javascript */
a.js
{
	border: 0;
	color: #726256;
	outline: 0;
	border-bottom: 1px dashed #726256;
	padding: 0 0 1px 0;
}
a.js:hover,
a.js.show
{
	border-bottom: 2px solid #726256;
}
a.js.show
{
	position: relative;
}
a.js.show::after
{
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 10px;
	background: no-repeat center url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAArklEQVQYlX2NOwrCUBBFL1hYWqZ0AS7BBYgLSGWZvAGLECTOtDYqb6Z0BRauwEW4AldgaavGCIo2Cn7iO3Cb4XAGxlSZ0D04dlcYu0VIVnEXZbeCJ2qp0CFQO87yNAIAeKahCp1+JSp1nE7wIo7jhjHtat7us6zfxDu+cD1jKj9q4gaow5g2KnR71ra1EgD4keuouLMxVXNOun9FAFChpTGtgxIAzPI0mhZJ+/v+ANexjBOUE/VWAAAAAElFTkSuQmCC);
	top: 100%;
	left: 0;
}

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

/* 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;
}

/* Menu */
#menu
{
	display: none;
	background: #EFEADD;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 11;
	border: 1px solid gray;
	border-width: 0 1px 1px 0;
	min-width: 13.7em;
}
#menu_inner > a,
#menu_inner > a:hover
{
	height: 47px;
	border: 0;
	display: flex;
	margin: 0;
	align-items: center;
	background: #8A7666 url(menu-close.png) no-repeat 15px center;
	color: white;
	font-weight: bold;
	padding: 0 12px 0 45px;
	font-size: 120%;
}
#menu ul
{
	margin: 0;
}
#menu li
{
	padding: 0;
}
#menu li a,
#menu li a:hover
{
	padding: 10px 12px 10px 15px;
	display: block;
	border: 0;
	margin: 0;
}
#menu li a:hover,
#menu li.current a,
#menu li.current a:hover
{
	border-left: 5px solid #8D3B3B;
	padding-left: 10px;
	background: #D7CEC7;
}
#menu li a:hover
{
	border-left-color: #D7CEC7;
}
#menu_inner > h1
{
	display: none;
}
#menu nav h1
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 0 10px;
	font-size: 75%;
	font-weight: bold;
	letter-spacing: .15em;
	text-transform: uppercase;
	background: white;
	color: inherit;
	height: 20px;
	border-bottom: 1px solid silver;
}
#menu li::before
{
	display: none;
}

/* Haut de page. */
header
{
	border-bottom: 3px solid #8A7666;
	background: #F5F2EB url(background.png);
	display: flex;
	height: 44px;
	padding: 0 7px;
	align-items: center;
}

/* Haut de page : titre de section */
#header_section
{
	flex: 1;
	display: flex;
	align-items: center;
}
#header_section > a
{
	border: 0;
	display: flex;
	padding: 0;
	margin-right: 15px;
}
#header_section > a#dashboard_link
{
	margin-right: 10px;
}
h2
{
	margin: 4px 0 0;
	font-size: 130%;
	font-weight: normal;
	font-style: italic;
}
h2 a,h2 a:hover
{
	border: 0;
	padding: 0;
	color: #333;
}
h2::before
{
	font-style: normal;
	font-size: 120%;
	font-family: "Courier New", Verdana, sans-serif;
	margin-right: 10px;
	content: ">";
	color: #606060;
}

/* Menu utilisateur */
.connect_avatar
{
	border: 0;
	padding: 0;
	display: block;
}
.connect_avatar img
{
	border-radius: 50%;
	border: 1px solid transparent;
	object-fit: cover;
	width: 36px;
	height: 36px;
}
#header_links .connect_avatar,
#header_links > img
{
	display: none;
}
#header_links
{
	display: none;
	position: absolute;
	right: 5px;
	top: 65px;
	flex-direction: column;
	z-index: 10;
	background: #fff;
	border: 1px solid #aaa;
}
#header_links a
{
	padding: 10px 20px 10px 10px;
	display: block;
	border: 0;
	margin: 0;
	background-position: 90% center;
}
#header_links a:hover
{
	background-color: #F0F0F0;
}
#gallery_view a
{
	padding-right: 25px;
}

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

/* Contenu. */
main
{
	padding: 0 7px 10px;
	flex: 1;
}
main > *:first-child
{
	margin-top: 35px;
}
.page_content
{
	display: flex;
}
.page_content > div:first-child
{
	flex: 1;
}
#browse
{
	display: none;
}
span.text
{
	max-width: 600px;
	display: inline-block;
}
a[data-box-list]
{
	display: none;
}

/* Pied de page. */
footer
{
	left: 205px;
	border-top: 2px solid #8A7666;
	padding: 5px 10px 8px;
	text-align: center;
	background: #F5F2EB url(background.png);
}
#footer_time
{
	display: block;
	margin-bottom: 5px;
}
#footer_icons
{
	display: block;
	margin-top: 5px;
}
#footer_sep
{
	display: none;
}

/* Icône de chargement */
.loading
{
	position: relative;
	width: 32px;
	height: 32px;
}
.loading::after
{
	content: '';
	background: #8D3B3B;
	position: absolute;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	transform: scale(0);
	opacity: 1;
	animation: loading 0.8s ease-out infinite;
}
@keyframes loading
{
	100%
	{
		transform: scale(1.0);
		opacity: 0;
	}
}



/**
 * Formulaires.
 *
 */
form:not(.tool) + form
{
	margin-top: 50px;
}
form.page
{
	margin-top: 40px;
}
fieldset
{
	margin: 20px 0 0;
	padding: 5px 0 0 10px;
	border: 0;
	position: relative;
	background: linear-gradient(90deg, silver, transparent);
	background-size: 100% 1px;
	background-repeat: no-repeat;
}
@media (min-width: 1200px) { fieldset { background-size: 85% 1px; }}
@media (min-width: 1400px) { fieldset { background-size: 75% 1px; }}
@media (min-width: 1600px) { fieldset { background-size: 65% 1px; }}
@media (min-width: 1800px) { fieldset { background-size: 55% 1px; }}
fieldset + fieldset,
fieldset + .browse_anchor
{
	margin-top: 35px;
}
.browse_anchor
{
	position: relative;
	top: -20px;
}
fieldset.nolegend
{
	border: 0;
	padding-top: 0;
	margin-top: 0;
}
fieldset[disabled] input,
fieldset[disabled] label,
fieldset[disabled] select,
fieldset[disabled] textarea,
.field.disabled input,
.field.disabled label,
.field.disabled select,
.field.disabled textarea
{
	cursor: not-allowed;
}
fieldset[disabled] .field,
.field.disabled
{
	color: gray;
}
legend
{
	margin: 0;
	padding: 0 5px;
	color: #385074;
	font-family: Arial, sans-serif;
	font-weight: bold;
	letter-spacing: .04em;
	background: white;
}
@supports (-ms-ime-align: auto) /* Edge fix */
{
	legend
	{
		margin: -6px 0 18px;
	}
}
legend + table
{
	margin-top: 15px;
}
.field
{
	margin: 15px 0;
	line-height: 2em;
}
.field_sep
{
	display: block;
	margin: 8px 0;
}
.field > br
{
	margin: 0 0 5px;
}
.field_sublvl
{
	margin-left: 15px;
}

/* Bouton d'envoi. */
input[type="button"],
input[type="reset"],
input[type="submit"]
{
	border: 1px solid silver;
	margin: 20px 0 5px;
	padding: 6px 9px;
	background: linear-gradient(0deg, #E5E5E5, #FFFFFF);
	white-space: nowrap;
	border-radius: 5px;
	outline: none;
	font-size: 110%;
}
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active
{
	background: linear-gradient(0deg, #FFFFFF, #E5E5E5);
}
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus
{
	border-color: gray;
}
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover
{
	box-shadow: 0 0 6px silver;
}
input[type="button"] + input[type="button"],
input[type="submit"] + input[type="reset"]
{
	margin-left: 10px;
}
input[type="button"][disabled],
input[type="reset"][disabled],
input[type="submit"][disabled],
input[type="button"][disabled]:active,
input[type="reset"][disabled]:active,
input[type="submit"][disabled]:active,
input[type="button"][disabled]:focus,
input[type="reset"][disabled]:focus,
input[type="submit"][disabled]:focus,
input[type="button"][disabled]:hover,
input[type="reset"][disabled]:hover,
input[type="submit"][disabled]:hover
{
	color: #aaa;
	border-color: #ddd;
	background: none;
	outline: none;
	box-shadow: none;
}

/* Bouton de sélection de fichier. */
.nojs .button_file
{
	display: none;
}
.js .file_hide
{
	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;
	background: #FAFAFA;
	padding: 0 4px;
	height: 2em;
	outline: none;
	margin: 0;
}
input[type="email"].large,
input[type="number"].large,
input[type="password"].large,
input[type="text"].large,
input[type="url"].large
{
	display: block;
	margin-top: 5px;
	width: 95%;
	max-width: 35em;
}
textarea
{
	font-family: monospace, sans-serif;
	line-height: 1.3em;
	border: 1px solid silver;
	background: #FAFAFA;
	padding: 4px;
	display: block;
	margin: 5px 0 0 0;
	width: 95%;
	max-width: 45em;
	min-height: 2em;
	outline: none;
}

/* Date et heure */
input[type="number"][class^="dt_"]
{
	width: 5.5em;
	font-size: 100%;
	margin-bottom: 5px;
}
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_reset
{
	display: inline-block;
	height: 1.85em;
	width: 1.85em;
	border: 0;
	margin: 0;
	position: relative;
	top: 1px;
}
a.dt_now
{
	background: url(icons/16x16/calendar-now.png) no-repeat center;
}
a.dt_reset
{
	background: url(icons/16x16/cancel.png) no-repeat center;
}

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

/* Listes. */
select
{
	border: 1px solid silver;
	background: #FAFAFA;
	max-width: 300px;
	height: 2.2em;
	outline: none;
}
select[disabled]
{
	cursor: not-allowed;
}
select[multiple]
{
	display: block;
	margin-top: 5px;
	height: auto;
}
optgroup
{
	font-style: normal;
}
option[selected]
{
	background: #CEC7C2;
}
option[disabled]
{
	color: #777;
}
.day
{
	margin-bottom: 5px;
}

/* É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;
}

/* Boutons de formulaires */
#form_buttons
{
	display: flex;
	margin: 25px 0 20px;
	line-height: 3em;
}
#form_buttons input[type="submit"]
{
	margin: 0;
}
#form_save
{
	display: none;
}
#form_actions
{
	text-align: right;
	margin-bottom: 10px;
	flex: 1;
}
#form_actions a[data-box-list]
{
	display: none;
}
#section_logs #form_actions,
#section_items_pending #form_actions,
#section_users #form_actions,
#section_votes #form_actions
{
	margin-left: auto;
}

/* Champs erronés */
.field_error input,
.field_error input:focus,
.field_error select,
.field_error select:focus,
.field_error textarea,
.field_error textarea:focus
{
	border: 1px solid #C78722;
	outline: 1px solid #C78722;
}

/* Éléments secondaires */
.action_second
{
	display: none;
}
.list_action option
{
	max-width: 20em;
}
#change_hits
{
	padding: 0 4px;
	height: 23px;
}

/* Blocs à mettre à la ligne */
.block
{
	display: block;
	margin: 5px 0 10px;
}
.block + .sep
{
	display: none;
}

/* Action sur la sélection */
#form_actions #selection_action
{
	margin: 15px 8px 0 0;
}
#form_actions .action_second
{
	margin: 15px 8px 0 0;
}
#form_actions input[name="selection"]
{
	margin-top: 10px;
}
#action_selection
{
	margin-top: 30px;
}

/* Recherche */
#search_query
{
	width: 80%;
	max-width: 25em;
}
#search_date_start
{
	margin-bottom: 0;
}
#search_date_end
{
	margin-top: 0;
}
#search:has(#search_categories:checked) .search_categories_fields,
#search:has(#search_items:checked) .search_items_fields
{
	display: block;
}
#search:has(#search_categories:checked) .search_items_fields,
#search:has(#search_items:checked) .search_categories_fields
{
	display: none;
}
#adv_search
{
	display: none;
}
#adv_search.show
{
	display: block;
}

/* Catégories */
.cat_settings > div + div
{
	margin-top: 20px;
}

/* Bouton de visualisation du mot de passe. */
.password_container
{
	display: flex;
	border-bottom: 2px solid transparent;
	width: calc(100% + 2px);
	margin-top: 6px;
	margin-bottom: -2px;
}
.password_container input[type]
{
	margin: 0;
	border-right: 0;
}
.password_container input[type] + .password_view
{
	width: 3em;
	min-width: 3em;
	max-width: 3em;
}
.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;
	height: 100%;
	width: 100%;
	background: #808080;
}
form.page .password_container
{
	width: calc(95% + 10px);
	margin-top: 5px;
}
form.page .password_container input[type].large
{
	max-width: calc(32em + 3px);
}
@media (min-width: 1200px)
{
	form.page .password_container input[type].large
	{
		max-width: calc(32em + 1px);
	}
}



/**
 * HTML dans les textarea.
 *
 */
/* Étiquette HTML */
.html_outer
{
	display: block;
	margin: 5px 0 -5px 0;
}
.html_inner
{
	position: relative;
	display: inline-block;
}
.html_inner > span
{
	display: block;
	padding: 4px 5px;
	background: silver;
	color: white;
	position: absolute;
	right: 20px;
	top: 1px;
	transform: translateY(-100%);
	font-size: 80%;
	line-height: normal;
}
.html_inner > textarea
{
	margin: 0;
	display: inline-block;
}
.html_inner > textarea:focus + span
{
	background: gray;
}
.js .html_inner > span
{
	cursor: pointer;
}
.js .html_inner.active > span,
.js .html_inner > span:hover,
.js .html_inner > textarea:focus + span:hover
{
	background: #5A77B2;
}



/**
 * Barre de bouton de formulaire flottante.
 *
 */
#submit
{
	margin: 25px -10px -20px;
	position: sticky;
	bottom: 0;
	overflow: hidden;
	background: white;
	width: calc(100% + 10px);
	z-index: 9;
}
#submit > div
{
	display: flex;
	align-items: center;
	padding: 15px 10px;
	margin-top: 5px;
	position: relative;
}
#submit > div::before
{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	height: 1px;
	width: 100%;
	background: linear-gradient(90deg, #808080, white);
	background-size: 100% 100%;
	background-repeat: no-repeat;
}
#submit input[type="submit"]
{
	margin: 0;
}
#content #submit.submit_pages
{
	margin-bottom: -10px;
}
#content #submit.submit_save #form_save
{
	display: flex;
}
@media (min-width: 1200px) { #submit > div::before { background-size: 85% 100%; }}
@media (min-width: 1400px) { #submit > div::before { background-size: 75% 100%; }}
@media (min-width: 1600px) { #submit > div::before { background-size: 65% 100%; }}
@media (min-width: 1800px) { #submit > div::before { background-size: 55% 100%; }}

/* Avec action sur la sélection */
#submit.submit_actions > div
{
	padding: 5px 0;
}
#submit.submit_actions > div::before
{
	background: #808080;
}
#submit.submit_actions #form_actions
{
	padding-left: 10px;
	margin: 0;
}
#submit.submit_actions #form_save
{
	padding-left: 15px;
	margin: 0;
}
#submit.submit_actions #form_save input,
#submit.submit_actions #form_actions input,
#submit.submit_actions #form_actions label,
#submit.submit_actions #form_actions select
{
	margin: 5px 0;
	display: inline-block;
}
#submit.submit_actions #form_actions .action_second
{
	margin: 0;
}
#submit.submit_actions.submit_table
{
	margin: 25px 0 -20px;
	width: 100%;
}
#submit.submit_actions.submit_table #form_save
{
	padding-left: 0;
}



/**
 * Tableaux.
 *
 */
#page_table
{
	margin-top: 20px;
}
#page_table #obj_links_js
{
	justify-content: flex-end;
}

/* Style "default" */
table.default.page
{
	margin: 0 auto 20px;
}
table.default th
{
	border: 1px solid #B0AB80;
	padding: 12px 15px;
	text-align: center;
	font-weight: bold;
	color: #333;
	border-bottom: 2px solid #8F837B;
	background: #F9F7F1;
}
table.default th.null
{
	background: none;
	border-width: 0 0 2px 0;
}
table.default td
{
	border: 1px solid silver;
	padding: 15px 10px;
	text-align: left;
	vertical-align: top;
}
table.default td.num
{
	text-align: right;
}
table.default td br
{
	margin-bottom: 8px;
}
table.default td.selectable_zone
{
	text-align: center;
	background: white url(background-action.png) repeat 0 0;
}
table.default tr.even td
{
	background-color: #F8F8F8;
}
table.default tr.selected td
{
	background-color: #E6E0D2 !important;
}
table.default tr.selected td.selectable_zone
{
	background-color: #665C54 !important;
}
table.default tr.selected td.selectable_zone input[type="checkbox"]:checked
{
	outline: 1px solid white;
}
table.default input[type="text"]
{
	width: 90%;
}

/* Liens de filtre */
table td.filter .filter_link
{
	display: none;
}

/* Informations de profil */
#profile_infos
{
	margin: 25px 0 15px;
}
#profile_infos input[type="text"]
{
	width: 90%;
}
#profile_infos td:nth-child(2),
#profile_infos td:nth-child(3)
{
	text-align: right;
}
#profile_infos td
{
	padding: 6px 8px;
	vertical-align: middle;
}
#profile_infos th
{
	white-space: nowrap;
}

/* Groupes */
#groups
{
	margin: 30px auto 0;
}
#groups .type,
#groups .title,
#groups .description,
#group_permissions
{
	display: none;
}
#group_permissions.show
{
	display: block;
}

/* Style "light" */
table.light td
{
	padding: 5px 10px;
	border: 1px solid silver;
	vertical-align: top;
}
table.light td.num
{
	text-align: right;
}
table.light tr:hover td
{
	background: #eee;
}
table.light tr:hover th
{
	background: none;
}
table.light th.title
{
	padding: 4px 8px;
	border: 1px solid silver;
	font-weight: normal;
}



/**
 * Contenu.
 *
 */
/* Titres */
h3
{
	margin: 0 0 20px;
	padding-top: 2px;
	font-size: 120%;
	font-weight: bold;
	color: #444;
	font-family: Arial, sans-serif;
}
h3 a
{
	color: #444;
}
h3.page
{
	margin: 20px 0 25px;
	min-height: 20px;
	display: flex;
	align-items: center;
}
h3.page .help_link
{
	top: 0;
}
h3.page a:not(.help_link)
{
	border: 0;
	margin: 0;
}

/* Menu de section. */
#menu_section
{
	margin: 20px 0 25px;
}
#menu_section li
{
	display: inline-block;
	margin: 0 0 5px;
}
#menu_section li a
{
	display: flex;
	padding: 10px;
	background: #f0f0f0;
	font-weight: bold;
	color: gray;
	border: 1px solid gray;
	margin: 0;
}
#menu_section li a:active,
#menu_section li.current a,
#menu_section li.current a:hover
{
	color: #323232;
	background: white;
}

/* Menu de sous-section. */
#page_subsection
{
	display: block;
}
#content_subsection
{
	flex: 1;
	padding-right: 0;
}
#menu_subsection
{
	padding: 25px 0 0;
	margin: 30px 0 0;
}
#menu_subsection_infos
{
	display: none;
}
#menu_subsection_inner > h3
{
	margin: 0 0 15px 0;
	font-size: 135%;
	font-weight: normal;
	text-align: center;
	font-family: Verdana, Arial, Helvetica, sans-serif;
}
#menu_subsection ul + h3
{
	margin-top: 25px;
}
#menu_subsection li
{
	max-width: 400px;
	margin: 0 auto 6px;
}
#menu_subsection li a,
#menu_subsection li a:hover
{
	padding: 0 15px 0 10px;
	display: flex;
	align-items: center;
	border: 1px solid silver;
	margin: 0;
	color: #333;
	position: relative;
	background: #F0F0F0;
	white-space: nowrap;
	height: 38px;
}
#menu_subsection li.current a::before,
#menu_subsection li a:hover::before
{
	content: '';
	height: 40px;
	width: 5px;
	position: absolute;
	left: -5px;
	top: -1px;
}
#menu_subsection li a:hover
{
	color: black;
}
#menu_subsection li a:hover::before
{
	background: gray;
}
#menu_subsection li.current a::before,
#menu_subsection li.current a:hover::before
{
	left: -4px;
	background: #8D3B3B;
}
#menu_subsection li.current a
{
	color: #000;
	background: white;
	margin-left: -1px;
	padding-left: 11px;
}
#menu_subsection li.disabled
{
	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAANElEQVQYlYXKuREAIAwDQfXfrgo4IhgeC2+8omEbdQHIaYaY9lCmOzypCkdKYaVfAFAXAAYhdkGII+oNywAAAABJRU5ErkJggg==);
	padding: 0 15px 0 10px;
	height: 38px;
	display: flex;
	align-items: center;
	border: 1px solid #DEDEDE;
	color: silver;
	cursor: not-allowed;
	max-width: 373px;
}

/* Message d'aide. */
.message_info
{
	display: block;
	font-style: italic;
	font-weight: bold;
	color: #385074;
	margin: 15px 0 0;
	max-width: 700px;
}
input + label + .message_info
{
	margin: 5px 0 0 25px;
}


/**
 * Rapports.
 *
 */
#report
{
	position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
	transform: translateY(100%);
	display: flex;
	z-index: 999;
	animation-name: report-show-1, report-hide-1;
	animation-duration: 0.2s, 0.2s;
	animation-delay: 0s, 3.2s;
	animation-fill-mode: forwards;
	animation-timing-function: linear;
}
#report.error
{
	animation-name: report-show-1;
	animation-duration: 0.2s;
	animation-fill-mode: forwards;
	animation-timing-function: linear;
}
@keyframes report-show-1
{
	from
	{
		transform: translateY(100%);
	}
	to
	{
		transform: translateY(0%);
	}
}
@keyframes report-hide-1
{
	from
	{
		transform: translateY(0%);
	}
	to
	{
		transform: translateY(100%);
	}
}
#report .report_msg
{
	min-height: 40px;
	padding: 10px 30px 10px 20px;
	display: flex;
	align-items: center;
	max-width: 1200px;
	cursor: pointer;
	width: 100%;
}
#report .report_msg p
{
	font-size: 120%;
	font-weight: bold;
	display: flex;
	align-items: center;
	font-style: italic;
}
#report .report_error
{
	background: #D60E0E;
}
#report .report_error p
{
	color: white;
}
#report .report_info
{
	background: #0E6CD6;
}
#report .report_info p
{
	color: white;
}
#report .report_success
{
	background: #739C2C;
}
#report .report_success p
{
	color: white;
}
#report .report_warning
{
	background: #CB9225;
}
#report .report_warning p
{
	color: white;
}

/* Rapport classique. */
.report_classic .report_msg
{
	margin: 0 0 25px;
}
.report_classic h3
{
	margin-bottom: 30px;
}
.report_classic h3#report_details
{
	margin-top: 40px;
}
.report_classic .report_msg p
{
	margin-bottom: 5px;
	font-weight: bold;
	min-height: 18px;
	padding-left: 25px;
	background: no-repeat left top;
	display: flex;
	align-items: center;
}
.report_classic .report_success p
{
	color: #648F27;
}
.report_classic .report_success p:first-child
{
	background-image: url(icons/18x18/success.png);
}
.report_classic .report_warning p
{
	color: #BC8722;
}
.report_classic .report_warning p:first-child
{
	background-image: url(icons/18x18/warning.png);
}
.report_classic .report_error p
{
	color: #D60E0E;
}
.report_classic .report_error p:first-child
{
	background-image: url(icons/18x18/error.png);
}
.report_classic .report_info p
{
	color: #456B95;
}
.report_classic .report_info p:first-child
{
	background-image: url(icons/18x18/information.png);
}

/* Dans un formulaire */
form.page .report_classic
{
	margin-top: 20px;
	max-width: 700px;
}



/**
 * Ajout de fichiers.
 *
 */
/* Rapport de scan */
#scan_report
{
	margin-top: 40px;
}
#scan_report #datetime_link
{
	margin: 10px 0 20px;
}

/* Rapport détaillé. */
#report_details,
#scan_report_details
{
	display: none;
}
.report_details
{
	margin-top: 35px;
	padding-left: 27px;
	background: no-repeat 0 5px;
	background-image: url(icons/18x18/success.png);
}
.report_details table
{
	border: 1px solid #8F837B;
	border-collapse: collapse;
	border-left: 4px solid #86B533;
}
.report_details th
{
	border: 1px solid #8F837B;
	border-bottom-width: 2px;
	padding: 5px 10px;
	background: #F5F2EB;
	color: #252525;
}
.report_details td
{
	padding: 5px 10px;
	border: 1px solid #C3BEAD;
	vertical-align: top;
}
.report_details td.object
{
	font-family: "Courier New", Verdana, sans-serif;
}
.report_details td.number
{
	text-align: right;
}
.report_details_errors
{
	background-image: url(icons/18x18/error.png);
}
.report_details_errors table
{
	border-left-color: #CC4C42;
}
.report_details_warning
{
	background-image: url(icons/18x18/warning.png);
}
.report_details_warning table
{
	border-left-color: #CB9225;
}



/**
 * Liens de navigation entre les pages.
 *
 */
.pages
{
	margin: 30px auto;
	position: relative;
	width: 100%;
}
.pages_inner
{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 6px 0;
	position: relative;
}
.pages form
{
	margin: 0 10px;
}
.pages form input
{
	width: 2.5em;
	height: 30px;
}

/* Liens. */
.pages_inner div > *
{
	display: flex;
	height: 30px;
	width: 30px;
	margin: 0 5px;
	border: 1px solid silver;
	background: #FAFAFA;
	font-size: 0;
}
.pages_inner a:hover
{
	background: #eee;
}
.pages_inner .first > *,
.pages_inner .last > *
{
	width: 28px;
}

/* Icônes. */
.pages_inner div > *::after
{
	content: '';
	background: no-repeat 0 0 url(nav-arrow.png);
	width: 7px;
	height: 9px;
	opacity: .75;
	margin: auto;
}
.pages_inner .first > *::after,
.pages_inner .last > *::after
{
	width: 14px;
	background-repeat: repeat-x;
}
.pages_inner .first > *::after,
.pages_inner .prev > *::after
{
	transform: rotate(180deg);
}

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



/**
 * Icônes.
 *
 */
.icon
{
	padding: 0 0 2px 22px;
	background-repeat: no-repeat;
	background-position: left center;
	cursor: pointer;
}
.icon_accept
{
	background-image: url(icons/16x16/accept.png);
}
.icon_add
{
	background-image: url(icons/16x16/add.png);
}
.icon_avatar
{
	background-image: url(icons/16x16/avatar.png);
}
.icon_browse
{
	background-image: url(icons/16x16/browse.png);
}
.icon_capture
{
	background-image: url(icons/16x16/film-arrow.png);
}
.icon_category_add
{
	background-image: url(icons/16x16/category-add.png);
}
.icon_comment
{
	background-image: url(icons/16x16/comment.png);
}
.icon_date
{
	background-image: url(icons/16x16/calendar.png);
}
.icon_delete
{
	background-image: url(icons/16x16/delete.png);
}
.icon_edit
{
	background-image: url(icons/16x16/edit.png);
}
.icon_error_db
{
	background-image: url(icons/16x16/error-sql.png);
}
.icon_error_php
{
	background-image: url(icons/16x16/error-php.png);
}
.icon_favorite
{
	background-image: url(icons/16x16/favorite.png);
}
.icon_files_add
{
	background-image: url(icons/16x16/files-add.png);
}
.icon_geoloc
{
	background-image: url(icons/16x16/map.png);
}
.icon_group_add
{
	background-image: url(icons/16x16/group-add.png);
}
.icon_help
{
	background-image: url(icons/16x16/help.png);
}
.icon_mail
{
	background-image: url(icons/16x16/mail.png);
}
.icon_map
{
	background-image: url(icons/16x16/map.png);
}
.icon_marker_add
{
	background-image: url(icons/16x16/marker-add.png);
}
.icon_marker_delete
{
	background-image: url(icons/16x16/marker-delete.png);
}
.icon_options
{
	background-image: url(icons/16x16/sort-date.png);
}
.icon_password
{
	background-image: url(icons/16x16/key.png);
}
.icon_profile
{
	background-image: url(icons/16x16/profile.png);
}
.icon_reject
{
	background-image: url(icons/16x16/reject.png);
}
.icon_search
{
	background-image: url(icons/16x16/search.png);
}
.icon_search_options
{
	background-image: url(icons/16x16/search-options.png);
}
.icon_select
{
	background-image: url(icons/16x16/select.png);
}
.icon_selection_all
{
	background-image: url(icons/16x16/selection-all.png);
}
.icon_selection_free
{
	background-image: url(icons/16x16/selection-free.png);
}
.icon_selection_square
{
	background-image: url(icons/16x16/selection-square.png);
}
.icon_settings
{
	background-image: url(icons/16x16/settings.png);
}
.icon_star
{
	background-image: url(icons/16x16/star.png);
}
.icon_stats
{
	background-image: url(icons/16x16/stats.png);
}
.icon_tags
{
	background-image: url(icons/16x16/tag.png);
}
.icon_tags_add
{
	background-image: url(icons/16x16/tags-add.png);
}
.icon_user
{
	background-image: url(icons/16x16/user.png);
}
.icon_user_add
{
	background-image: url(icons/16x16/user-add.png);
}



/**
 * Console de connexion.
 *
 */
#content_connection
{
	display: flex;
}
#connection,
#installation
{
	border: 1px solid #808080;
	width: 350px;
	margin: 20px auto;
	text-align: left;
	background: white;
	box-shadow: 0 0 14px #989898;
}
#connection h1,
#installation h1
{
	font-size: 275%;
	font-weight: normal;
	border-bottom: 3px solid #8A7666;
	padding: 20px 15px 5px 30px;
	color: #555;
	font-family: Georgia, "Times New Roman", serif;
	letter-spacing: .02em;
	background: #F5F2EB url(background.png);
}
#connection h2
{
	font-weight: normal;
	font-style: normal;
	color: #333;
	font-size: 150%;
	margin-bottom: 30px;
}
#connection h2::before
{
	display: none;
}
#connection form
{
	padding: 15px 30px;
}
#connection_link
{
	margin: -1px 0 10px;
	padding-top: 10px;
	text-align: right;
	border-top: 1px solid #D4D4D4;
}

/* Nouveau mot de passe. */
#new_password
{
	font-size: 120%;
	padding: 15px;
	border: 1px solid silver;
	background: #fafafa;
	text-align: center;
}

/* Champs */
#connection .field input[type="email"],
#connection .field input[type="number"],
#connection .field input[type="password"],
#connection .field input[type="text"],
#connection .field input[type="url"]
{
	margin-top: 6px;
	padding: 4px 3px;
	width: calc(100% - 6px);
}
#connection_fields input[type="submit"]
{
	font-size: 120%;
	margin-bottom: 15px;
}
#connection .field .password_container input[type]
{
	margin: 0;
}



/**
 * Objets.
 *
 */
.obj
{
	margin: 8px 0;
	border-right: 4px solid #8F837B;
}
.obj:hover,
.obj.selected:hover
{
	border-right-color: #8D3B3B;
}
.obj:hover .obj_body,
.obj.selected:hover .obj_body
{
	border-left-color: #8D3B3B;
}
.obj_body
{
	border: 1px solid #8F837B;
	border-left: 4px solid #8F837B;
	border-right: 0;
	display: flex;
	background: #F9F7F1;
}
.obj_checkbox
{
	border-left: 1px solid #B3A9A1;
	background: #F9F8EF url(background-action.png) repeat 0 0;
	padding: 8px 5px 0 4px;
}
.obj_checkbox:not(.selectable_zone),
.obj_checkbox input[disabled]
{
	cursor: not-allowed;
}
.obj_checkbox input[type="checkbox"]:checked
{
	outline: 1px solid white;
}
.obj_infos
{
	flex: 1;
	flex-direction: column;
	display: flex;
}
.obj_infos div,
.obj_infos p
{
	display: flex;
}

/* Basics */
.obj_basics
{
	position: relative;
	height: 50%;
}
.obj_title
{
	flex: 1;
	align-items: center;
	padding: 0 10px;
	display: flex;
	width: 0;
	margin-right: 15px;
	white-space: nowrap;
}
.obj_title_link
{
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 1000px;
}
.obj_title_link:has(a)
{
	padding: 2px 0;
}
.obj_title_link a
{
	font-weight: bold;
	color: #2F2E29;
}
.obj .obj_childs
{
	display: none;
}
.obj_password
{
	margin: 4px -10px 0 0;
	cursor: help;
}
.obj_status
{
	border-right: 10px solid #8EA155;
	color: #616C3A;
	font-weight: bold;
	letter-spacing: .08em;
	font-family: Georgia, serif;
	padding: 0 8px;
	margin-right: 10px;
	align-items: center;
}
.obj_deactivated .obj_status
{
	border-color: #E37171;
	color: #851B1B;
}
.obj_pending .obj_status
{
	border-color: #DCB350;
	color: #85661B;
}
.obj_status span
{
	display: none;
}

/* Details */
.obj_details
{
	height: 50%;
	padding: 0 10px 2px;
}
.obj_details p.obj_cat
{
	flex: 1;
	justify-content: flex-end;
}
.obj_cat
{
	align-items: center;
}
.obj_cat a
{
	font-family: Georgia, serif;
	letter-spacing: .05em;
	border-color: #A89F8A;
	color: #3C382E;
}
.obj_cat img
{
	margin: -1px -3px 0 6px;
	cursor: help;
}
.obj_details table
{
	display: block; /* Firefox fix (section Incidents) */
}

/* Lien vers la galerie */
a.obj_gallery_link
{
	display: none;
}

/* Objets invisibles */
.obj_invisible .obj_body,
.obj_invisible .obj_image,
.obj_invisible .obj_checkbox
{
	background-color: white;
}
.obj_invisible,
.obj_invisible .obj_body,
.obj_invisible .obj_image,
.obj_invisible .obj_checkbox,
.obj_invisible .obj_fold
{
	border-color: silver;
}
.obj_invisible .obj_title_link a
{
	color: #555;
}
.obj_invisible .obj_title_link a:hover
{
	color: #2F2E29;
}
.obj_invisible .obj_image img
{
	opacity: .8;
}
.obj_invisible .obj_image:hover img
{
	opacity: 1;
}

/* Objets sélectionné */
.obj.selected .obj_body,
.obj.selected .obj_body a,
.obj.selected .obj_image
{
	background-color: #E6E0D2;
}
.obj.selected,
.obj.selected .obj_body
{
	border-color: #665C54;
}
.obj.selected .obj_checkbox
{
	background-color: #665C54;
}

/* Parties dépliables */
.obj_fold,
.obj_fold.show,
.obj_details p.obj_links
{
	display: none;
}



/**
 * Viewer.
 *
 */
#viewer
{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	background: rgba(0,0,0,0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: zoom-out;
	padding: 10px;
	transform: scale(2.0);
}
#viewer img, #viewer video
{
	max-width: 100%;
	max-height: 100%;
	padding: 5px;
	background: white;
	transform: scale(0.5);
}
#viewer video
{
	cursor: default;
}



/**
 * Vignettes.
 *
 */
.obj_image
{
	border-right: 1px solid #B3A9A1;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.obj_image:hover
{
	background: #ECE6D6;
}
.obj_image a,
.obj_image a:hover
{
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	margin: 0;
	width: 59px;
	height: 59px;
}
.obj_image img
{
	max-width: 49px;
	max-height: 49px;
}
.obj_image .viewer
{
	cursor: zoom-in;
}

/* Vidéo */
span.duration
{
	position: absolute;
	z-index: 1;
	bottom: 5px;
	right: 5px;
	display: flex;
	align-items: center;
	padding: 3px 5px;
	background: #222;
	color: #fff;
	font-size: 90%;
}

/* Aperçu d'un objet */
#obj_thumb
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	min-height: 50px;
	padding: 0 0 15px;
}
#obj_thumb::after
{
	content: '';
	position: absolute;
	bottom: 0;
	height: 10px;
	width: calc(100% - 1px);
	max-width: 200px;
	margin-left: 1px;
	background: silver;
}
#obj_thumb.activate::after
{
	background: #8EA155;
}
#obj_thumb.deactivate::after
{
	background: #E37171;
}
#obj_thumb.pending::after
{
	background: #DCB350;
}
#obj_thumb a
{
	position: relative;
	display: block;
	border: 0;
	margin: 0;
}
#obj_thumb a.viewer
{
	cursor: zoom-in;
}
#obj_thumb img
{
	max-width: 200px;
	max-height: 180px;
}
#obj_thumb img[src$="cat-empty.png"]
{
	padding: 15px;
}

/* Grandes vignettes. */
#obj_form.large .obj_image a
{
	width: 89px;
	height: 89px;
}
#obj_form.large .obj_image img
{
	max-width: 79px;
	max-height: 79px;
}
#obj_form.large .obj_password
{
	margin-top: 9px;
}



/**
 * Objets : affichage en grille.
 *
 */
body.grid
{
	/* On affiche en permanence la barre de défilement verticale du
	   navigateur pour éviter des problèmes d'affichage des vignettes. */
	overflow-y: scroll;
}
#obj_grid > div
{
	flex: 1;
}
#obj_grid .pages
{
	display: none;
	width: 80%;
}
#obj_grid .pages.hidden,
#obj_grid .pages form
{
	display: none;
}

/* Outils */
#obj_grid .tools
{
	display: none;
	margin: 0 0 20px;
}
#obj_grid .tool
{
	margin: 0;
}

/* Elargissement de la zone */
#obj_grid.extend
{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 100;
	background: white;
	display: flex;
	min-height: 100%;
}
#obj_grid.extend > div
{
	padding: 15px;
}
#obj_grid.extend > div:first-child
{
	padding-right: 0;
}
#obj_grid.extend #obj_panel
{
	padding-left: 0;
	margin-right: 0;
}
#obj_grid.extend .pages
{
	width: 70%;
}

/* Vignettes */
#obj_grid_container
{
	display: flex;
	margin: 0 -7px 15px 0;
}
#obj_grid_form
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin: 10px 0 0 -10px;
	flex: 1;
}
.pages:not(.hidden) + #obj_grid_container #obj_grid_form
{
	margin-top: 0;
}
#obj_grid_form + div
{
	flex: 1;
}
#obj_grid_form dl
{
	margin: 1px 8px 16px;
	border: 0;
	overflow: hidden;
}
#obj_grid_form dl.selected
{
	background: #eee;
	outline: 2px solid #8A7666;
	box-shadow: 7px 7px 4px #ccc;
}
#obj_grid_form dt a
{
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	margin: 0 auto 6px;
	outline: none;
	padding: 4px;
}
#obj_grid_form dl:not(.obj)
{
	visibility: hidden;
}
#obj_grid_form dl dt:hover,
#obj_grid_form dl.in_selection dt
{
	background: #eee;
}
#obj_grid_form dl.obj_deactivated > *
{
	opacity: .5;
}
#obj_grid_form dl.obj_deactivated:hover > *
{
	opacity: 1;
}

/* Vignettes : titre */
#obj_grid_form dd
{
	display: flex;
	overflow: hidden;
	white-space: nowrap;
	margin: 0 4px 4px;
}
#obj_grid_form dd a
{
	font-size: 85%;
	color: #333;
	border-color: gray;
	padding: 0;
}
#obj_grid_form dd a:hover
{
	color: black;
	border-bottom: 2px solid gray;
}

/* Vignettes : case à cocher */
#obj_grid_form dt
{
	position: relative;
}
#obj_grid_form dt > span
{
	position: absolute;
	top: 0;
	right: 0;
	background: #8A7666;
	padding: 7% 7% 12% 12%;
	border-radius: 0 0 0 50%;
	opacity: 0.5;
	display: none;
	z-index: 1;
}
#obj_grid_form dt > span input[type="checkbox"]
{
	filter: brightness(100);
	outline: 1px solid white;
}
#obj_grid_form dt > span input[type="checkbox"]:checked
{
	filter: grayscale(1);
}
@-moz-document url-prefix()
{
	#obj_grid_form dt > span input[type="checkbox"]:checked
	{
		filter: grayscale(1) brightness(1.3);
	}
}
#obj_grid_form dt > span:hover
{
	opacity: 1;
}
#obj_grid_form:not([data-mode="2"]) dl.in_selection dt > span
{
	opacity: 1;
	display: block;
}
#obj_grid_form:not([data-mode="2"]) dt:hover > span
{
	display: block;
}

/* Icône de chargement et bouton pour non-JS */
#obj_grid_loading
{
	display: none;
	margin: 100px 0;
}
#obj_grid_js
{
	margin: 50px 15px 0;
	opacity: 0;
	animation: grid-js 0s 2s forwards;
}
@keyframes grid-js
{
	to
	{
		opacity: 1;
	}
}

/* Panneau latéral. */
#obj_panel
{
	display: none;
	visibility: hidden;
	flex-direction: column;
	margin: 0 0 0 15px;
	width: 460px;
	max-width: 460px;
	min-width: 460px;
}
#obj_grid_noresult,
#obj_grid_noitem
{
	display: none;
}
#section_items_pending #obj_panel
{
	margin-top: 10px;
}
#obj_panel > div
{
	position: relative;
	min-width: 460px;
}
#obj_panel > div > div
{
	margin: 0;
	flex: 1;
	display: none;
	border: 1px solid silver;
	border-top: 0;
	border-left: 0;
	padding: 15px 0;
}
#obj_panel_extend
{
	position: absolute;
	top: -6px;
	right: 0;
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid silver;
}

/* Panneau latéral : menu. */
#obj_panel_menu
{
	border-bottom: 1px solid silver;
	display: flex;
	padding: 0 0 0 20px;
}
#obj_panel_menu li a
{
	display: flex;
	box-sizing: border-box;
	position: relative;
	align-items: center;
	margin: 0 0 0 -1px;
	padding: 4px 8px 3px;
	top: 7px;
	background: #F0F0F0;
	color: gray;
	border: 1px solid silver;
	outline: 0;
}
#obj_panel_menu li:first-child a
{
	margin-left: 28px;
}
#obj_panel_menu li a:hover
{
	top: 4px;
	padding: 4px 8px 6px;
}
#obj_panel_menu li.current a
{
	top: 1px;
	border-bottom-color: white;
	padding: 7px 8px 6px;
	color: black;
	background: white;
}
#obj_panel_menu li.current a::before
{
	content: '';
	position: absolute;
	bottom: -1px;
	left: -1px;
	height: 1px;
	width: 1px;
	background: silver;
}
#obj_panel_menu li[data-select="2"] a span
{
	margin-left: 5px;
}

/* Panneau latéral : sous-menu. */
.obj_panel_submenu
{
	display: flex;
	flex-direction: column;
	margin: -16px 0;
	background: white;
	padding: 20px 0 10px;
	border-right: 1px solid silver;
}
.obj_panel_submenu li
{
	margin-bottom: 10px;
}
.obj_panel_submenu a
{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border: 1px solid silver;
	border-right: 0;
	padding: 0;
	margin: 0;
	background: #F0F0F0;
	outline: 0;
}
.obj_panel_submenu img
{
	opacity: .5;
}
.obj_panel_submenu li.current a
{
	background: white;
	position: relative;
}
.obj_panel_submenu li.current img,
.obj_panel_submenu a:hover img
{
	opacity: 1;
}
.obj_panel_submenu li.current a::after
{
	content: '';
	display: block;
	position: absolute;
	height: 26px;
	width: 1px;
	background: white;
	top: 0;
	right: -1px;
}
#obj_panel_submenu_password
{
	display: none;
}

/* Panneau latéral : contenu. */
.obj_panel_content .report_classic
{
	margin-top: 10px;
}
.obj_panel_content
{
	width: 430px;
	padding: 0 15px;
	box-sizing: border-box;
	flex-direction: column;
	display: none;
	overflow-y: auto;
}
#obj_panel h4
{
	display: inline-block;
	margin: 5px auto 20px 10px;
	padding: 0 5px;
	color: #385074;
	font-family: Arial, sans-serif;
	font-weight: bold;
	letter-spacing: .04em;
	background: white;
	height: 1.2em;
	position: relative;
}
#obj_panel h4 + form p.field:first-child
{
	margin-top: 0;
}
#obj_panel h4::after
{
	content: '';
	display: block;
	position: absolute;
	height: 1px;
	width: 380px;
	top: 0.6em;
	left: -10px;
	z-index: -1;
	background: linear-gradient(90deg, silver, transparent);
	background-size: 100% 1px;
	background-repeat: repeat-x;
}
#obj_panel #obj_panel_infos
{
	display: flex;
}
#obj_panel_infos_password
{
	min-height: 100px;
	padding-bottom: 10px;
}
.obj_panel_content textarea,
.obj_panel_content input[type="password"].large,
.obj_panel_content input[type="text"].large
{
	width: 375px;
	min-width: 375px;
	max-width: 375px;
}
#obj_panel .obj_panel_help_icon
{
	position: relative;
}
#obj_panel .obj_panel_help_icon .help_link
{
	position: absolute;
	top: 5px;
	left: 360px;
}
#obj_panel #group_views
{
	width: 50%;
	min-width: 50%;
	max-width: 50%;
}

/* Panneau latéral : aperçu */
#obj_panel_preview div
{
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 5px;
}
#obj_panel_preview p
{
	margin-top: 10px;
	line-height: 1.5em;
}
#obj_panel_preview img:hover
{
	cursor: zoom-in;
	max-height: 400px;
}
.obj_panel_content .obj_gallery_link
{
	position: absolute;
	left: 350px;
}

/* Panneau latéral : listes */
.obj_panel_content li
{
	line-height: 1.8em;
	font-weight: bold;
	color: #444;
}
.obj_panel_content li span
{
	font-weight: normal;
	color: #000;
}

/* Panneau latéral : infos EXIF */
#obj_panel_camera ul
{
	display: none;
}

/* Panneau latéral : stats */
#obj_panel_stats p
{
	margin: 10px 0;
}

/* Panneau latéral : géolocalisation */
#obj_panel .obj_panel_content div[id$="worldmap"]
{
	width: 100%;
	height: 280px;
	min-height: 280px;
	max-height: 280px;
	background: #eee;
	z-index: 0;
	margin-bottom: 10px;
}
#obj_panel form[id$="geolocation_form"] .icon + .icon
{
	float: right;
}

/* Panneau latéral : éléments de formulaires */
#edit_sort_album,
#edit_sort_category
{
	margin-top: 20px;
}
#edit_sort_album select,
#edit_sort_category select
{
	max-width: 180px;
}
#edit_sort_album select + select,
#edit_sort_category select + select
{
	max-width: 100px;
}



/**
 * Objets : listes flottantes.
 *
 */
#box_list_container
{
	display: none;
}



/**
 * Objets "mini".
 *
 */
#obj_mini_form
{
	margin-top: 20px;
}
.obj_mini
{
	margin-top: 10px;
}
.obj_mini_body
{
	display: flex;
	height: 38px;
	align-items: center;
}
.obj_mini_body > p
{
	border-top: 1px solid silver;
	border-bottom: 1px solid silver;
}
.obj_mini_body > p.obj_mini_selectable,
.obj_mini_body > p.obj_mini_sortable
{
	min-width: 38px;
	height: 38px;
	border-right: 1px solid silver;
	display: flex;
	align-items: center;
	justify-content: center;
}
.obj_mini_body > p.obj_mini_selectable
{
	border-left: 1px solid silver;
}
.obj_mini_body > p.obj_mini_selectable:not(.selectable_zone)
{
	cursor: not-allowed;
}
.obj_mini_body > p.obj_mini_sortable
{
	background: url(background-action.png);
	cursor: move;
}
.obj_mini_body > p.obj_mini_title
{
	display: flex;
	flex: 1;
	width: 0;
	max-width: 450px;
	padding: 0 15px;
	overflow: hidden;
	border-right: 1px solid silver;
}
.obj_mini_body > p.obj_mini_title span
{
	height: 38px;
	display: flex;
	align-items: center;
	white-space: nowrap;
}
.obj_mini_body > p.obj_mini_action
{
	border-right: 1px solid silver;
	padding: 0 5px 0 10px;
	height: 38px;
	display: flex;
	align-items: center;
}
.obj_mini_body > p.obj_mini_action .icon
{
	height: 16px;
}
.obj_mini_body > p.obj_mini_action a span
{
	display: none;
}
#obj_mini_links_js p
{
	margin-bottom: 15px;
}
#obj_mini_links_js .sep
{
	display: none;
}

/* Métadonnées */
#obj_mini_form.meta .obj_mini_body > p.obj_mini_title span:first-child
{
	display: none;
	border-right: 1px solid #B3A9A1;
	padding-right: 15px;
	margin-right: 15px;
	width: 200px;
	min-width: 200px;
	max-width: 200px;
}
#obj_mini_form.meta.tags .obj_mini_body > p.obj_mini_title
{
	max-width: 670px;
}
#obj_mini_form.meta.tags .obj_mini_body > p.obj_mini_title span:first-child
{
	display: flex;
}
#obj_mini_form.meta.tags .obj_mini_edit
{
	max-width: 700px;
}

/* Objet sélectionné */
.obj_mini.selected .obj_mini_body > p
{
	background-color: #F9F7F1;
	border-top: 1px solid #8F837B;
	border-bottom: 1px solid #8F837B;
}
.obj_mini.selected p.obj_mini_sortable
{
	background-image: url(background-action.png);
}
.obj_mini.selected p.obj_mini_selectable
{
	border-left-color: #8F837B;
}
.obj_mini.selected p.obj_mini_selectable,
.obj_mini.selected p.obj_mini_sortable
{
	border-right-color: #B3A9A1;
}
.obj_mini.selected p.obj_mini_title,
.obj_mini.selected p.obj_mini_action
{
	border-right-color: #8F837B;
}

/* Édition */
.obj_mini .obj_mini_edit
{
	display: none;
	padding: 0;
	margin: 0;
	border: 1px solid silver;
	border-top: 0;
	max-width: 480px;
}
.nojs .obj_mini .obj_mini_edit
{
	display: block;
}
.obj_mini .obj_mini_edit p
{
	padding: 7px 6px 6px;
}
.obj_mini .obj_mini_edit label
{
	margin-bottom: 8px;
	display: block;
}
.obj_mini .obj_mini_edit input,
.obj_mini .obj_mini_edit textarea
{
	margin: 0;
	width: calc(100% - 10px);
	min-width: auto;
	max-width: 100%;
}



/**
 * Vignettes standard.
 *
 */
.std_thumbs > div:first-child
{
	display: flex;
	flex-wrap: wrap;
}
.std_thumbs dl
{
	margin: 12px 12px 0 0;
	display: inline-block;
}
.std_thumbs dt
{
	position: relative;
	padding: 5px;
	border: 1px solid #8F837B;
	background: #F9F7F1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
}
.std_thumbs dt img
{
	max-height: 120px;
	max-width: 120px;
}
.std_thumbs dd
{
	text-align: center;
	overflow: hidden;
	width: 120px;
	margin: 5px 6px;
	max-height: 4.5em;
	line-height: 1.5em;
	font-size: 85%;
}
.std_thumbs dd span
{
	font-weight: bold;
	color: #555;
}
.std_thumbs + .pages
{
	margin-top: 30px;
}

/* Tri des fichiers et catégories. */
#thumbs_sort dl
{
	cursor: move;
}
#thumbs_sort dl.deactivated
{
	opacity: 0.5;
}
#thumbs_sort dl.deactivated dt
{
	border-color: silver;
	background: white;
}



/**
 * Outils.
 *
 */
.tools div
{
	display: block;
	margin: 0 0 20px 0;
}
.tool, .tools span.sep
{
	display: none;
}
.tool.show
{
	display: block;
}
.tool fieldset
{
	border: 1px solid silver;
	border-width: 1px 0;
	background: #fafafa;
	padding: 10px 20px 20px 15px;
	margin: 0 0 20px;
}
.tool fieldset::after
{
	display: none;
}
.tool input[type="email"],
.tool input[type="number"],
.tool input[type="password"],
.tool input[type="text"],
.tool input[type="url"],
.tool select,
.tool textarea
{
	background: white;
}
.tool input.large
{
	width: 20em;
	display: inline;
	margin-top: 0;
}

/* Outils JS pour les objets. */
#obj_links_js
{
	display: flex;
	margin: 10px 0 30px;
	align-items: center;
}
#obj_links_js > form:first-child
{
	display: none;
}



/**
 * Navigation de section.
 *
 */
#section_nav
{
	margin: -1px 0 20px;
}
#breadcrumb
{
	margin-top: -5px;
	line-height: 2.5em;
}
#breadcrumb .current
{
	font-weight: bold;
	color: #333;
	border-width: 0;
}
#breadcrumb .current:hover,
a#filter_name:hover
{
	border-width: 2px;
}
#breadcrumb + p
{
	margin: 20px 0;
}
#breadcrumb + p > span:nth-child(1)
{
	font-weight: bold;
	color: #333;
}
#search_result_query, #filter_name
{
	color: #8D3B3B;
}
a#filter_name
{
	border-width: 1px;
}



/**
 * Options : listes noires.
 *
 */
#blacklists
{
	margin-top: 0;
}
#blacklists h3
{
	margin-bottom: 10px;
	text-align: center;
}
#blacklists > div:first-child
{
	display: grid;
	grid-gap: 20px 15px;
	margin-bottom: 40px;
}
@media (min-width: 600px)
{
	#blacklists > div:first-child
	{
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 1500px)
{
	#blacklists > div:first-child
	{
		grid-template-columns: repeat(4, 1fr);
	}
}
#blacklists textarea
{
	min-width: calc(100% - 10px);
	max-width: calc(100% - 10px);
	width: calc(100% - 10px);
}



/**
 * Options : variables.
 *
 */
.field_var li span
{
	font-weight: bold;
	font-family: "Courier New", serif;
	display: inline-block;
	min-width: 10em;
	margin-bottom: 12px;
}
.field_var_list li
{
	margin-bottom: 10px;
	max-width: 600px;
	line-height: 2em;
}
.field_var_list > div:last-child span
{
	font-weight: bold;
	font-family: "Courier New", serif;
	display: block;
	margin-top: 4px;
}



/**
 * Thèmes.
 *
 */
#themes > div:first-child
{
	display: flex;
	flex-wrap: wrap;
}
#themes input[type="submit"]
{
	margin-top: 30px;
}
.theme
{
	border: 1px solid silver;
	border-left-width: 5px;
	margin: 20px 20px 0 0;
	display: flex;
	position: relative;
}
.theme::after
{
	content: '';
	position: absolute;
	display: block;
	top: 0;
	right: 15px;
	height: 40px;
	width: 15px;
	background: #ddd;
}
.theme_button
{
	padding: 15px;
	background-image: url(background-action.png);
	border-right: 1px solid silver;
}
.theme_body
{
	padding: 15px 45px 15px 15px;
}
.theme_body img
{
	width: 200px;
	cursor: pointer;
}
.theme_body h1
{
	margin-top: 10px;
	text-align: center;
	font-size: 130%;
	color: #333;
	font-weight: normal;
}

/* Thème sélectionné. */
.theme.selected
{
	border-color: #8F837B;
	background: #F9F7F1;
}
.theme.selected .theme_button
{
	border-color: #B3A9A1;
}
.theme.selected::after
{
	background: #8EA155;
}

/* Hover */
.theme:hover,
.theme.selected:hover
{
	border-left-color: #8D3B3B;
}



/**
 * Maintenance.
 *
 */
#maintenance_summary
{
	margin: 40px 0;
}
#check_stats_details a
{
	font-weight: bold;
	color: #333;
}
#check_stats_details table
{
	margin: 15px 0 30px;
}
#check_stats_details td
{
	padding: 5px 10px;
}



/**
 * Section "Ajout de fichiers".
 *
 */
#section_scan form
{
	margin-bottom: 15px;
}



/**
 * Groupes : permissions d'accès aux catégories.
 *
 */
#group_categories
{
	display: block;
	margin: 15px 0 20px;
}
.group_categories
{
	padding: 1px 15px 15px;
	margin-bottom: 15px;
}
.group_categories.select
{
	background: #F7F4ED;
}
.group_categories input + label
{
	font-size: 110%;
	font-weight: bold;
	color: #333;
	cursor: pointer;
}
.group_categories:not(.select) a
{
	cursor: default;
}

/* Listes */
.group_categories p + ul
{
	opacity: 0.3;
}
.group_categories.select p + ul
{
	opacity: 1;
}
.group_categories ul
{
	padding-left: 2em;
}
.group_categories li
{
	margin-top: 8px;
	font-weight: bold;
	position: relative;
	line-height: 1.6em;
}
.group_categories span.fold + a + ul
{
	display: none;
}

/* [+] */
.group_categories li > span
{
	position: absolute;
	display: inline-block;
	left: -2em;
	font-size: 125%;
	font-family: "Courier New", monospace;
}
.group_categories li > span a,
.group_categories li > span a:hover
{
	border: 0;
	padding: 0;
	font-weight: normal;
}
.group_categories.select li > span a:hover
{
	background: #B8B09A;
	color: white;
}

/* Catégories */
.group_categories a.allowed,
.group_categories a.forbidden
{
	padding-left: 20px;
	background-repeat: no-repeat;
	background-position: 0% 50%;
	border: 0;
	font-size: 110%;
}
#group_whitelist a.allowed:not(.by_parent)
{
	color: #119F22;
	border-bottom: 1px #119F22 dotted;
}
#group_blacklist a.forbidden:not(.by_parent)
{
	color: #BE1111;
	border-bottom: 1px #BE1111 dotted;
}
.group_categories:not(.select) a
{
	outline: none;
}

/* Icônes */
.group_categories a.allowed
{
	background-image: url(icons/16x16/allowed.png);
}
.group_categories a.forbidden
{
	background-image: url(icons/16x16/forbidden.png);
}
#group_whitelist a.allowed_child span
{
	background: url(icons/12x12/allowed-mini.png) no-repeat right top;
	padding-right: 15px;
}
#group_blacklist a.forbidden_child span
{
	background: url(icons/12x12/forbidden-mini.png) no-repeat right top;
	padding-right: 15px;
}



/**
 * Tableau de bord.
 *
 */
/* Structure générale */
#dashboard
{
	margin-top: 50px;
	display: block;
}
#dashboard > div
{
	width: 100%;
	padding: 0;
}
#dashboard h3
{
	border-bottom: 2px solid silver;
	padding: 7px 0 5px 28px;
	background-position: 0 50%;
	background-repeat: no-repeat;
	margin: 0 0 10px;
}
#dashboard .dashboard_bloc
{
	padding-bottom: 40px;
}
#dashboard span:not(.duration)
{
	font-weight: bold;
	color: #444;
}
#dashboard div.inner > div > a:hover
{
	border-color: silver;
}
#dashboard li
{
	margin-bottom: 5px;
}

/* Navigation entre objets */
.dashboard_nav
{
	text-align: center;
	float: right;
	top: 6px;
	position: relative;
	display: flex;
	align-items: center;
}
.dashboard_nav a
{
	width: 16px;
	height: 16px;
	display: block;
	border: 0;
	outline: 0;
	padding: 0;
	margin: 0;
}
.dashboard_nav span
{
	font-size: 80%;
	margin: 0 5px;
}
.dashboard_nav .dashboard_prev
{
	background: url(icons/16x16/arrow-prev.png) no-repeat center;
	visibility: hidden;
}
.dashboard_nav .dashboard_next
{
	background: url(icons/16x16/arrow-next.png) no-repeat center;
}

/* Derniers objets */
.dashboard_bloc .inner > div
{
	display: none;
}
.dashboard_bloc .inner > div[id$="_1"]
{
	display: flex;
}
.dashboard_bloc .thumb
{
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #ddd;
	padding: 0;
	margin: 0 15px 0 0;
}
.dashboard_bloc .thumb img
{
	max-width: 130px;
	max-height: 130px;
}
.dashboard_bloc .inner p
{
	line-height: 1.5em;
}

/* Aide de démarrage. */
#dashboard_welcome h3
{
	background-image: url(icons/20x20/light-bulb.png);
}
#dashboard_welcome .inner
{
	font-size: 110%;
	max-width: 600px;
	line-height: 1.6em;
	margin: 25px auto 0;
}
#dashboard_welcome .inner strong
{
	color: #333;
}
#dashboard_welcome li
{
	margin: 15px 0 0 18px;
	position: relative;
}
#dashboard_welcome li::before
{
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	background: #8D3B3B;
	top: .55em;
	left: -18px;
}
#dashboard_welcome_hide
{
	margin-top: 40px;
	font-size: 110%;
	text-align: center;
}
#dashboard_welcome_hide a
{
	display: none;
}
#dashboard_welcome_hide_form input[type="submit"]
{
	margin: 0;
}

/* Derniers utilisateurs */
#dashboard_lastusers h3
{
	background-image: url(icons/20x20/users.png);
}
#dashboard_lastusers .thumb
{
	width: 80px;
	height: 80px;
}
#dashboard_lastusers .thumb img
{
	max-width: 80px;
	max-height: 80px;
}

/* Derniers fichiers */
#dashboard_lastitems h3
{
	background-image: url(icons/20x20/images.png);
}
#dashboard_lastitems .thumb
{
	position: relative;
	width: 130px;
	min-width: 130px;
	height: 130px;
}

/* Derniers commentaires */
#dashboard_lastcomments h3
{
	background-image: url(icons/20x20/comments.png);
}
#dashboard_lastcomments .comment
{
	flex-direction: column;
}
#dashboard_lastcomments .last_comment_infos
{
	border-top: 1px solid #eee;
	padding-top: 10px;
	margin-top: 10px;
}
#dashboard_lastcomments .last_comment_message
{
	word-break: break-word;
	overflow-wrap: break-word;
}

/* Statistiques de la galerie */
#dashboard_stats h3
{
	background-image: url(icons/20x20/stats.png);
}
#dashboard_stats .inner
{
	display: flex;
}
#dashboard_stats ul
{
	border-right: 1px solid #ddd;
	width: 50%;
}
#dashboard_stats ul + ul
{
	padding-left: 12px;
	border-left: 1px solid #ddd;
	border-right: none;
}

/* Infos système */
#dashboard_sysinfos h3
{
	background-image: url(icons/20x20/system.png);
}

/* Incidents */
#dashboard_errors h3
{
	background-image: url(icons/20x20/bug.png);
	border-bottom: 2px solid #E01818;
}
#dashboard_errors p
{
	text-align: center;
}
#dashboard_errors a
{
	font-size: 110%;
	color: #840E0E;
	border-color: #840E0E;
	font-weight: bold;
}

/* En attente de validation */
#dashboard_pending h3
{
	background-image: url(icons/20x20/pending.png);
	border-bottom: 2px solid #DCB350;
}
#dashboard_pending ul
{
	text-align: center;
}
#dashboard_pending li
{
	margin-bottom: 8px;
}
#dashboard_pending a
{
	font-size: 110%;
	color: #85661B;
	border-color: #85661B;
	font-weight: bold;
}

/* Fichiers programmés */
#dashboard_scheduled h3
{
	background-image: url(icons/20x20/clock.png);
	border-bottom: 2px solid #DCB350;
}
#dashboard_scheduled > div + div
{
	margin-top: 20px;
}
#dashboard_scheduled h4
{
	font-size: 100%;
	font-weight: bold;
	color: #333;
	margin: 0 0 10px;
}
#dashboard_scheduled li
{
	margin-bottom: 8px;
}

/* Nouvelle version */
#dashboard_new_version h3
{
	background-image: url(icons/20x20/application.png);
	border-bottom: 2px solid #8A7666;
}
#dashboard_new_version p
{
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
}



/**
 * Mise à jour.
 *
 */
#app_update h3
{
	margin: 0 0 30px;
}
#app_update p.field span
{
	color: #333;
	font-weight: bold;
}



/**
 * Aide contextuelle.
 *
 */
#help
{
	display: none;
}

/* Liens */
a.help_link
{
	display: inline-block;
	position: relative;
	top: 2px;
	border: 0;
	margin: 0 0 0 12px;
	width: 16px;
	height: 16px;
}

/* Boîte d'aide */
.help_context
{
	display: flex;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
	background: rgba(0,0,0,0.1);
	align-items: center;
	justify-content: center;
}
.help_context > div
{
	max-width: 545px;
	position: relative;
	margin-bottom: 25px;
	font-weight: normal;
	line-height: normal;
}
.help_title
{
	border-bottom: 3px solid #ACACAC;
	color: white;
	font-weight: bold;
	background: #5A77B2;
	padding: 0 5px 0 10px;
	height: 2.2em;
	display: flex;
}
.help_title h1
{
	flex: 1;
	overflow: hidden;
	white-space: nowrap;
	width: 0;
	display: flex;
	align-items: center;
	font-size: 90%;
}
.help_title h1 span
{
	cursor: default;
	padding: 0 0 0 22px;
}
.help_close
{
	background: url(icons/16x16/close.png) no-repeat 0 0;
	margin: 0 5px 0 20px;
	border: 0;
	width: 16px;
	height: 16px;
	display: block;
	position: relative;
	top: calc(50% - 8px);
	cursor: pointer;
}

/* Contenu */
.help_content
{
	max-height: calc(85vh - 50px);
	overflow: auto;
	padding: 0 15px 15px;
	color: #222;
	border: 1px solid #ACACAC;
	background: #F4F7FE;
}
.help_content h1
{
	display: none;
}
.help_content h2
{
	font-weight: bold;
	color: #333;
	margin: 20px 0 8px;
	line-height: 1.5em;
	font-style: normal;
	font-size: 100%;
}
.help_content h2::before
{
	display: none;
}
.help_content p,
.help_content pre,
.help_content li
{
	line-height: 1.6em;
	margin-top: 15px;
}
.help_content pre
{
	margin: 15px 0 0;
}
.help_content .code
{
	font-family: "Courier New", Verdana, sans-serif;
}
.help_content ul
{
	list-style: square;
	padding-left: 15px;
	margin-top: 15px;
}
.help_content ul li
{
	margin-top: 10px;
	font-weight: normal;
}

/* Icônes "standalone" */
.standalone_help
{
	position: relative;
	margin-bottom: 15px;
	margin-left: -5px;
}
.standalone_help p + a
{
	position: absolute;
}

/* Ajustements spécifiques */
#new_category_type_alb + label
{
	margin-right: 10px;
}



/**
 * Système.
 *
 */
.system_info
{
	margin: 15px 0 45px;
}
.system_info li
{
	margin: 0 0 11px 12px;
	padding: 1px 0 0 24px;
	background-repeat: no-repeat;
	background-position: 0 0;
	min-height: 18px;
}
.system_info li.ok
{
	background-image: url(icons/18x18/success.png);
}
.system_info li.error
{
	background-image: url(icons/18x18/error.png);
}
.system_info li.info
{
	background-image: url(icons/18x18/information.png);
}
.system_info li.warning
{
	background-image: url(icons/18x18/exclamation.png);
}
.system_info li span
{
	font-weight: bold;
	color: #333;
}
.system_info table
{
	margin: 15px 0;
}
.system_info td
{
	border: 1px solid silver;
	padding: 5px;
}
.system_info td + td
{
	font-weight: bold;
	color: #333;
}


/**
 * Incidents.
 *
 */
.nojs #section_errors .obj_details
{
	display: block;
}
#section_errors #section_nav
{
	margin-top: 20px;
}
#section_errors #form_actions
{
	text-align: left;
	margin: 0 auto 0 0;
}
#incidents
{
	margin-top: 25px;
}
#incidents .obj
{
	margin: 2px 0;
	border: 0;
}
#incidents .obj_body
{
	border: 0;
	background: #eee;
}
#incidents .obj:nth-child(odd) .obj_body
{
	background: #ddd;
}
#incidents .obj_title span
{
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	min-width: 0;
	padding-bottom: 3px;
}
#incidents .obj_checkbox
{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0;
	min-height: 38px;
	min-width: 38px;
	border: 0;
	border-right: 2px solid white;
	background-color: #eee;
}
#incidents .obj:nth-child(odd) .obj_checkbox
{
	background-color: #ddd;
}
#incidents .obj_details > div
{
	display: flex;
}
#incidents .obj_details > div > div
{
	width: 0;
	flex: 1;
	overflow: hidden;
}
#forum
{
	display: none;
}
#forum.show
{
	display: block;
}

/* Liens */
#incidents a.js,
#incidents a.js:hover
{
	color: #444;
	border-color: gray;
}
#incidents a.js.show::after
{
	width: 70px;
	background: no-repeat center url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAmklEQVQYlYXOsQkCQRBG4R8MDA0vtAALsAQruMgaNj7YZWdeDdZwFViEDdiBoalynqBooiDH3vlgkuFjGAEP4PVnegGtu9+nELBTjLECrmPQ3S9N0ywkSWbmQFeAnZkFfQshzIFzAZ7qup7pNzPbDq52ZrZRKXc/fv56AocikqSc8xro3f2Wc16NQkkC9kA7iSQppbSMMVbD/Rttc5J4hXy9FAAAAABJRU5ErkJggg==);
}

/* Sélection */
#incidents .obj.selected .obj_body,
#incidents .obj.selected .obj_body a,
#incidents .obj.selected .obj_checkbox
{
	background-color: silver;
}
#incidents .obj.selected .obj_body
{
	border-left: 8px solid gray;
	margin-left: -8px;
}

/* Détails */
#incidents .obj_fold
{
	margin-left: 40px;
	padding: 4px 0;
	border: 0;
}
#incidents .obj_fold .trace
{
	display: none;
}
#section_errors .obj_fold.show
{
	display: block;
}
#incidents .obj_fold div + div
{
	margin-top: 10px;
}
#incidents table td
{
	padding: 2px 6px;
	vertical-align: top;
}
#incidents table td:first-child
{
	text-align: right;
	font-weight: bold;
	color: #444;
}
#incidents .obj_fold li
{
	padding-bottom: 4px;
}




/**
 * Section "Albums".
 *
 */
main > #page_albums
{
	margin-top: 20px;
}
#nav_files nav + nav
{
	display: none;
}

/* Outils */
#tools_display
{
	display: flex;
}
#tools_display .tools
{
	flex: 1;
}

/* Modes d'affichage */
#display
{
	margin-top: -6px;
}
#display form
{
	display: none;
}
a.display_link
{
	margin: 0 0 0 5px;
	padding: 4px;
	border: 1px solid silver;
	display: inline-block;
	opacity: .25;
}
a.display_link.current,
a.display_link.current:hover
{
	opacity: 1;
	cursor: default;
}
a.display_link:hover
{
	opacity: .75;
}



/**
 * Section "commentaires".
 *
 */
.nojs #section_comments .obj_fold_edit
{
	display: block;
}
.nojs #section_comments .obj_fold_edit textarea
{
	height: 8em;
}
#page_comments .obj_title
{
	font-weight: bold;
	color: #333;
}
#page_comments .author
{
	font-weight: normal;
}
#page_comments .author::after
{
	content: ' - ';
}



/**
 * Section "tags".
 *
 */
#new_tags .field input
{
	display: block;
	margin-top: 5px;
}
#new_tags_fields input
{
	width: 80%;
}



/**
 * Section "utilisateurs".
 *
 */
#page_users #breadcrumb img
{
	display: inline;
	position: relative;
	top: 3px;
	margin-left: 3px;
	cursor: help;
}

/* Avatar. */
#section_user_avatar #avatar_current img
{
	max-width: 100%;
	height: auto;
}

/* Envoi de courriel */
#users_sendmail_fields select[multiple]
{
	width: 25em;
}
#users_sendmail_fields div:nth-child(3) > p:first-child
{
	display: none;
}



/**
 * Section "Votes".
 *
 */
#votes_form tr:nth-child(odd) td
{
	background-color: #F8F8F8;
}
#votes_form .rating img
{
	display: none;
}
#votes_form .album,
#votes_form .date,
#votes_form .ip
{
	display: none;
}
@media (min-width: 600px)
{
	#votes_form .date
	{
		display: table-cell;
	}
}

/* Vignette */
#votes_form .thumb
{
	padding: 0;
}
#votes_form .thumb > div
{
	padding: 0;
}
#votes_form .thumb a:first-child,
#votes_form .thumb a:first-child:hover
{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	margin: 0;
	width: 100px;
	height: 100px;
}
#votes_form .thumb a:first-child:hover
{
	background: #E6E0D2;
}
#votes_form .thumb img
{
	max-width: 90px;
	max-height: 90px;
}



/**
 * Géolocalisation.
 *
 */
#geolocation_worldmap
{
	background: #eee;
	height: 300px;
	z-index: 0;
}
#geolocation_worldmap .leaflet-geosearch-bar
{
	width: auto;
	max-width: 400px;
	margin: 10px 20px 0 60px;
}
div[id$="worldmap"] a,
div[id$="worldmap"] a:hover
{
	border: none;
	margin: 0;
}
#geolocation_map
{
	margin-left: -8px;
}
#geolocation_fields input.large,
#geolocation_fields textarea
{
	width: calc(100% - 20px);
	min-width: auto;
	max-width: 400px;
}
#geolocation_map .icon
{
	margin: 10px 0 0;
	display: inline-block;
}

/* Page "Carte du monde" */
#section_page_worldmap #geolocation_form
{
	margin-top: 10px;
}
#section_page_worldmap #geolocation_worldmap
{
	max-width: 1000px;
}

/* Recherche. */
#content .leaflet-control-geosearch a.reset
{
	font-size: 150%;
}
#content .leaflet-control-geosearch input
{
	background: #fff;
	text-indent: 4px;
}



/**
 * Section "Albums" : envoi de fichiers.
 *
 */
#upload
{
	margin-top: 20px;
	max-width: 720px;
}
#upload.replace
{
	display: none;
}
#upload_buttons > input
{
	margin-left: 0;
	margin-right: 10px;
}

/* 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%);
}
#upload_text_limits
{
	line-height: 1.6em;
}

/* Fichier */
#upload_list .upload_file
{
	border-bottom: 1px dotted silver;
	border-left: 4px solid #FCFCFC;
	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
{
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 20px;
	font-weight: bold;
}
#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;
	background: url(icons/16x16/cancel.png) no-repeat center;
	height: 22px;
	width: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	padding: 0;
}

/* 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;
	background-image: url(icons/16x16/exclamation.png);
}
#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;
	background-image: url(icons/16x16/exclamation-red.png);
}

/* Fichier : envoi réussi */
#upload_list .upload_file_success
{
	border-left-color: #739C2C;
}
#upload_list .upload_file_success .upload_file_progress p
{
	color: #648F27;
	background-image: url(icons/16x16/accept.png);
}

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

/* Remplacement de fichier */
#upload.replace #upload_list
{
	height: 61px;
	overflow-y: hidden;
}
#upload.replace #upload_startmsg
{
	font-size: 150%;
}



/**
 * Section "Albums" : remplacement de fichiers.
 *
 */
#section_item_replace #item_current a
{
	display: inline-block;
	border: none;
	margin: 0;
	cursor: zoom-in;
}
#section_item_replace #item_current video,
#section_item_replace #item_current img
{
	max-width: 100%;
	height: auto;
}



/**
 * Section "Albums" : nouvelle vignette.
 *
 */
#thumb_new
{
	margin-bottom: 50px;
}
#thumb_new > form:first-child
{
	margin: 40px 0 50px;
}
#thumb_new > form + form
{
	margin-bottom: 30px;
}
#thumb_new #thumbs
{
	padding-top: 1px;
}
#thumb_new .std_thumbs dt
{
	cursor: pointer;
}
#thumb_new .std_thumbs dt:hover
{
	background: #ECE6D6;
}
#thumb_new_file
{
	height: 40px;
	max-height: 40px;
	min-height: 40px;
}
#thumb_new #thumbs + fieldset
{
	padding-top: 15px;
}



/**
 * Section "Albums" : modification de la vignette et capture d'image.
 *
 */
#thumb_video_container > div
{
	max-width: 800px;
	margin-right: 20px;
}
#thumb_video video,
#thumb_video_capture
{
	width: 100%;
	margin: 10px 20px 0 0;
}
.thumb_tools
{
	margin-top: 5px;
	line-height: 2.5em;
}
#thumb_crop img
{
	margin-top: 10px;
	display: none;
}

/* imgareaselectarea */
.imgareaselect-border1, .imgareaselect-border2,
.imgareaselect-border3, .imgareaselect-border4
{
	opacity: 0.6;
}
.imgareaselect-handle
{
    background-color: #fff;
    border: solid 1px #000;
    opacity: 0.6;
}
.imgareaselect-outer
{
    background-color: #000;
    opacity: 0.6;
}



/**
 * Section "Fonctionnalités".
 *
 */
#section_features .report_classic .report_msg
{
	margin: 0 0 0 5px;
}
#features
{
	margin: 0;
}
#features_inner > div
{
	top: 0;
	border: 1px solid silver;
	position: relative;
	padding-top: 15px;
}
#features fieldset
{
	background: none;
	padding: 15px 15px 5px 15px;
	margin: 0;
	z-index: 1;
}
#features select + select
{
	margin-top: 5px;
}
#features #features_inner legend
{
	margin: 0;
}
#features_inner > div legend
{
	background: none;
	color: #666;
	font-size: 120%;
	margin-top: 20px;
}

/* Structure en grille. */
#features_inner
{
	display: grid;
	grid-gap: 10px;
	padding: 25px 5px 0;
}
#features #form_save
{
	display: flex;
}
@media (min-width: 800px)
{
	#features_inner
	{
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 1600px)
{
	#features_inner
	{
		grid-template-columns: repeat(3, 1fr);
	}
}

/* Icônes. */
#features_inner > div::after
{
	font-family: "IcoMoon";
	position: absolute;
	font-size: 250%;
	color: silver;
	top: 15px;
	right: 20px;
}
#features #a-albums-download::after { content: '\e9c7'; }
#features #a-browse::after { content: '\e975'; }
#features #a-comments::after { content: '\e932'; }
#features #a-categories-stats::after { content: '\e928'; }
#features #a-diaporama::after { content: '\f04b'; }
#features #a-exif::after { content: '\e903'; }
#features #a-geolocation::after { content: '\e947'; }
#features #a-iptc::after { content: '\e926'; }
#features #a-items-recent::after { content: '\e94f'; }
#features #a-links::after { content: '\e9cb'; }
#features #a-random-item::after { content: '\e912'; }
#features #a-rss::after { content: '\e901'; }
#features #a-search::after { content: '\e90a'; }
#features #a-selection::after { content: '\ea52'; }
#features #a-tags::after { content: '\f02c'; }
#features #a-users::after { content: '\e972'; }
#features #a-votes::after { content: '\f005'; }
#features #a-xmp::after { content: '\e913'; }

/* Fonctionnalité activée. */
#features_inner > div.activated
{
	border-color: #8F837B;
	background: #F9F7F1;
}
#features_inner > div.activated::after
{
	color: #888;
}
#features_inner > div.activated legend
{
	color: #555;
}



/**
 * Section "Activité".
 *
 */
#logs_form #obj_links_js > div:first-child
{
	display: none;
}
#logs_form tr.even
{
	background-color: #F8F8F8;
}
#logs_form td .icon
{
	cursor: text;
}
#logs_form .result .icon
{
	font-weight: bold;
	padding-bottom: 0;
}
#logs_form .result .icon_accept
{
	color: #337F34;
}
#logs_form .result .icon_reject
{
	color: #D60E0E;
}
#logs_form .user .avatar,
#logs_form .user .avatar_link,
#logs_form .date,
#logs_form .details,
#logs_form .ip
{
	display: none;
}
@media (min-width: 650px)
{
	#logs_form .date
	{
		display: table-cell;
		white-space: nowrap;
	}
}
#logs_form .space
{
	display: none;
}
#logs_form td.action
{
	line-height: 1.8em;
	padding: 6px 10px;
}
#logs_form td.action a
{
	top: 4px;
}



/**
 * Media queries : écrans de petite taille.
 *
 */
@media (min-width: 800px)
{
	/**
	 * Contenu.
	 *
	 */
	a:focus,a.js:focus
	{
		outline: 1px dotted gray;
	}

	/* Pied de page */
	#footer_icons
	{
		display: inline;
		margin: 0;
	}
	#footer_sep
	{
		display: inline;
		margin: 0 2px;
	}

	/* Menu de section */
	#menu_section
	{
		border-bottom: 1px solid gray;
		display: flex;
		margin: 0 -7px 25px;
		padding: 25px 26px 0;
		background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAANElEQVQYlYXKuREAIAwDQfXfrgo4IhgeC2+8omEbdQHIaYaY9lCmOzypCkdKYaVfAFAXAAYhdkGII+oNywAAAABJRU5ErkJggg==);
	}
	#menu_section li
	{
		margin: 0;
	}
	#menu_section li a,
	#menu_section li a:active
	{
		display: flex;
		box-sizing: border-box;
		position: relative;
		align-items: center;
		margin: 0 0 0 -1px;
		padding: 6px 10px 7px;
		top: 7px;
		background: #f0f0f0;
		font-weight: bold;
		color: gray;
		border: 1px solid gray;
	}
	#menu_section li a:hover
	{
		top: 4px;
		padding: 6px 10px 10px;
	}
	#menu_section li.current a,
	#menu_section li.current a:hover,
	#menu_section li.current a:active
	{
		top: 1px;
		padding: 9px 10px 10px;
		color: #323232;
		background: white;
		border-bottom: 1px white solid;
	}
	#menu_section li.current a::before
	{
		content: '';
		position: absolute;
		top: 1px;
		left: -1px;
		height: 100%;
		width: 1px;
		background: gray;
	}

	/* Menu de sous-section. */
	#page_subsection
	{
		display: flex;
	}
	#content_subsection
	{
		position: relative;
		margin: 0;
	}
	#menu_subsection
	{
		padding: 0 0 20px 0;
		border: 0;
		margin: 0 0 0 25px;
		min-width: 15em;
	}
	#menu_subsection_inner
	{
		border-left: 1px solid silver;
		padding: 0 0 20px;
	}
	#menu_subsection_infos
	{
		display: flex;
		margin-bottom: 15px;
		justify-content: center;
		height: 2.4em;
	}
	#menu_subsection li a,
	#menu_subsection li a:hover
	{
		height: 2.4em;
		border-left: 0;
	}
	#menu_subsection li.current a::before,
	#menu_subsection li a:hover::before
	{
		height: calc(2.4em + 2px);
	}
	#menu_subsection li.disabled
	{
		height: 2.4em;
		border-left: 0;
	}
	body[id^="section_group"] #menu_subsection_inner
	{
		padding-top: 25px;
	}

	/* Aperçu */
	#obj_thumb::after
	{
		max-width: 191px;
	}
	#obj_thumb img
	{
		max-width: 191px;
		max-height: 171px;
	}



	/**
	 * Tableaux.
	 *
	 */
	table.default th
	{
		padding: 8px 15px;
	}
	table.default td
	{
		padding: 10px;
	}
	table.default input
	{
		/* les deux sont indispensables ! */
		width: auto;
		width: calc(100%-10px);
	}
	table.light td
	{
		padding: 5px 10px;
	}



	/**
	 * Rapports.
	 *
	 */
	#report
	{
		bottom: 100px;
		right: auto;
		transform: translateX(-100%);
		animation-name: report-show-2, report-hide-2;
		animation-duration: 0.2s, 0.2s;
		animation-delay: 0s, 3.2s;
		animation-fill-mode: forwards;
		animation-timing-function: linear;
	}
	#report.error
	{
		animation-name: report-show-2;
		animation-duration: 0.2s;
		animation-fill-mode: forwards;
		animation-timing-function: linear;
	}
	@keyframes report-show-2
	{
		from
		{
			transform: translateX(-100%);
		}
		to
		{
			transform: translateX(0%);
		}
	}
	@keyframes report-hide-2
	{
		from
		{
			transform: translateX(0%);
		}
		to
		{
			transform: translateX(-100%);
		}
	}
	#report .report_msg
	{
		padding: 5px 30px 5px 20px;
		width: auto;
	}
	#report .report_msg p
	{
		font-size: 110%;
		padding-left: 25px;
		background: no-repeat left center;
	}
	#report .report_error
	{
		border-right: 5px solid #950B0B;
	}
	#report .report_error p:first-child
	{
		background-image: url(icons/18x18/error.png);
	}
	#report .report_info
	{
		border-right: 5px solid #0B4C95;
	}
	#report .report_info p:first-child
	{
		background-image: url(icons/18x18/information.png);
	}
	#report .report_success
	{
		border-right: 5px solid #5C7C24;
	}
	#report .report_success p:first-child
	{
		background-image: url(icons/18x18/success.png);
	}
	#report .report_warning
	{
		border-right: 5px solid #86611A;
	}
	#report .report_warning p:first-child
	{
		background-image: url(icons/18x18/warning.png);
	}
	#report_details,
	#scan_report_details.show
	{
		display: block;
	}



	/**
	 * Formulaires.
	 *
	 */
	select
	{
		height: 2em;
	}
	.field_sep
	{
		display: inline-block;
		margin: 0 8px 0 0;
	}

	/* Bouton d'envoi. */
	input[type="button"],
	input[type="reset"],
	input[type="submit"]
	{
		margin-top: 30px;
	}
	.field_sublvl
	{
		padding-left: 15px;
		border-left: 1px solid silver;
	}

	/* Date et heure */
	input[type="number"][class^="dt_"]
	{
		width: 6.5em;
	}

	/* Bouton de sélection de fichier. */
	.js .button_file
	{
		max-width: 600px;
	}

	/* Colonnes */
	fieldset .col2
	{
		display: flex;
	}
	fieldset .col2 > div
	{
		max-width: 50%;
	}
	fieldset .col2 > div:first-child
	{
		margin-right: 100px;
	}

	/* Blocs à mettre à la ligne */
	.block,
	.block + .sep
	{
		display: inline;
		margin: 0;
	}

	/* Table + formulaire */
	.table_form_container
	{
		text-align: center;
	}
	.table_form
	{
		display: inline-block;
		min-width: 500px;
	}
	.table_form #form_save
	{
		text-align: left;
	}
	.table_form table input[type="text"]
	{
		width: 20em;
	}



	/**
	 * Barre de bouton de formulaire flottante.
	 *
	 */
	#submit
	{
		margin: 35px -15px -20px;
	}
	#content #submit.submit_pages
	{
		margin-bottom: 10px;
	}
	#submit > div
	{
		padding: 15px;
		margin-top: 10px;
	}
	#submit input[type="submit"]
	{
		margin: 0;
	}

	/* Action sur la sélection */
	#submit.submit_actions
	{
		width: calc(100% + 15px);
	}
	#submit.submit_actions > div
	{
		padding: 10px 0;
	}



	/**
	 * Liens de navigation entre les pages.
	 *
	 */
	.pages
	{
		margin: 0 auto 20px;
		width: 60%;
	}
	.pages:last-child,
	.pages_2
	{
		margin-bottom: 0;
	}
	.pages form input
	{
		height: 23px;
	}

	/* Liens. */
	.pages_inner div > *
	{
		height: 23px;
		width: 23px;
	}

	/* Bordures. */
	*[class^="pages"]::before,
	*[class^="pages"]::after
	{
		content: '';
		position: absolute;
		height: 1px;
		width: 50%;
		background: linear-gradient(90deg, transparent, silver);
	}
	.pages_inner::before,
	.pages_inner::after
	{
		background: linear-gradient(90deg, silver, transparent);
		top: -1px;
		left: 50%;
	}
	.pages::before
	{
		top: -1px;
	}
	.pages_inner::after
	{
		top: 100%;
	}

	/* Mode d'affichage "grille". */
	#obj_grid_form
	{
		margin-top: 5px;
	}
	#obj_grid .pages form
	{
		display: block;
	}



	/**
	 * Objets.
	 *
	 */
	.obj
	{
		margin: 12px 0;
	}
	.obj_image a,
	.obj_image a:hover
	{
		width: 90px;
		height: 90px;
	}
	.obj_image img
	{
		max-width: 80px;
		max-height: 80px;
	}
	.obj_password
	{
		margin: 10px -3px 0 0;
	}
	.obj_status span
	{
		display: inline;
	}

	/* Blocs dépliables */
	.obj_box
	{
		position: relative;
		margin: 0 5px;
	}
	.obj_box_link a
	{
		display: block;
		outline: none;
		padding: 0;
		border: 1px solid silver;
		margin: 0;
	}
	.obj_box_link a img[width="20"]
	{
		margin: 4px;
	}
	.obj_box_link a img[width="24"]
	{
		margin: 2px;
	}
	.obj_box_inner
	{
		display: none;
		position: absolute;
		right: 50px;
		top: -44px;
		z-index: -1;
		background: #fff;
		border: 1px solid #aaa;
		min-width: 320px;
		max-width: 800px;
	}
	.obj_box_inner::after,
	.obj_box_inner::before
	{
		content: '';
		position: absolute;
		top: 48px;
		right: -16px;
		display: block;
		border: 10px solid transparent;
		border-width: 10px 0 10px 15px;
		border-left-color: #aaa;
	}
	.obj_box_inner::after
	{
		right: -14px;
		border-left-color: white;
	}
	.obj_box_title
	{
		color: #4E493A;
		font-weight: bold;
		display: block;
		cursor: pointer;
		background-color: #F5F2EB;
		border-bottom: 2px solid #8A7666;
		height: 20px;
		padding: 4px 40px 5px 0;
		padding: 4px 40px 5px 0;
		margin: 0;
		white-space: nowrap;
	}
	.obj_box_title span
	{
		display: block;
		padding: 4px 15px;
	}
	.obj_box_inner > div
	{
		border-top: 0;
		padding: 15px;
	}
	.obj_box_inner > div * + p
	{
		margin-top: 10px;
	}
	.obj_box_inner div p
	{
		line-height: 1.5em;
	}
	.obj_box_inner table
	{
		white-space: nowrap;
	}

	/* Grandes vignettes. */
	#obj_form.large .obj
	{
		border-right-width: 5px;
	}
	#obj_form.large .obj_body
	{
		border-left-width: 5px;
	}
	#obj_form.large .obj_image a
	{
		width: 120px;
		height: 120px;
	}
	#obj_form.large .obj_image img
	{
		max-width: 110px;
		max-height: 110px;
	}
	#obj_form.large .obj_password
	{
		margin-top: 17px;
	}
	#obj_form.large .obj_fold
	{
		margin-left: 125px;
	}
	#obj_form.large .obj_checkbox
	{
		padding: 12px 8px 0 7px;
	}
	#obj_form.large .obj_status
	{
		border-right-width: 13px;
		margin-right: 15px;
	}
	#obj_form.large .obj_cat
	{
		margin-right: 5px;
	}
	#obj_form.large .obj_childs
	{
		right: 130px;
	}
	#obj_form.large .obj_childs span
	{
		padding: 10px 14px;
		border-radius: 22px;
	}



	/**
	 * Objets "mini".
	 *
	 */
	#obj_mini_form
	{
		margin-top: 25px;
	}
	.obj_mini p.obj_mini_action
	{
		padding: 0 15px;
	}
	.obj_mini p.obj_mini_action a span
	{
		display: inline;
	}
	.obj_mini .obj_mini_edit
	{
		margin: 0 0 0 78px;
	}
	.obj_mini .obj_mini_edit p
	{
		padding: 10px 9px 9px;
	}
	.obj_mini .obj_mini_edit input,
	.obj_mini .obj_mini_edit textarea
	{
		min-width: calc(100% - 10px);
		max-width: calc(100% - 10px);
	}
	#obj_mini_links_js
	{
		display: flex;
	}
	#obj_mini_links_js p
	{
		margin: 0;
	}
	#obj_mini_links_js .sep
	{
		display: inline;
	}



	/**
	 * Outils.
	 *
	 */
	#content .tools div,
	#content .tools span
	{
		display: inline-block;
		margin: 0 0 10px 0;
	}
	#content .tool
	{
		margin-top: -5px;
	}
	#obj_grid .tools
	{
		margin: 0;
	}



	/**
	 * Tableau de bord.
	 *
	 */
	#dashboard
	{
		display: flex;
	}
	#dashboard > div
	{
		width: 50%;
		padding: 0 2%;
	}



	/**
	 * Groupes.
	 *
	 */
	#groups .type,
	#groups .title,
	#groups .description
	{
		display: table-cell;
	}
	#groups .description
	{
		max-width: 300px;
	}
	#groups .type img
	{
		float: right;
		margin-left: 15px;
		cursor: help;
	}

	/* Permissions d'accès aux catégories */
	.group_categories
	{
		width: 95%;
	}
	.group_categories li
	{
		line-height: 1.35em;
	}



	/**
	 * Console de connexion.
	 *
	 */
	#connection,
	#installation
	{
		margin: 40px auto 20px;
	}



	/**
	 * Section "Albums" : nouvelle vignette.
	 *
	 */
	#thumb_new
	{
		margin-bottom: 0;
	}
	#thumb_new #thumbs + fieldset
	{
		padding-top: 25px;
	}



	/**
	 * Section "Albums" : envoi de fichiers.
	 *
	 */
	#upload_list
	{
		height: 244px;
	}
	#upload_startmsg
	{
		font-size: 225%;
	}



	/**
	 * Section "Votes".
	 *
	 */
	#votes_form .rating img
	{
		display: inline-block;
	}
	#votes_form .album
	{
		display: table-cell;
	}



	/**
	 * Section "tags".
	 *
	 */
	#new_tags_fields input
	{
		width: 30em;
	}



	/**
	 * Pages de géolocalisation.
	 *
	 */
	#geolocation_worldmap
	{
		height: 450px;
	}



	/**
	 * Section "Fonctionnalités".
	 *
	 */
	#features_inner
	{
		grid-gap: 15px;
	}
	#features_inner > div::after
	{
		font-size: 280%;
	}




	/**
	 * Section "Activité".
	 *
	 */
	/* Utilisateur */
	#logs_form .user div
	{
		display: flex;
	}
	#logs_form .user .avatar_link,
	#logs_form .user .avatar_link:hover
	{
		display: inline-block;
		width: 40px;
		height: 40px;
		margin: 0;
		border: 0;
	}
	#logs_form .user .avatar
	{
		display: inline-block;
		object-fit: cover;
		width: 40px;
		height: 40px;
	}
	#logs_form .user .user_name
	{
		margin-left: 10px;
		white-space: nowrap;
	}
}



/**
 * Media queries : écrans de taille moyenne.
 *
 */
@media (min-width: 1280px)
{
	/**
	 * Structure générale.
	 *
	 */
	*
	{
		image-rendering: auto;
	}
	html,table,input,textarea,select
	{
		font-size: 100%;
	}
	header
	{
		padding: 0 15px;
	}
	main
	{
		padding: 0 15px 10px;
	}
	#content
	{
		margin-right: 12px;
		border: 1px solid gray;
		border-width: 0 1px;
	}

	/* Menu */
	*[rel="menu"]
	{
		display: none !important;
	}
	#menu
	{
		display: block !important;
		position: relative;
		margin: 0 12px;
		border: 1px solid #8A7666;
		border-width: 0 3px;
		background: linear-gradient(90deg, #ECE6D6, #FFFFFF);
	}
	#menu_inner
	{
		background: url(background.png);
		height: 100%;
	}
	#menu_inner > a
	{
		display: none;
	}
	#menu_inner > h1
	{
		display: block;
		text-align: center;
		padding: 20px 0;
		font-family: Georgia, "Times New Roman", serif;
		font-size: 250%;
		font-weight: normal;
		color: #606060;
	}
	#menu nav h1
	{
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin: 0 0 8px;
		padding: 0 10px;
		font-size: 75%;
		font-weight: bold;
		letter-spacing: .15em;
		text-transform: uppercase;
		background: white;
		border-bottom: 2px solid #8A7666;
		border-top: 1px solid silver;
		color: inherit;
		height: 17px;
	}
	#menu ul
	{
		color: #8A7666;
		margin-bottom: 20px;
	}
	#menu li
	{
		padding: 4px 0 5px;
	}
	#menu li::before
	{
		content: '';
		background: #8A7666;
		display: inline-block;
		height: 5px;
		width: 5px;
		margin: 0 6px 2px 10px;
	}
	#menu li.current::before
	{
		width: 15px;
		margin: 0 6px 2px 0;
	}
	#menu li a,
	#menu li a:hover,
	#menu li.current a,
	#menu li.current a:hover
	{
		padding: 0;
		display: inline;
		border: 0;
		background: none;
		border-bottom: 1px solid #8D3B3B;
	}
	#menu li a:hover,
	#menu li.current a:hover
	{
		border-width: 2px;
	}

	/* Haut de page : liens */
	.connect_avatar
	{
		border: 0;
		padding: 0;
		display: block;
	}
	.connect_avatar[src$="default_thumb.png"] img
	{
		border-color: #9A9A9A;
	}
	#user_box .connect_avatar
	{
		display: none;
	}
	img[alt="cookie"]
	{
		margin-right: 8px;
		cursor: help;
		margin-top: 1px;
	}
	#header_links .connect_avatar,
	#header_links > img
	{
		display: inline;
	}
	#header_links
	{
		display: flex !important;
		position: relative;
		right: 0;
		top: 0;
		flex-direction: row;
		align-items: center;
		background: none;
		border: 0;
	}
	#header_links::after,
	#header_links::before
	{
		display: none;
	}
	#header_links a,
	#header_links a:hover
	{
		padding: 0;
		display: inline;
		width: auto;
		margin: 1px 0 1px 0;
		border-bottom: 1px solid #8D3B3B;
		background: none;
	}
	#header_links a:hover
	{
		margin-bottom: 0;
		border-width: 2px;
	}
	#header_links a.connect_avatar
	{
		margin: 0 10px;
		padding: 0;
		border: 0;
	}
	#gallery_view
	{
		border-left: 1px solid gray;
		margin: 3px 0 0 15px;
		padding: 0 0 4px 15px;
	}
	#gallery_view a,
	#gallery_view a:hover
	{
		padding-right: 12px;
		background: url(links-external.png) no-repeat 100% 50%;
	}



	/**
	 * Contenu.
	 *
	 */
	/* Menu de section */
	#menu_section
	{
		margin: 0 -15px 25px;
	}



	/**
	 * Formulaires.
	 *
	 */
	textarea
	{
		min-width: 45em;
	}

	/* Boutons de formulaires */
	#form_save
	{
		flex: 1;
		display: block;
	}

	/* Action sur la sélection */
	#form_actions
	{
		flex: auto;
		margin-left: 20px;
	}
	#form_actions #selection_action,
	#form_actions .action_second,
	#form_actions input[name="selection"]
	{
		margin: 0;
	}
	#form_actions a[data-box-list]
	{
		display: inline-block;
		margin: 0 12px 0 4px;
	}



	/**
	 * Navigation de section.
	 *
	 */
	#breadcrumb
	{
		margin-top: 0;
		line-height: 1.6em;
	}



	/**
	 * Objets.
	 *
	 */
	/* Lien vers la galerie */
	a.obj_gallery_link,
	a.obj_gallery_link:hover
	{
		display: inline-block;
		background: url(icons/16x16/arrow.png) no-repeat center;
		margin: 0 0 0 10px;
		border: 0;
		padding: 0;
		height: 16px;
		width: 16px;
		min-width: 16px;
	}
	#breadcrumb a.obj_gallery_link
	{
		position: absolute;
		margin: 2px 10px 0;
	}

	/* Parties dépliables */
	.obj_fold
	{
		margin-left: 94px;
		border: 1px solid #B3A9A1;
		border-width: 0 0 1px 1px;
		padding: 10px;
	}
	.obj_fold.show:not(.log_details)
	{
		display: block;
	}
	.obj_fold_edit p.field:first-child,
	.obj_fold_dates p.field:first-child,
	.obj_fold_password p.field:first-child,
	.obj_fold_settings p.field:first-child,
	.obj_fold_tags p.field:first-child
	{
		margin-top: 0;
	}
	.obj_fold_edit p.field:last-child,
	.obj_fold_dates p.field:last-child,
	.obj_fold_password p.field:last-child,
	.obj_fold_settings p.field:last-child,
	.obj_fold_tags p.field:last-child
	{
		margin-bottom: 5px;
	}
	.obj_fold_stats > p
	{
		margin-top: 15px;
	}
	.obj_fold_infos.show,
	.obj_fold_stats.show
	{
		display: block;
		padding: 15px 10px;
	}
	.obj_fold_dates
	{
		padding-top: 0;
		padding-bottom: 5px;
	}
	.obj_fold_dates p
	{
		margin: 0 30px 0 0;
		padding-top: 10px;
		display: inline-block;
	}

	/* Parties dépliables : liens */
	.obj .obj_details p.obj_links
	{
		display: flex;
	}
	.obj_links
	{
		flex: 1;
		align-items: center;
		overflow: hidden;
		width: 10px;
		white-space: nowrap;
		margin-right: 30px;
	}
	.obj_links .sep
	{
		margin: 0 7px;
	}
	.obj_details p.obj_cat
	{
		flex: 0;
		white-space: nowrap;
	}



	/**
	 * Objets : listes flottantes.
	 *
	 */
	#box_list_container
	{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.1);
		display: flex;
		justify-content: center;
		z-index: 999;
	}
	#box_list_outer
	{
		position: absolute;
		background: white;
		width: 45em;
		max-width: 45em;
	}
	#box_list_title
	{
		display: flex;
		align-items: center;
		background: #8F837B;
	}
	#box_list_outer h1
	{
		font-size: 100%;
		font-weight: bold;
		color: white;
		padding: 8px 12px 8px 8px;
		display: flex;
		align-items: center;
		flex: 1;
	}
	#box_list_outer h1 img
	{
		margin-right: 8px;
	}
	#box_list_close
	{
		background: url(icons/16x16/close.png) no-repeat 0 0;
		margin: 0 8px 0 20px;
		width: 16px;
		height: 16px;
		display: block;
		cursor: pointer;
	}
	#box_list_search
	{
		margin: 0 5px 4px;
	}
	#box_list_search input
	{
		width: calc(100% - 10px);
		min-width: calc(100% - 10px);
		max-width: calc(100% - 10px);
	}
	#box_list
	{
		overflow-x: hidden;
		overflow-y: auto;
	}
	#box_list_inner
	{
		border: 1px solid #aaa;
		border-top: none;
		padding-top: 4px;
	}
	#box_list:not(.cat_list) li
	{
		padding: 0 20px 0 5px;
		height: 2.2em;
		display: flex;
		align-items: center;
		cursor: pointer;
		white-space: nowrap;
	}
	#box_list:not(.cat_list) li:not([selected]):hover
	{
		background: #ddd;
	}

	/* Détails. */
	.box_info
	{
		display: none;
		padding: 8px 10px;
		border: 1px solid #aaa;
		line-height: 1.8em;
	}
	#box_list_container .box_info
	{
		border-top: 0;
	}

	/* Cases à cocher. */
	#box_list ul li > span.checkbox
	{
		display: flex;
		align-items: center;
		justify-content: center;
		height: 12px;
		min-height: 12px;
		max-height: 12px;
		width: 12px;
		min-width: 12px;
		max-width: 12px;
		border: 1px solid #555;
		margin-right: 8px;
	}
	#box_list ul li > span.checkbox + span
	{
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	#box_list ul li > span.checkbox > span
	{
		display: none;
		height: 8px;
		width: 8px;
		background: #555;
	}
	#box_list ul li.selected > span.checkbox > span
	{
		display: flex;
	}
	.box_list_message
	{
		padding: 8px 8px 12px;
	}

	/* Icône de chargement. */
	#box_list_loading
	{
		display: flex;
		justify-content: center;
	}
	#box_list_loading div
	{
		margin: 20px 0;
	}

	/* Media queries. */
	@media (min-height: 0px)
	{
		#box_list_outer
		{
			margin-top: 5vh;
		}
		#box_list
		{
			max-height: calc(90vh - 150px);
		}
	}
	@media (min-height: 400px)
	{
		#box_list_outer
		{
			margin-top: 8vh;
		}
		#box_list
		{
			max-height: calc(85vh - 170px);
		}
	}
	@media (min-height: 800px)
	{
		#box_list_outer
		{
			margin-top: 12vh;
		}
		#box_list
		{
			max-height: calc(75vh - 120px);
		}
	}

	/* Icônes */
	a[data-box-list]
	{
		display: inline-block;
		margin: 0 0 0 8px;
		border: 0;
		position: relative;
		top: 3px;
	}



	/**
	 * Objets : affichage en grille.
	 *
	 */
	#obj_grid
	{
		display: flex;
	}
	#obj_grid span[class*="icon_select"]
	{
		display: inline;
	}



	/**
	 * Outils.
	 *
	 */
	.tool input.large
	{
		width: 25em;
	}

	/* Outils JS pour les objets. */
	#obj_links_js
	{
		margin: 0 0 25px;
	}
	#obj_links_js > form:first-child
	{
		flex: 1;
		display: block;
	}



	/**
	 * Liste "Parcourir".
	 *
	 */
	#browse
	{
		display: block;
		position: absolute;
		right: 0;
	}
	#breadcrumb
	{
		margin-right: 10em;
	}
	#section_logs #browse,
	#section_users #browse,
	#section_comments #browse,
	#section_votes #browse
	{
		position: relative;
		float: right;
	}
	#browse_content
	{
		display: none;
	}
	#browse_inner::after,
	#browse_inner::before
	{
		content: '';
		position: absolute;
		top: -17px;
		right: 20px;
		display: block;
		border: 10px solid transparent;
		border-width: 0 10px 16px;
		border-bottom-color: #aaa;
	}
	#browse_inner::after
	{
		top: -15px;
		border-width: 0 10px 16px;
		border-bottom-color: white;
	}
	#browse_inner
	{
		position: absolute;
		right: 0;
		top: 40px;
		z-index: 2;
		background: #fff;
		border: 1px solid #aaa;
		min-width: 15em;
		max-width: 58em;
	}
	#browse_inner > div
	{
		overflow-x: hidden;
		overflow-y: auto;
		max-height: 600px;
	}
	#browse_inner .box_info
	{
		border-width: 1px 0 0;
	}

	/* Largeur. */
	#browse_inner[data-levels="1"] { width: 35em; max-width: 35em; }
	#browse_inner[data-levels="2"] { width: 37em; max-width: 37em; }
	#browse_inner[data-levels="3"] { width: 39em; max-width: 39em; }
	#browse_inner[data-levels="4"] { width: 41em; max-width: 41em; }
	#browse_inner[data-levels="5"] { width: 43em; max-width: 43em; }
	#browse_inner[data-levels="6"] { width: 45em; max-width: 45em; }
	#browse_inner[data-levels="7"] { width: 47em; max-width: 47em; }
	#browse_inner[data-levels="8"] { width: 49em; max-width: 49em; }
	#browse_inner[data-levels="9"] { width: 51em; max-width: 51em; }
	#browse_inner[data-levels="10"] { width: 53em; max-width: 53em; }
	#browse_inner[data-levels="11"] { width: 55em; max-width: 55em; }
	#browse_inner[data-levels="12"] { width: 57em; max-width: 57em; }

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

	/* Liste. */
	.browse li[id*="c"] *
	{
		background-color: #C99F9F;
	}
	.browse li:not([id*="c"]):hover *
	{
		background-color: #ddd;
	}
	.browse li[disabled]:hover a
	{
		background: none;
	}
	.browse li[id*="p"] b
	{
		padding-left: 22px;
		background-repeat: no-repeat;
		background-position: 0 center;
		background-image: url(icons/16x16/key.png);
	}

	/* Liens. */
	.browse li a
	{
		display: flex;
		flex: 1;
		align-items: center;
		height: 1.9em;
		margin: 0;
		padding: 0 5px;
		border: 0;
		outline: none;
		min-width: 0;
	}
	.browse li b
	{
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		font-weight: normal;
	}
	.browse li i
	{
		font-style: normal;
	}
	.browse li:is([id*="i"], [id*="f"]) a
	{
		padding-left: 30px;
		background-repeat: no-repeat;
		background-position: 5px center;
	}
	.browse li[id*="i"] a
	{
		background-image: url(icons/18x18/image-grey.png);
	}
	.browse li[id*="f"] a
	{
		background-image: url(icons/18x18/video-grey.png);
	}

	/* Catégories. */
	:is(#box_list,#browse).cat_list[data-subcats="1"] li
	{
		display: none;
	}
	:is(#box_list,#browse).cat_list[data-subcats="1"] li:is([id*=":0{"], [id*=":1{"])
	{
		display: flex;
	}
	.cat_list[data-subcats="1"]:not(.search) li:not(:has(> i)) > a
	{
		padding-left: calc(5px + 1.95em);
	}
	.cat_list li[disabled] a
	{
		cursor: not-allowed;
	}
	.cat_list li[disabled] *
	{
		color: gray;
	}
	.cat_list li[selected]
	{
		background: #CEC7C2;
	}
	.cat_list li:not([selected]):hover
	{
		background: #ddd;
	}

	/* Catégories : boutons "+" et "-". */
	.cat_list 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;
	}
	.cat_list:is(.search, [data-subcats="0"]) li > i
	{
		display: none;
	}
	.cat_list li:hover > i:hover
	{
		background: #8F837B;
		color: white;
	}

	/* 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: #000;
	}

	/* Catégories : 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; }



	/**
	 * Groupes.
	 *
	 */
	#groups .title,
	#groups .description
	{
		display: table-cell;
	}
	#groups .description
	{
		max-width: 300px;
	}

	/* Permissions d'accès aux catégories */
	#group_categories
	{
		display: flex;
	}
	.group_categories
	{
		padding: 0 15px 20px;
		width: 50%;
		margin: 0;
	}



	/**
	 * Incidents.
	 *
	 */
	#section_errors #forum textarea
	{
		max-width: 60em;
		min-width: 60em;
	}
	#incidents .obj_fold .trace
	{
		display: block;
	}
	#incidents .obj_fold div
	{
		display: flex;
		flex: 1;
	}
	#incidents .obj_fold div div:first-child
	{
		max-width: 40%;
	}
	#incidents .obj_fold div + div
	{
		margin: 0;
	}
}



/**
 * Media queries : écrans de taille moyenne - large.
 *
 */
@media (min-width: 1400px)
{
	/**
	 * Tableaux.
	 *
	 */
	/* Liens de filtre */
	table td.filter > div
	{
		padding-right: 26px;
		position: relative;
	}
	table td.filter .filter_link
	{
		display: inline-block;
		visibility: hidden;
		position: absolute;
		opacity: 0.5;
		top: 0;
		right: 0;
		border: 0;
		padding: 0;
		height: 16px;
		margin-left: 10px;
	}
	table td.filter:hover .filter_link
	{
		visibility: visible;
	}
	table td.filter .filter_link:hover
	{
		opacity: 1;
	}



	/**
	 * Objets : affichage en grille.
	 *
	 */
	#obj_grid_res
	{
		display: none;
	}
	#obj_panel
	{
		display: flex;
	}



	/**
	 * Section "Votes".
	 *
	 */
	#votes_form .ip
	{
		display: table-cell;
	}
	#votes_form .thumb a:first-child,
	#votes_form .thumb a:first-child:hover
	{
		border-right: 1px solid silver;
	}
	#votes_form .rating span:not(:last-child)
	{
		position: relative;
		top: 1px;
	}
	#votes_form .album
	{
		max-width: 200px;
	}



	/**
	 * Section "Activité".
	 *
	 */
	#logs_form #obj_links_js > div:first-child
	{
		display: block;
		margin-right: auto;
	}
	#logs_form .details,
	#logs_form .ip,
	#logs_form .space
	{
		display: table-cell;
	}
	#logs_form .space
	{
		height: 10px;
		border: 0;
		padding: 0;
	}

	/* Details */
	#logs_form tr.log_details.show
	{
		display: table-row;
		border: none;
	}
	#logs_form tr.log_details > td
	{
		border: none;
		padding: 0;
	}
	#logs_form tr.log_details > td > div
	{
		margin: 0 0 10px 20px;
		border: 1px solid silver;
		border-top: 0;
		padding: 10px;
	}
	#logs_form tr.log_details > td > div > div:not(:last-child)
	{
		margin-bottom: 15px;
	}
	#logs_form tr.log_details table.light th
	{
		background: none;
		border-bottom-width: 2px;
	}
	#logs_form tr.log_details .log_match
	{
		color: #D60E0E;
	}

	/* Lien de filtre */
	#votes_form .thumb > div
	{
		padding-right: 36px;
	}
	#votes_form .thumb .filter_link
	{
		margin: 10px;
	}



	/**
	 * Options : variables.
	 *
	 */
	.field_var,
	.field_var_list
	{
		display: flex;
	}
	.field_var_list
	{
		margin-top: -15px;
	}
	.field_var > div:last-child,
	.field_var_list > div:last-child
	{
		margin: 20px 0 10px 30px;
		padding-left: 30px;
		border-left: 1px solid #eaeaea;
	}
	.field_var_list > div:last-child
	{
		margin-top: 5px;
	}
	.field_var_list ul
	{
		margin-top: 5px;
	}
}



/**
 * Media queries : écrans large.
 *
 */
@media (min-width: 1600px)
{
	/**
	 * Viewer.
	 *
	 */
	#viewer
	{
		padding: 20px;
	}
	#viewer img, #viewer video
	{
		padding: 10px;
	}



	/**
	 * Objets.
	 *
	 */
	/* Nombre d'objets enfants */
	.obj .obj_childs
	{
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		right: 110px;
		top: 50%;
		width: 8em;
		height: 100%;
	}
	.obj_childs span
	{
		display: flex;
		align-items: center;
		justify-content: center;
		font-weight: bold;
		background: #8F837B;
		color: white;
		padding: 8px 12px;
		border-radius: 20px;
	}
	.obj_deactivated .obj_childs span
	{
		background: silver;
	}
	.obj.selected .obj_childs span
	{
		background: #665C54;
	}

	/* Parties dépliables */
	.obj_fold_settings .cat_settings
	{
		display: flex;
	}
	.obj_fold_settings .cat_settings > div + div
	{
		margin: 0 0 0 50px;
	}



	/**
	 * Section "Albums" : modification de la vignette et capture d'image.
	 *
	 */
	#thumb_video_container
	{
		display: flex;
	}
	#thumb_video_container > div
	{
		width: 50%;
	}



	/**
	 * Section "Albums" : envoi de fichiers.
	 *
	 */
	#upload_infos_total
	{
		display: inline-block;
		float: left;
		width: 70%;
	}
	#upload_infos_total + p
	{
		display: inline-block;
		text-align: right;
		width: 30%;
	}
	#upload_buttons p
	{
		display: inline-block;
		margin-left: 10px;
	}



	/**
	 * Pages de géolocalisation.
	 *
	 */
	#geolocation_container
	{
		display: flex;
	}
	#geolocation_map
	{
		width: 70%;
		margin: 0;
	}
	#geolocation_worldmap
	{
		height: 600px;
	}
	#geolocation_fields
	{
		width: 30%;
		margin-left: 20px;
	}
	#geolocation_fields .field:first-child
	{
		margin-top: 0;
	}



	/**
	 * Section "utilisateurs".
	 *
	 */
	#users_sendmail_fields
	{
		display: flex;
	}
	#users_sendmail_fields > div:not(:first-child)
	{
		margin-left: 60px;
	}
	#users_sendmail_fields div:nth-child(3) > p:first-child
	{
		display: block;
	}
}



/**
 * Media queries : écrans large.
 *
 */
@media (min-width: 1800px)
{
	/**
	 * Objets.
	 *
	 */
	/* Recherche. */
	#adv_search.adv_search_col.show
	{
		display: flex;
		margin-top: -15px;
	}
	#adv_search.adv_search_col.show > div:first-child
	{
		margin-right: 60px;
	}
}
