﻿/*! Marx v4.0.1 - The classless CSS reset (perfect for Communists) | MIT License | https: //github.com/mblode/marx */*,
::before,
::after{
	box-sizing: border-box;
	background-repeat: no-repeat;
}
::before,
::after{
	text-decoration: inherit;
	vertical-align: inherit;
}
:where(:root){
	cursor: default;
	line-height: 1.5;
	overflow-wrap: break-word;
	-moz-tab-size: 4;
	tab-size: 4;
	-webkit-tap-highlight-color: transparent;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
:where(body){
	margin: 0;
}
:where(h1){
	font-size: 2em;
	margin: 0.67em 0;
}
:where(dl,ol,ul) :where(dl,ol,ul){
	margin: 0;
}
:where(hr){
	color: inherit;
	height: 0;
}
:where(nav) :where(ol,ul){
	list-style-type: none;
	padding: 0;
}
:where(nav li)::before{
	content: "​";
	float: left;
}
:where(pre){
	font-family: monospace,monospace;
	font-size: 1em;
	overflow: auto;
}
:where(abbr[title]){
	text-decoration: underline;
	text-decoration: underline dotted;
}
:where(b,strong){
	font-weight: bolder;
}
:where(code,kbd,samp){
	font-family: monospace,monospace;
	font-size: 1em;
}
:where(small){
	font-size: 80%;
}
:where(audio,canvas,iframe,img,svg,video){
	vertical-align: middle;
}
:where(iframe){
	border-style: none;
}
:where(svg:not([fill])){
	fill: currentColor;
}
:where(table){
	border-collapse: collapse;
	border-color: currentColor;
	text-indent: 0;
}
:where(button,input,select){
	margin: 0;
}
:where(button,[type=button i],[type=reset i],[type=submit i]){
	-webkit-appearance: button;
}
:where(fieldset){
	border: 1px solid #a0a0a0;
}
:where(progress){
	vertical-align: baseline;
}
:where(textarea){
	margin: 0;
	resize: vertical;
}
:where([type=search i]){
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
::-webkit-inner-spin-button,
::-webkit-outer-spin-button{
	height: auto;
}
::-webkit-input-placeholder{
	color: inherit;
	opacity: 0.54;
}
::-webkit-search-decoration{
	-webkit-appearance: none;
}
::-webkit-file-upload-button{
	-webkit-appearance: button;
	font: inherit;
}
:where(dialog){
	background-color: white;
	border: solid;
	color: black;
	height: -moz-fit-content;
	height: fit-content;
	left: 0;
	margin: auto;
	padding: 1em;
	position: absolute;
	right: 0;
	width: -moz-fit-content;
	width: fit-content;
}
:where(dialog:not([open])){
	display: none;
}
:where(details>summary:first-of-type){
	display: list-item;
}
:where([aria-busy=true i]){
	cursor: progress;
}
:where([aria-disabled=true i],[disabled]){
	cursor:not-allowed;
}
:where([aria-hidden=false i][hidden]){
	display: initial;
}
:where([aria-hidden=false i][hidden]:not(:focus)){
	clip: rect(0, 0, 0, 0);
	position: absolute;
}
:root{
	--br: 4px;
	--xs-pad: 4px;
	--sm-pad: 8px;
	--md-pad: 16px;
	--lg-pad: 20px;
	--xlg-pad: 40px;
	--sm-breakpoint: 400px;
	--lg-breakpoint: 768px;
	--primary-400: #60a5fa;
	--primary: #3b82f6;
	--primary-600: #2563eb;
	--accent: #64ffda;
	--red: #f43f5e;
	--red-600: #dc2626;
	--yellow: #eab308;
	--grey: #f7f7f9;
	--white: #fff;
	--black: #000;
	--text: rgba(0, 0, 0, 0.8);
	--secondary: rgba(0, 0, 0, 0.54);
	--disabled: rgba(0, 0, 0, 0.38);
	--dividers: rgba(0, 0, 0, 0.12);
	--link-color: var(--primary);
	--link-hover-color: var(--primary-600);
	--sans-serif: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
	--serif: Georgia, Times, "Times New Roman", serif;
	--monospace: Menlo, Monaco, Consolas, "Courier New", monospace;
	--font-family: var(--sans-serif);
	--font-size-base: 16px;
	--font-size-sm: 14px;
	--font-size-h1: 40px;
	--font-size-h2: 32px;
	--font-size-h3: 28px;
	--font-size-h4: 24px;
	--font-size-h5: 20px;
	--font-size-h6: 16px;
	--line-height-base: 1.5;
	--border: 1px solid var(--dividers);
}
main,
header,
footer,
article,
section,
aside,
details,
summary{
	margin: 0 auto;
	margin-bottom: var(--md-pad);
	width: 100%;
}
main{
	display: block;
	margin: 0 auto;
	max-width: var(--lg-breakpoint);
	padding: 0 var(--md-pad) var(--md-pad);
}
footer{
	border-top: var(--border);
	padding: var(--md-pad) 0;
	text-align: center;
}
footer p{
	margin-bottom: 0;
}
hr{
	border: 0;
	border-top: var(--border);
	display: block;
	margin-top: var(--md-pad);
	margin-bottom: var(--md-pad);
	width: 100%;
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
img{
	height: auto;
	max-width: 100%;
	vertical-align: baseline;
}
@media screen and (max-width: var(--sm-breakpoint)){
	article,
	section,
	aside{
		clear: both;
		display: block;
		max-width: 100%;
	}
	img{
		margin-right: var(--md-pad);
	}
}
embed,
iframe,
video{
	border: 0;
}
body{
	color: var(--text);
	font-family: var(--font-family);
	font-size: var(--font-size-base);
	line-height: var(--line-height-base);
}
p{
	margin: 0;
	margin-bottom: var(--md-pad);
}
h1,
h2,
h3,
h4,
h5,
h6{
	color: inherit;
	font-family: inherit;
	line-height: 1.2;
	font-weight: 500;
}
h1{
	font-size: var(--font-size-h1);
	margin: var(--lg-pad) 0 var(--md-pad);
}
h2{
	font-size: var(--font-size-h2);
	margin: var(--lg-pad) 0 var(--md-pad);
}
h3{
	font-size: var(--font-size-h3);
	margin: var(--md-pad) 0 var(--xs-pad);
}
h4{
	font-size: var(--font-size-h4);
	margin: var(--md-pad) 0 var(--xs-pad);
}
h5{
	font-size: var(--font-size-h5);
	margin: var(--md-pad 0) var(--xs-pad);
}
h6{
	font-size: var(--font-size-h6);
	margin: var(--md-pad) 0 var(--xs-pad);
}
small{
	color: var(--secondary);
	vertical-align: bottom;
}
pre{
	background-color: var(--grey);
	color: var(--text);
	display: block;
	font-family: var(--monospace);
	font-size: var(--font-size-base);
	margin: var(--md-pad 0);
	padding: var(--md-pad);
	white-space: pre-wrap;
	overflow-wrap: break-word;
}
code{
	color: var(--text);
	font-family: var(--monospace);
	font-size: var(--font-size-base);
	line-height: inherit;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	word-break: break-all;
	word-wrap: break-word;
}
a{
	color: var(--link-color);
	text-decoration: none;
	background-color: transparent;
}
a:hover,
a:focus{
	color: var(--link-hover-color);
	text-decoration: underline;
}
dl{
	margin-bottom: var(--md-pad);
}
dd{
	margin-left: var(--xlg-pad);
}
ul,
ol{
	margin-bottom: var(--sm-pad);
	padding-left: var(--xlg-pad);
	vertical-align: baseline;
}
blockquote{
	border-left: 2px solid var(--text);
	font-family: var(--serif);
	font-style: italic;
	margin: var(--md-pad 0);
	padding-left: var(--md-pad);
}
figcaption{
	font-family: var(--serif);
}
u{
	text-decoration: underline;
}
s{
	text-decoration: line-through;
}
sup{
	font-size: var(--font-size-sm);
	vertical-align: super;
}
sub{
	font-size: var(--font-size-sm);
	vertical-align: sub;
}
mark{
	background-color: var(--yellow);
}
input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=date],
input[type=month],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=week],
input[type=number],
input[type=search],
input[type=tel],
select,
textarea{
	background: var(--white);
	background-clip: padding-box;
	border: var(--border);
	border-radius: var(--br);
	color: var(--text);
	display: block;
	width: 100%;
	font-size: 1rem;
	padding: var(--sm-pad) var(--md-pad);
	line-height: 1.5;
	transition: border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;
	font-family: var(--sans-serif);
	word-break: normal;
}
input[type=color]{
	background-color: var(--white);
	border: var(--border);
	border-radius: var(--br);
	display: inline-block;
	vertical-align: middle;
}
input:not([type]){
	-webkit-appearance: none;
	background: var(--white);
	background-clip: padding-box;
	border: var(--border);
	border-radius: var(--br);
	color: var(--text);
	display: block;
	width: 100%;
	padding: var(--sm-pad) var(--md-pad);
	line-height: 1.5;
	transition: border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out;
	text-align: left;
	word-break: normal;
}
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=week]:focus,
input[type=number]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=color]:focus,
select:focus,
textarea:focus{
	background-color: var(--white);
	border-color: var(--primary-400);
	outline: 0;
	box-shadow: 0 0 0 .2rem rgba(59, 130, 246, 0.5);
}
input:not([type]):focus{
	background-color: var(--white);
	border-color: var(--primary-400);
	outline: 0;
	box-shadow: 0 0 0 .2rem rgba(59, 130, 246, 0.5);
}
input[type=file]:focus,
input[type=radio]:focus,
input[type=checkbox]:focus{
	outline: 1px thin var(--dividers);
}
input[type=text][disabled],
input[type=password][disabled],
input[type=email][disabled],
input[type=url][disabled],
input[type=date][disabled],
input[type=month][disabled],
input[type=time][disabled],
input[type=datetime][disabled],
input[type=datetime-local][disabled],
input[type=week][disabled],
input[type=number][disabled],
input[type=search][disabled],
input[type=tel][disabled],
input[type=color][disabled],
select[disabled],
textarea[disabled]{
	background-color: var(--dividers);
	color: var(--secondary);
	cursor:not-allowed;
	opacity: 1;
}
input:not([type])[disabled]{
	background-color: var(--dividers);
	color: var(--secondary);
	cursor:not-allowed;
	opacity: 1;
}
input[readonly],
select[readonly],
textarea[readonly]{
	border-color: var(--dividers);
	color: var(--secondary);
}
input:focus: invalid,
textarea:focus: invalid,
select:focus: invalid{
	border-color: var(--red-600);
	color: var(--red);
}
input[type=file]:focus: invalid:focus,
input[type=radio]:focus: invalid:focus,
input[type=checkbox]:focus: invalid:focus{
	outline-color: var(--red);
}
select{
	border: var(--border);
	vertical-align: sub;
}
select:not([size]):not([multiple]){
	height: calc(2.25rem + 2px);
}
select[multiple]{
	height: auto;
}
label{
	display: inline-block;
	line-height: 2;
}
fieldset{
	border: 0;
	margin: 0;
	padding: var(--sm-pad 0);
}
legend{
	border-bottom: var(--border);
	color: var(--text);
	display: block;
	margin-bottom: var(--sm-pad);
	padding: var(--sm-pad 0);
	width: 100%;
}
textarea{
	overflow: auto;
	resize: vertical;
}
input[type=checkbox],
input[type=radio]{
	box-sizing: border-box;
	padding: 0;
	display: inline;
}
input[type=submit],
input[type=reset],
input[type=button],
button{
	background-color: var(--primary);
	border: var(--primary);
	border-radius: var(--br);
	color: var(--white);
	padding: var(--sm-pad) var(--md-pad);
	display: inline-block;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	user-select: none;
	border: 1px solid transparent;
	font-size: 1rem;
	line-height: 1.5;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
input[type=submit]::-moz-focus-inner,
input[type=reset]::-moz-focus-inner,
input[type=button]::-moz-focus-inner,
button::-moz-focus-inner{
	padding: 0;
}
input[type=submit]:hover,
input[type=reset]:hover,
input[type=button]:hover,
button:hover{
	background-color: var(--primary-600);
	border-color: var(--primary-600);
	color: var(--white);
}
input[type=submit]:not(:disabled):active,
input[type=reset]:not(:disabled):active,
input[type=button]:not(:disabled):active,
button:not(:disabled):active{
	background-color: var(--primary-600);
	border-color: var(--primary-600);
	color: var(--white);
}
input[type=submit]:focus,
input[type=reset]:focus,
input[type=button]:focus,
button:focus{
	outline: 0;
	box-shadow: 0 0 0 .2rem rgba(59, 130, 246, 0.5);
}
input[type=submit]:disabled,
input[type=reset]:disabled,
input[type=button]:disabled,
button:disabled{
	opacity: 0.65;
	cursor:not-allowed;
	background-color: var(--primary);
	border-color: var(--primary);
	color: var(--white);
}
table{
	border-top: var(--border);
	margin-bottom: var(--md-pad);
}
caption{
	padding: var(--sm-pad 0);
}
thead th{
	border: 0;
	border-bottom: 2px solid var(--dividers);
	text-align: left;
}
tr{
	margin-bottom: var(--sm-pad);
}
th,
td{
	border-bottom: var(--border);
	padding: var(--md-pad);
	vertical-align: inherit;
}
tfoot tr{
	text-align: left;
}
tfoot td{
	color: var(--secondary);
/*	font-size: var(--sm-pad);*/
	font-style: italic;
	padding: var(--md-pad) var(--xs-pad);
}
:root{
	--body-bg: white;
	--body-color: black;
	--anchor-color: red;
	--letter-spacing: 0;
}
@media(prefers-color-scheme: dark){
	:root{
		--body-bg: #212529;
		--body-color: rgb(255, 255, 255, 0.6);
		--link-color: #124174;
		--link-color-hover: #6c757d;
		--letter-spacing: 0.1;
	}
}
body{
	background-color: var(--body-bg);
	color: var(--body-color);
	letter-spacing: var(--letter-spacing);
}
a{
	color: var(--link-color);
}
a:hover{
	color: var(--link-color-hover);
}
#logo{
	margin: auto;
	overflow: hidden;
	text-align: center;
}
#logo span{
	opacity: 0;
}
#logo a{
	background-size: contain;
}
#ecoles{
	font-size: 90%;
	a-padding: 8px;
	a-text-decoration: none;
}
#ecoles ul{
	display: flex;
	justify-content: space-between;
	overflow: hidden;
	padding: 20px 20px 0 20px;
	margin: 0;
}
#ecoles li{
	list-style: none;
	flex: 0 0 auto;
	text-align: center;
	position: relative;
	border-radius: 8px 8px 0 0;
	padding: 8px;
	overflow: hidden;
}
#ecoles .select{
	-webkit-box-shadow: 4px 5px 12px 5px rgba(0,0,0,.1);
	-moz-box-shadow: 4px 5px 12px 5px rgba(0,0,0,.1);
	-o-box-shadow: 4px 5px 12px 5px rgba(0,0,0,.1);
	box-shadow: 4px 5px 12px 5px rgba(0,0,0,.1)
}
@media(prefers-color-scheme: dark){
	#ecoles .select{
		-webkit-box-shadow: 4px 5px 12px 5px rgba(255,255,255,.1);
		-moz-box-shadow: 4px 5px 12px 5px rgba(255,255,255,.1);
		-o-box-shadow: 4px 5px 12px 5px rgba(255,255,255,.1);
		box-shadow: 4px 5px 12px 5px rgba(255,255,255,.1);
	}
	input[type=text],
	select{
		background-color: var(--body-color);
		transition: inherit;
	}
	input[type=text]:focus{
		background-color: var(--body-color);
	}
	.modules thead th,
	.modules td{
		border-color: var(--body-color);
	}
	h1,
	h2,
	h3{
		color: rgba(255,255,255,.87);
	}
}
#titre{
	text-align: center;
}
#titre h1{
	font-size: 1.7em;
}
#langues{
	background-color: var(--body-bg);
	position: fixed;
	top: -10px;
	left: 10px;
}
#langues ul{
	padding-left: 0;
}
#langues li{
	display: inline;
	list-style: none;
}
#langues a{
	font-size: 80%;
}
#langues li:first-child::after{
	content: " |";
}
main{
	display: flex;
	flex-flow: row wrap;
	max-width: none;
	padding: 0;
}
#fiches{
	background-color: var(--body-bg);
	position: fixed;
	top: -10px;
	right: 10px;
	padding: 0;
}
#fiches ul{
	list-style: none;
	padding: 0;
}
#fiches li{
	display: inline;
}
#fiches a{
	font-size: 80%;
}
#fiches li:first-child::after{
	content: " |";
}
#contenant{
	position: relative;
	margin-left: auto;
	margin-right: auto;
	max-width: 980px;
	height: 100%;
	top: 0px;
	bottom: 0px;
}
#contenant h2,
#contenant h3{
	font-size: 1.2em;
}
#gauche{
	max-width: 300px;
	padding-right: 1em;
}
#gauche form{
	padding: 0 2em 0 0;
	display: flex;
}
#gauche ul{
	list-style: none;
	padding: 0;
}
#contenu{
	max-width: 680px;
	width: 100%;
}
#contenu br{
	display: block;
	margin-bottom: 1em;
}
table.modules{
	border-top: none;
	width: 100%;
}
#maj{
	font-size: 85%;
	text-align: right;
	margin-top: 20px
}
th.code,
td.code{
	width: 100px;
	padding-right: 0;
}
td{
	vertical-align: top;
}
.select a{
	color: var(--body-color);
}
@media only screen and (max-width: 900px){
	#ecoles ul{
		flex-flow: column wrap;
	}
}
@media only screen and (max-width: 600px){
	#contenant{
		padding: 0 1em 0 1em;
	}
	#logo{
		margin-top: 20px;
	}
}
