@import url(ui/css/print.css);
/* / accessibilité */
.visuallyHidden {
  position: absolute;
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0,0,0,0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}
:focus-visible {
    border:1px solid blue;
    /* border:2px solid fuchsia; */
}
* { 
  margin: 0; 
  padding: 0; 
}

/** font face ***/
@font-face {
  font-family: 'Ubuntu';
  src: url('Ubuntu-R.ttf');
}
@font-face {
  font-family: 'Alegreya';
  src: url('../fonts/AlegreyaSans-Regular.ttf');
}

html {
  font-size: 100%;
  height: 100%;
  /* Always show a scrollbar for short pages - stops the jump when the scrollbar appears. non-IE browsers */
  margin-bottom: 1px;
}

body { 
  background-color: #f6ecd7;
  border-width: 0;
  color: #1A1A1A;
  display: block;
  font-family: 'Alegreya';
  font-size: 12px;
  height: 100%;
  margin: 0;
  padding: 0;
}

#pagindex { 
  background-image: url("../images/CarteParabole.jpg");
  height: 500px;
  width: 50%;
}

/** GENERAL STRUCTURE **/

#header { 
  border-radius:  10px 10px 0 0;
  background: #fcfaf5;
  color: #1b013d;
  height: 16vw;
  margin: 0px;
  margin-left: auto;
  margin-right: auto;
  width: 75%;
  text-align: right;
  /* background-image: url("../img/bandeau_victimes.png"); */
  font-weight: 30px;
  letter-spacing: 0.1em;
	background-size:100%;
  color:#fcfaf5;;
  background-color:#6E6680;
  display: block;
  height: fit-content;
}

#headerTitle {
  text-align:center;
  font-variant: normal;
  padding:.5em;
  font-size:2vw;
}

#header  a {
 color:inherit;
 text-decoration: none;
}
    
    
#header img { 
  width: 100%;
}

p#header1{
  font-size: 25pt;
  margin: 0;
  height: 3vw;
}

p#header2{
  font-size: 20pt;
  font-style: italic;
  height: 10vw;

}

/* Menu */
/* Hamburger menu : display none */
.menu-btn,
.menu-icon,
.navicon {
  display:none;
}

#topMenu { 
  background-color: #6E6680;
  border-radius: 0 0 10px 10px;
  box-shadow: 0 4px 9px rgba(84, 84, 84, 0.3);
  font-family: 'Alegreya';
  font-weight: 300;
  margin-left: auto;
  margin-right: auto;
  position: sticky;
  top: 0;
  width: 75%;
  z-index: 99999999;
  font-size: 18px;
  /* font-size: max(1vw, 1em); */
}

#topMenu > ul { 
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  list-style-type: none;
  margin-left:0;
  padding: 7px 5px;
  gap:0 3vw;
}

#topMenu li{
  /* margin: 7px 5px; */
  padding: 7px 5px;
}

#topMenu > ul > li  a{
  letter-spacing: 0.7px;
  display:inline-block;
  width:100%;
}

#topMenu li:hover, #topMenu li:active{
  background-color: #9C95A9;
}

#topMenu ul.dropdown{
  background: #7b728f;
  border-top: 5px solid #6E6680;
  border-radius: 0 0 10px 10px;
  padding-top:5px;
  position: absolute;
  left:0;
  list-style:none;
  width: -moz-available;
  margin-left:0;
  display: none;
  z-index: 1000;
  /* font-size:.9vw; */
  font-size:16px;
  min-width:7vw;
  width:100%;

}

#topMenu li.deroulant {
  display: inline-block;
  vertical-align: top;
  width: inherit;
  position: relative;
  padding-right: 10px;
  padding-left:10px;
  color: #fff;
  text-align: center;
  min-width:120px;
}
#topMenu ul.dropdown li a {
  padding: 9px 0 9px ;
  width:100%;
  
}

img.hypothese {
  display: inline-block;
  width: 10px;
  position: relative;
}



#topMenu li.deroulant:hover ul.dropdown,
#topMenu li.deroulant span:focus + ul.dropdown,
#topMenu li.deroulant:focus-within ul.dropdown,
#topMenu li.deroulant:active ul.dropdown {
  display: block;
}

