/* Complément à Bootstrap 5 : seulement ce qui est propre au site. */

body { font-size: 1.05rem; }
main p { max-width: 46rem; }

form.en-ligne { display: inline-block; margin: 0 .25rem .25rem 0; }
.formulaire label { display: block; font-weight: 600; margin: 1rem 0 .25rem; }
.formulaire label:first-child { margin-top: 0; }
.formulaire .form-control, .formulaire .form-select { max-width: 36rem; }
.formulaire .form-control.w-auto { max-width: 100%; }
.formulaire label.form-check { font-weight: 400; }
fieldset { margin: 1.25rem 0; }
legend { font-size: 1.1rem; font-weight: 600; }
input.code { width: 11rem !important; text-align: center; letter-spacing: .25em; text-transform: uppercase; }
input.court { width: 6rem !important; }

.code-perso { display: inline-block; padding: .2rem .8rem; font: 700 1.6rem Consolas, "Courier New", monospace; letter-spacing: .25em; background: #ffe69c; border: 2px solid #997404; border-radius: .5rem; }
.code-perso-lien { word-break: break-all; }

/* Messagerie */
.courriel-de, .courriel-objet, .courriel-etat { display: block; }
.courriel-de { font-weight: 600; }
.courriel-etat { font-size: .9rem; color: var(--bs-secondary-color); }
.courriel.nouveau .courriel-objet { font-weight: 700; }
.courriel { color: var(--bs-body-color); }
.entete-courriel { background: #fff; border: 1px solid var(--bs-border-color); border-bottom: 0; border-radius: .5rem .5rem 0 0; padding: .9rem 1.1rem; margin-top: 1rem; }
.entete-courriel p { margin: .2rem 0; max-width: none; }
.entete-courriel .adresse { font-family: Consolas, "Courier New", monospace; word-break: break-all; background: var(--bs-info-bg-subtle); padding: 0 .3rem; }
.corps-courriel { background: #fff; border: 1px solid var(--bs-border-color); border-radius: 0 0 .5rem .5rem; padding: 1.1rem; margin-bottom: 1.25rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.piege { background: var(--bs-danger-bg-subtle); border: 2px solid var(--bs-danger); border-radius: .5rem; padding: 1.1rem 1.3rem; margin: 1.25rem 0; }
.piege h2 { margin-top: 0; font-size: 1.4rem; color: var(--bs-danger-text-emphasis); }

/* Exercices */
.consigne { background: var(--bs-info-bg-subtle); border-left: 5px solid var(--bs-primary); padding: .7rem 1rem; margin: 1rem 0; white-space: pre-line; }
pre.solution { background: #fff; border: 1px solid var(--bs-border-color); padding: 1rem; white-space: pre-wrap; overflow-wrap: anywhere; font-size: .95rem; }

@media print { .navbar { display: none; } }
