@import url(parts/fonts.css);
@import url(parts/posts.css);
@import url(users/users.css);

/* Base pour thème classique, couleurs à préciser. */
/* Spécifications standards uniquement. */

/* Bannière par défaut (effacer le contenu pour mettre une bannière) */
.pageheader, .pageheader h1 {
	text-align: center;
	position: relative;
	overflow: hidden;
}

/* Zone de texte de base. */
.textbox {
	margin: 0.5em;
	padding: 0.5em;
	border-style: solid;
	border-width: 2px;
	border-radius: 15px 15px;
	text-overflow: ellipsis;
	position: relative;
	overflow: hidden;
}

/* Titres particuliers */
h2 {
	font-size: 1.25em;
	margin: 0 0 0.5em 0;
}
h3 {
	font-size: 1.15em;
	margin: 0 0 0.25em 0;
}
.faketitle {
	font-weight: bold;
	font-size: 1.1em;
	white-space: nowrap;
}

/* Liens non décorés : prévoir une couleur reconnaissable. */
a {
	text-decoration: none;
	cursor: pointer;
}
a img {
	border: 0 none;
}

/* Listes simples. */
ul {
	margin: 0;
}

/* Guillemets français pour les citations */
q:before {
	content: "« ";
}
q:after {
	content: " »";
}

/* Liste de liens représentés par des images. */
.pixlinks ul {
	white-space: nowrap;
	text-align: center;
	overflow: auto;
	padding: 0;
}
.pixlinks ul li {
	display: inline-block;
	margin: 0 1%;
	padding: 0;
}
.pixlinks ul li a {
	display: block;
}
.pixlinks a:before {
	content: url(icons/linkicon.png);
	display: block;
}
.iconlist ul {
	padding: 0.5em 1em;
}
.iconlist li {
	display: block;
	clear: both;
}
.iconlist a:before {
	margin-right: 0.5em;
	float: left;
}
.iconlist .date {
	display: block;
}

/* Blocs particuliers */
body {
	position: relative;
}
pre {
	overflow: auto;
	max-height: 15em;
}
li p:first-child {
	text-indent: 0;
}
ins {
	text-decoration: none;
	font-style: italic;
}
ins em {
	font-style: default;
}
.textbox footer, details,
dd, blockquote {
	margin: 0;
}
dt {
	font-weight: bold;
}
nav .date,
.textbox footer {
	font-size: 0.9em;
}
.textbox footer, details,
h3.codetitle, h3.quotetitle,
dl, blockquote, pre, .toolnote {
	padding: 0.5em;
	margin: 0.5em 0;
	border-width: 2px;
	border-style: solid;
	border-radius: 10px 10px;
}
h3.codetitle, h3.quotetitle {
	font-size: 1em;
	padding-bottom: 0;
}
div#warning p {
	text-indent: 0;
	text-align: center;
}
div#warning p:before {
	content: url(icons/warning.png) " ";
	vertical-align: top;
}
nav table {
	width: 100%;
}
nav table td a {
	display: block;
	width: 100%;
}
nav table td+td {
	text-align: center;
}

/* Enchaînement des blocs. */
.title.textbox, nav.textbox,
h3.quotetitle, h3.codetitle {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	border-bottom-width: 0;
	margin-bottom: 0;
}
nav.textbox.standalone {
	border-bottom-right-radius: 15px;
	border-bottom-left-radius: 15px;
	border-bottom-width: 2px;
	margin-bottom: 0.5em;
}
h3.codetitle + pre,
h3.quotetitle + blockquote,
.title.textbox + .textbox,
nav.textbox + .textbox {
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	border-top-width: 0;
	margin-top: 0;
}
nav.textbox.standalone + .textbox {
	border-top-right-radius: 15px;
	border-top-left-radius: 15px;
	border-top-width: 2px;
	margin-top: 0.5em;
}
nav.textbox + .textbox:empty {
	box-shadow: none;
}
.flatlist nav li {
	margin-top: 0.25em;
}
aside+aside, dd+dd, dd+dt {
	border-top-style: dotted;
	border-top-width: 1px;
	padding-top: 0.5em;
	margin-top: 0.5em;
}
nav.book {
	margin-top: 0.5em;
}

/* Alignements des paragraphes. */
p {
	margin: 0;
	text-indent: 2em;
	text-align: justify;
}
p.center, .center p {
	text-align: center;
	text-indent: 0;
}
p.right, .right p {
	text-align: right;
	text-indent: 0;
}
p.left, .left p {
	text-align: left;
	text-indent: 0;
}
p.jcenter, .jcenter p {
	text-align-last: center; /* pas encore suffisamment reconnu. */
	text-align: center; /* passer en justify quand ça rendra correctement. */
	text-indent: 0;
}
p.jright, .jright p {
	text-align-last: right; /* pas encore suffisamment reconnu. */
	text-align: right; /* passer en justify quand ça rendra correctement. */
	text-indent: 0;
}
img.fleft {
	float: left;
}
img.fright {
	float: right;
}

/* Types de numérotations */
ol.lower {
	list-style-type: lower-alpha;
}
ol.upper {
	list-style-type: upper-alpha;
}
ol.roman {
	list-style-type: upper-roman;
}

/* Spécificités des formulaires. */
label {
	user-select: none;
}

input[type="text"] {
	text-align: center;
}
input[type="number"] {
	text-align: center;
	max-width: 3em;
}
details summary,
input[type="submit"], input[type="reset"],
input[type="button"], button, option {
	cursor: pointer;
}

.cchooser label {
	height: 1.75em;
	display: inline-block;
	cursor: pointer;
}

.cchooser input[type="button"] {
	text-align: center;
	min-width: 1.5em;
	height: 1.5em;
	padding: 0;
}

.dchooser select {
	background-color: transparent;
	border: 0 none transparent;
}

.colchooser {
	white-space: nowrap;
	position: absolute;
	text-indent: 0;
	width: 14em;
	bottom: 0;
}
.colchooser select {
	text-align: center;
}
.colchooser select option {
	text-align: left;
}

button#autoconf {
	font-style: italic;
	position: absolute;
	left: 2em;
	top: 0;
}
button#autoconf:before {
	content: "⎘ ";
}

.tagline {
	text-align: center;
}

object {
	width: 99.9%;
	min-height: 24em;
	border: 1px solid #C0C0C0;
}