#topMenu ul.dropdown li {
  padding: 7px;
  text-align: center;
}

#topMenu a { 
  color: #fff;
  text-decoration: none;
  /* padding:7px; */
}

.used { 
  color: #1A1A1A;
  font-weight: 900;
}


/* Main content */




#wrap { 
  min-height: 91%;

}

/* Mise en forme générale */
#mainContent { 
  background: #fcfaf5;
  border-radius: 10px;
  box-shadow: 4px 3px 9px rgba(195, 195, 195, 0.3);
  font-size: 1.5em;
  margin-bottom: 15px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
  padding-bottom: 50px;
  padding-left: 2%;
  padding-right: 2%;
  padding-top: 25px;
  width: 71%;
}

div.container, section.container {/* tous les éléments à l'intérieur de mainContent ont une marge de 5%*/
  margin-right:15%;
  margin-left:15%;
  margin-bottom:1.5em;
}


div#blocIntro {/* contient photo, nom et prénom (= h1) et chapeau */
  display:flex;
  flex-direction:row;
  justify-content:center;
  align-items: flex-start;
  gap:50px;
  margin-top:1em;
  margin-bottom:.5em;
}
#photo {
  margin:auto;
}
div#blocIntro #photo {
  margin:0;
}

div#nom {
  margin-left:auto;
  margin-right:auto;
}
.photo {
    max-width:250px;
    min-width:250px;
}
div.flexContainer {
  display:flex;
  flex-direction:row;
  gap:50px;
  align-items: center;
}
div.flexContainer .photo {
  height:auto;
}
p { 
  font-size: 1em;
  line-height: 1.7;
  margin-bottom:1em;
}
p.chapeau {
  font-weight:bold;
}
p.auteurs {
  text-align: right;
}
p.sources {
  font-size:15px;
}
p.pilotage {
  margin-bottom:0; /*important*/
}
ul.texte, li.texte { 
  line-height: 1.7;
}

a { 
  outline-style: none;
  color: #007782;
  text-decoration: none;
}
a {
  text-decoration:underline;
}
a:hover { 
  color: grey;
}

a:active { 
  color: #fff;
  text-decoration: none;
}


h1 { 
  	color: #007782;
  	padding-bottom: 10px;
    font-size:2rem;
}
div#nom h1, h1.padding{
  padding-bottom: 20px;
}

h1.pilotage { 
  	color: #007782;
  	padding-bottom: 20px;
    margin-left:30px;
    font-size:20px;
    margin-top:50px;
}

.motsclesContainer h2 {
  margin-left:0;
}
h2 {
    font-size: 1.5rem;
    margin-top:15px;
  	color: #007782;
  	padding-bottom: 15px;

}

#pilotage h2 {
    margin-top:0;
}


h3 { 
    font-size: 1.4rem;
    margin-left:30px;
  	color: #007782;
  	padding-bottom: 10px;
    padding-top: 10px;
}


h4 { 
    font-size: 1.3rem;
    margin-left:60px;
  	color: #007782;
  	padding-bottom: 10px;
    padding-top: 10px;
}

h5 { 
    font-size: 18px;
    margin-left:47px;
  	color: #007782;
  	padding-bottom: 10px;
    padding-top: 10px;
}


p.auteursFront {
  text-align:right;
}

/* Typo */
sup { 
  font-size: 60%;
}

.italic { 
  font-style: italic;
}

.small-caps{
  font-variant: small-caps;
}

/* Notices */

p.auteur{
  text-align:right;
}

.controle {
    display:none;
    color:red;
    margin-left:50px;
    margin-bottom:30px;    
}

p.notice_bio {
  margin-bottom:.5em;
}

/* AFfichage mots-clefs */
.type_repression::before {
  content: "Type de répression : ";
  font-weight:bold;
}
.motscles#naissance::before {
  content: "Naissance : ";
  font-weight:bold;
}
.motscles#domiciliation::before {
  content: "Domiciliation : ";
  font-weight:bold;
}

.motscles#arrestation::before {
  content: "Arrestation : ";
  font-weight:bold;
}
.motscles#internement::before {
  content: "Internement : ";
  font-weight:bold;
}
.motscles#deportation::before {
  content: "Déportation : ";
  font-weight:bold;
}
.motscles#devenir::before {
  content: "Devenir : ";
  font-weight:bold;
}
.motscles#deces::before {
  content: "Décès : ";
  font-weight:bold;
}

.dates::before {
  content: "Dates : ";
  font-weight:bold;
}

.lieux::before {
  content: "Lieux : ";
  font-weight:bold;
}
.transport::before {
  content: "transport ";
}

.numeros::before {
  content: "N° convoi et matricules : ";
  font-weight:bold;
}


.italic {
    font-style:italic;
}

.sup {
    font-variant-position: super;
}

.motsclesContainer {
    display:block;
    margin-top:30px;
    padding:0 5% 0 5%;
}


.group-lettre{
    margin-top:1em;

 	line-height: 140%;

  }


.group-label{
font-size: 22px;
  color: #6e6680;
  display:inline;
  padding:10px;
  }

.listealpha{
font-size: 22px;
  color: #6e6680;
  display:inline;
  /* margin-left:30px; */
  }

#titleList{
  padding-left:10px;
}

/* pages liminaires */
div.schemaContainer, .schemaTableContainer {
  display: flex;
  flex-wrap:wrap;
  flex-direction: row;
  align-items: center;
  gap:4vw;
  justify-content:center;
  margin-bottom:1em;
}
.schema {
  text-align: center;
  margin-bottom: 0;
  margin-top:5px;
  max-width:400px;
  }
#resultats .schema {
    text-align: center;
    margin-bottom: 0;
    margin-top:5px;
    max-width:300px;
    }
.legende {
  margin-top:0;
 /* text-align: center;*/
   font-size:75%;
    text-align:center;
  }

.legendeschema {
  margin-top:0;
 text-align: center;
   font-size:75%;

  }

p.separator {
  text-align:center;
  content: "LLLLL*";
}
table {
  border-collapse: collapse;
  margin-bottom: 10px;
  margin-top: 10px;
}



th {
  padding: 8px;
  text-align: left;
  border: 1px solid #ddd;
  color:#250e43;
}

tr,td {
  padding: 8px;
  text-align: left;
  border: 1px solid #ddd;
}

#table{
  width: 90%;
  margin-left: 30px;

}

#resultats figCaption {
  /* font-size:.8em; */
  text-align: center;
  font-size:75%;
}
/* pilotage */

div.flexContainer div.textContainer {
  display:flex;
  flex-direction:column;
  align-items:center;
 }
div.flexContainer {
  gap: 30px;
  align-items: center;
  margin-bottom: 2em;
  justify-content: space-evenly;
 }
#pilotageAlternate div.flexContainer:nth-child(odd) {
  display:flex;
  flex-direction:row-reverse;
 }
 #pilotageAlternate div.flexContainer:nth-child(even) {
  display:flex;
  flex-direction:row;
 }

/*logos*/
/*logos dans page PARTENAIRES*/

img.partenaireLogo {
  max-width:90px;
  max-height:90px;
}
div.blocLogo {
  margin: 0 0 1em 0;
}
div.logoContainer {
  display:flex;
  justify-content: center;
  flex-wrap:wrap;
  flex-direction:row;
  gap:.5em 50px;
  align-items: center;
}
.textelogo  {
padding-left: 3%;
  padding-bottom: 2%;
  padding-top: 1%;
  	}	

    /*LOGOS DANS PIED DE PAGE*/
div.bordureFooter {
border-top: 1px solid #bbb;
justify-content:center;
display: flex;
padding-top: 20px;
flex-direction: row;
flex-wrap: wrap;
align-items: center;
margin-top:2vw;
height:fit-content;
gap: 0px 40px;
}

#logo_histeme,
#logo_unicaen {
  width:90px;
}
#logo_MRSH {
  width:60px;
}
#logo_FDM {
  height:70px
}
/* Footer */

#footer{
  text-align: center;
}

#footer footer{
  background: #f5ecd8;
  bottom: 0;
  left: 0;
  padding: 5px 0;
  position: fixed;
  width: 100%;
  font-size:14px;
}
  	
    div.titleContainer{
      display:block;
    }
    div.titleContainer h2,
    div.titleContainer h3,
    div.titleContainer h4,
    div.titleContainer h5 {
      display:inline-block;
      width: 90%;
    }

    div.titleContainer .totdm {
      float:right;
      display:inline;
    }
    div.titleContainer h2 + .totdm{
    margin-top: 30px;
    margin-left: 50px;
    }
    div.titleContainer h3 + .totdm,
    div.titleContainer h4 + .totdm    {
    	padding-bottom: 10px;
    padding-top: 10px;
  }
  abbr {
    cursor: help;
  }
a.tonote {
  text-decoration: none;
}
  a.tonote sup {
    font-size:120%;
    font-weight:bold;
    
  }
   .totdm {
    /* position: absolute; */
    width: fit-content;
    /* right: -5px; */
    font-size:100%;
  } 
  	
#leftPanel {
  bottom: 3em;
  font-size: 90%;
  left: 1.5vw;
  overflow: auto;
  padding-top: 10px;
  position: fixed;
  top: 12.75em;
  width: 15vw;
  z-index: 15;
} 

label.group-label {
  font-style:normal;
}
nav#contextualNav {
  border: 2px solid gray;
  border-radius:5px;
  background-color: #f6ecd7;
  min-width:25vw;
  width:auto;
  padding:30px 30px;
  margin:1em;
}
nav#contextualNav h2 {
  margin:0;
}
nav#contextualNav button {
  border:none;
  color: black;
  background-color:inherit;
  cursor:pointer;
  /* font-size:120%; */
  display:inline;
  padding-left: 30px;
}

ul, ol {
  margin-left: 6%;
}

/* Tableau alphabétique recherche */
table.alphatable {
  table-layout: fixed;
margin: 1em auto 0 auto;
}
table.alphatable tr, div.row {
  margin-top:1em;
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  gap:.5em 3%;
  align-items: center;
  justify-content:center;
}
table.alphatable td {
  text-align: center;
width: 10px;
padding: 3px;
}
table.alphatable *  {
  border-style: none;
}

table.alphatable a,
div.row a {
  text-decoration:none;
}

figure > table {
  margin:0;
  padding:0;
  min-width:300px;
 
}
figure > table * {
  border: 1px solid black;
  border-collapse: collapse;
}
figure > table span,
figure > table abbr {
  border:none;
}

/* styles spécifiques bibliographie */ 
div.bibliographyContainer p:not(.texte),
p.bibliographie {
  line-height:normal;
  margin-bottom : 0.5em;
}

/* comment citer */
section.how_to_cite {
  margin-bottom:1em;
}
/* encadré :  */
section.encadre {
  /* margin-left:3%;
  margin-right:3%; */
  border:2px solid black;
  background-color: #F5F5F5;
  padding: 10px 20px;
}

blockquote {
  padding-left:6%;
}


/* // image viewer //  */
div#photo {
  display:flex;
  flex-direction: column;
  align-items: center;
}
figure, div#photo {
  cursor:pointer;
}
div#photo.anonyme {
  cursor:unset;
}
#modal-content figure, figure.pilotage {
  cursor:unset;
}
/* notes de bas de page */

section#blocNotes {
  margin-top:1em;
  border-top: 1px solid black;
  padding-top: 1em;
  font-size:.85em;
}

span.manchette {
  background-color:fuchsia;
  position:absolute;
  right:0;
  display:none;
}
.noteNum {
  font-weight:bold;
}
/* GESTION DIV MODALE visionneuse d'images */

div#image-viewer {

  display:none;
  background-color:black;
  position:fixed;
  top:0;
  left:0;
  opacity: 1;
  width:100%;
  height:100vh;
  z-index: 100000000;
  overflow: hidden;
}
#image-viewer #closeImageViewer {
  position: absolute;
  top: 15px;
  right: 35px;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
  transition: 0.3s;
  background-color:unset;
  border: none;
}


#image-viewer #closeImageViewer:hover,
#image-viewer #closeImageViewer:active,
#image-viewer #closeImageViewer:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}
#modal-content  {
  margin: auto;
  display: block;
  height: 98%;

}
/* DANS NOTICES BIOGRAPHIQUES */
#modal-content #photo {
  float:unset;
  margin: 1em 0 1em 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  align-content: center;
  justify-content: center;
}

#modal-content .photo {

  max-width: 70vw;
  max-height: 85vh;
}
#modal-content #photo p,
#modal-content figCaption {
  color:white;
  font-size: 1.5em;
  margin:0;
  padding:0;
  text-align:center;
}

/* DANS Pages introduction BIOGRAPHIQUES */
#modal-content .schemaContainer,
#modal-content div#photo {
  height: 100%;
}
#modal-content .schema {
  text-align: center;
  margin-bottom: auto;
  margin-top:auto;
  max-width: 60vw;
  max-height:85vh;
  min-width:300px;
  }
#modal-content .schemaTableContainer {
  width: 100%;
  margin-right:5vw;
  flex-wrap:nowrap;
  margin-left:5vw;
}
 figure.table table {
 margin-left:auto;
 margin-right:auto;
} 
/*#modal-content figure.schemaTableContainer figure.imageWithTable {
 width:70%;
} */

#modal-content table {
  background-color:#fcfaf5;
   font-size: min(3vw, 36px);
  height:unset;
  width:unset;
  min-width: 300px;
  max-width: 70vw;
  max-height:85vh;
}

#modal-content { 
  animation-name: zoom;
  animation-duration: 0.6s;
}

#buttonContainer {
  display:flex;
  margin-top:1em;
  flex-direction: row;
  gap:15px;
  float:right;
  align-items: center;
  justify-content: center;
}
#buttonContainer button {
  background-color:inherit;
  background:inherit;
  border:none;
}
#buttonContainer > * {
font-size:1em;
height:30px;
cursor: pointer;
}
.interactiveUI_image {
	width:25px;
}
#buttonContainer.static {
  margin-top:0;
} 

@keyframes zoom {
  from {transform:scale(0)} 
  to {transform:scale(1)}
}
@media only screen and (max-width: 600px) {
  #headerTitle {
    font-size:1.5rem;
  }
  #topMenu > ul {
    flex-direction:column;
    justify-content:left;
    gap:1em 3vw;
  }
  #topMenu li {
    padding:0;
  }
  #topMenu ul.dropdown, li.deroulant {
    font-size: 18px;
  }
  #topMenu ul.dropdown li a {
    padding:0;
  }
  body {
    /* content:"************"; */
    /* background-color: lightblue;
    background: lightblue; */}

    #mainContent { 
      background: #fcfaf5;
      border-radius: 10px;
      box-shadow: 4px 3px 9px rgba(195, 195, 195, 0.3);
      font-size: 1.5em;
      margin-bottom: 15px;
      margin-left: auto;
      margin-right: auto;
      margin-top: 15px;
      padding-bottom: 50px;
      padding-left: 2%;
      padding-right: 2%;
      padding-top: 25px;
      width: inherit;
    }
    #header, #topMenu {
      width:100%;
    }

    table.alphatable {
      table-layout: fixed;
    margin: 0 auto 0 auto;
    }
    table.alphatable td {
      text-align: center;
    width: 10px;
    padding: 3px;
    }
    #modal-content .schemaTableContainer {
      width: 85%;
      flex-wrap:wrap;

    }
    #modal-content  figure.table {
      margin:auto;
      align-content:center;
    }


  div .bordureFooter {

    width:100%;
    /* margin-top:2vw; */

    height:fit-content;
  }
  /* Menu hamburger pour navigation smartphone */
  #hamburgerMenu {
    display:block;
    position:relative;
    top:0;
    right:0;
  }
  #menu-btn { /*cache la checkbox*/
    position: absolute;
    top: -100%;
    left: -100%;
  }
  .menu-icon {
    cursor: pointer;
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    padding: 10px 10px 10px 10px;
    position: relative;
    user-select: none;
    visibility: visible;
    height:8px;
  }
  .navicon {
    background: #fff;
    display: block;
    height: 3px;
    width: 22px;
    position: relative;
    /* border-radius:5px; */
  }
  .navicon:before {
    top: 7px;
  }
  .navicon:after {
    top: -7px;
  }
  .navicon:before,
  .navicon:after {
    background: #fff;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    transition: all 0.2s ease-out;
  }
  /* .menu-btn:checked ~ label {
    background:fuchsia;
  } */
  #topMenu .menu-btn ~ ul {
    display:none;
  }
  #topMenu .menu-btn:checked ~ ul {
    display:flex;
  }

  .menu-btn:checked ~ .menu-icon .navicon {
    background: transparent;
  }

  .menu-btn:checked ~ .menu-icon .navicon:before {
    transform: rotate(-45deg);
  }

  .menu-btn:checked ~ .menu-icon .navicon:after {
    transform: rotate(45deg);
  }

  .menu-btn:checked ~ .menu-icon .navicon:before,
  .menu-btn:checked ~ .menu-icon .navicon:after {
    top: 0;
  }
  #topMenu li.deroulant {
    font-weight:bold;
   
  }
  #topMenu ul.dropdown {
    font-weight:normal;
    margin-top: .5em;
    padding-top: 0;
    margin-left: 0;
    display: flex;
    justify-content: center;
    position: unset;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 5px 30px;

      background: inherit;
      border-top: none;
      border-radius: 0;
      position: unset;
      left:0;
      list-style:none;
      width: -moz-available;

      z-index: 1000;

    
  }
  #topMenu ul.dropdown li {
    padding: 0;
  }
  #topMenu ul.dropdown:hover,
  #topMenu ul.dropdown:active {
    background-color: initial;
  }
  #topMenu li.deroulant:hover ul.dropdown,
#topMenu li.deroulant:active ul.dropdown {
  display: flex;
  /* background-color:fuchsia; */
}
#topMenu li:hover, #topMenu li:active{
  /* background-color: initial; */
  display:unset;
}
/* sommaire quand il existe */
nav#contextualNav {
width:auto;
padding:10px 10px;
margin:1em;
}
/* Contenu principal :  */
div.container, section.container {
  margin-left:1vw;
  margin-right:1vw;
}
div#blocIntro {
  flex-direction:column;
  gap:0;
  margin-top: 0.5em;
  margin-bottom:1em;
}
div#blocIntro  h1 
{
  text-align:center;
}
p.auteurs {
  padding-right: 35px;
}
div.bordureFooter{
  padding-top:10px;
  gap:0 20px;
}
/* pages liminaires */
div.schemaContainer{
  /* width: 94vw; */
  width: unset;
}
#modal-content .schema {
  max-width:95vw;
}
#footer footer{
  font-size:9px;
}
h3 {
  margin-left:15px;
}
h4 {
  margin-left:30px;
}
div.titleContainer h2,
div.titleContainer h3,
div.titleContainer h4,
div.titleContainer h5 {
  width: 80%;
}
h2, h3, h4 {
  width: 80%; /*important pour bibliographie sur smartphone */
}
/* pilotage : */
div.flexContainer {
  flex-direction:column;
  gap:10px;
  align-items: center;
}
#pilotageAlternate  div.flexContainer:nth-child(odd),
#pilotageAlternate  div.flexContainer:nth-child(even),
div.flexContainer {
  flex-direction:column;
  gap:10px;
  align-items: center;
}
#pilotage h2 {
  width:unset;
}
ul, ol {
  margin-left: 8%;
}
#modal-content table {
  background-color:#fcfaf5;
   font-size: 1.5em;
  height:unset;
  width:unset;
  min-width: 300px;
  max-width: 95vw;
  max-height:85vh;
}
div#blocIntro #photo {
  margin: 0 auto  1em  auto ;
}
span.manchette {
  display:none;
}
#buttonContainer {
  display:flex;
  flex-direction: column;
  gap:25px;
  position:absolute;
  right:10px;
  align-items: center;
  justify-content: center;
  margin-top:0.5em;
}
}

:target{
  scroll-margin-top: 50px;
}