/*
@font-face {
  font-family: "PropCourierSans";
  src: url("/static/fonts/PropCourierSans-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
*/
/*
@font-face {
  font-family: "Domine";
  src: url("/static/fonts/Domine-Regular.ttf") format("truetype");
  font-weight: normal;
}
@font-face {
  font-family: "Domine";
  src: url("/static/fonts/Domine-Bold.ttf") format("truetype");
  font-weight: bold;
}
*/
/* latin-ext */
@font-face {
  font-family: 'Domine';
  font-style: normal;
  font-weight: 400;
  src: local('Domine'), local('Domine-Regular'), url(https://fonts.gstatic.com/s/domine/v4/D223zF34NF7a3Xpj2haShvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Domine';
  font-style: normal;
  font-weight: 400;
  src: local('Domine'), local('Domine-Regular'), url(https://fonts.gstatic.com/s/domine/v4/GQE2Oayn983RymkQwpLq5A.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}

@font-face {
  font-family: "Belgika";
  src: url("/static/fonts/Belgika-16th.otf");
}
@font-face {
  font-family: "News Cycle";
  src: url("/static/fonts/NewsCycle-Regular.ttf") format("truetype");
  font-weight: normal;
}
@font-face {
  font-family: "News Cycle";
  src: url("/static/fonts/NewsCycle-Bold.ttf") format("truetype");
  font-weight: bold;
}


@color: black;
@serif: Domine;
@sans: News Cycle;
@mono: Not Courier Sans;
@font-lettrine: Belgika;
@font-size: 15px;
@line-height: 19px;
@font-size-small: 12px;
@line-height-small: 15px;



/* BLOCKS -------------------------------------  */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-rendering: optimizeLegibility;
    font-feature-settings: "liga", "dlig", "clig", "kern";
    -webkit-font-feature-settings: "liga", "dlig", "clig", "kern";
    -moz-font-feature-settings: "liga", "dlig", "clig", "kern";
    -o-font-feature-settings: "liga", "dlig", "clig", "kern";
    text-indent: 0;
}

body {
    background-size: 100%;
    background-attachment: fixed; 
    background-repeat: no-repeat;
    color: black;
    font-family: @serif;
    font-size: @font-size;
    line-height: @line-height;
    padding: @line-height / 2;
}
/* Insertion du pad dans la page */
iframe {
    outline: 1px solid #333;
}
iframe#ether {
    height: 700px !important;
    max-width: 50em;
    margin: auto;
}

/* Style des niveaux de titre */
h1, h2, h3, h4, h5, h6 {
    font-size: @font-size;
    font-weight: bold;
    font-family: @serif;
    margin: 0;
    text-align: center;
    margin-top: 2 * @line-height;
    margin-bottom: @line-height;
    clear: both;
}
h1 {
    font-size: @font-size;
    line-height: @line-height;
    margin: @line-height 0;
    text-align: center;
    font-family: @font-lettrine;
    font-weight: normal;
}
#content h1 {
    font-size: @font-size * 3.5;
    line-height: 1em;
    position: relative;
    top: -8px;
    -webkit-region-break-before: always;
}
h2 {
    font-size: @font-size * 1.5;
    line-height: 1.3em;
    text-transform: uppercase;
    text-align: center;
    font-family: @font-lettrine;
    font-weight: normal;
}
h3 {
    text-transform: uppercase;
    margin: @line-height 0;
    font-family: @font-lettrine;
    font-weight: normal;
}
h4 {
    text-decoration: underline;
    font-family: @font-lettrine;
}


a {
    font-family: @sans;
}
a.include {
    font-family: @serif;
}

img {
    display: inline-block;
    max-width: 49%;
    /*float: left;*/
    padding-left: @line-height / 2;
    padding-bottom: @line-height / 2;
    padding-right: 0;
    vertical-align: top; 
    /*display: block;*/
    
    &:first-child {
        /*padding-left: 0;*/
    }
    &:last-child {
        /*padding-right: 0;*/
    }
}

img.inline {
    display: inline; 
    vertical-align: top; 
    padding: 0;
    height: 1em;
}
img.large {
    width: 100% !important;
    max-width: none !important;
    margin: auto !important;
}

.thumbnail {
    max-width: 30%;
}


.gallery { 
    margin-left: -4cm;
}
.gallery.even { 
    margin-left: 0;
}

.gallery {
    max-width: none !important;
    width: 537px;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: @line-height;
    
    img {
        //width: 33% !important;
        height: 3.75cm;
        margin: 0;
        padding: 0;
        padding-bottom: @line-height;
    }

    figure {
        //width: 33.33% !important;
        //float: left;
        height: 3.35cm;
        margin-bottom: @line-height *2;
                
        img {
            height: 100% !important;
            max-width: none !important;
            padding-bottom: 0 !important;
            margin-bottom: 0 !important;
        }
    }
}


blockquote {
    font-family: @serif;
    font-size: @font-size;
    margin: @line-height 0;
    font-style: italic;
}

.notes > blockquote:first-child {
    margin: 0 !important;
    font-style: normal;
}

p {
    margin-bottom: 0;
    clear: both;
    text-indent: 0;
}
p + p {
    text-indent: @line-height * 2;
}

h2#summary,
h2#summary_1,
h2#summary_2,
h2#summary_3 {
    display: none;
}
.summary > p:first-of-type,
.summary_1 > p:first-of-type,
.summary_2 > p:first-of-type,
.summary_3 > p:first-of-type   {
    text-indent: 16em;
    margin-top: 1em;
}
.summary > p:first-of-type:first-letter,
.summary_1 > p:first-of-type:first-letter,
.summary_2 > p:first-of-type:first-letter,
.summary_3 > p:first-of-type:first-letter {
    font-size: 2.5 * @font-size;
    font-family: @font-lettrine;
}
.summary > p:first-of-type:first-line,
.summary_1 > p:first-of-type:first-line,
.summary_2 > p:first-of-type:first-line,
.summary_3 > p:first-of-type:first-line {
    font-variant: small-caps;
    font-family: @font-lettrine;
}


/* Define two variables as the loop limits */
@from : 0;
@to : 10;
 
/* Create a Parametric mixin and add a guard operation */
.loop(@index) when(@index =< @to) {
      /* As the mixin is called CSS is outputted */
      .summary img:nth-child(@{index}) {
            margin-top: unit(@index * 80, px);
       }
      /* Interation call and operation */
      .loop(@index + 1);
}
 
/* the mixin is called, css outputted and iterations called */
//.loop(@from);

.summary p {
    //position: relative;
}
    .summary img {
        //position: absolute;
        width: 2.5cm;
    }






hr {
    border: 0;
    height: @line-height;
    margin: 0;
    clear: both;
}
hr + hr {
    display: block;
    border-bottom: 1px solid black;
}

code, pre {
    font-family: @mono;
    white-space: pre-wrap;
    font-weight: bold;
}
pre {
    outline: 1px solid @color;
    padding: @line-height;
    width: 100%;
}

/* Style des légendes d'images */
figcaption {
    font-family:  @sans;
    font-size: @font-size-small;
    line-height: @line-height-small;
    text-align: center;
    margin-bottom: @line-height;
}
/* Style des frames de vidéo ou autres objets hors image */
figure iframe {
    max-width: 70%;
    margin: @line-height auto;
    display: block;
}
figure {
    text-align: center;
}
figure img {
    float: none;
    margin-left: auto;
    margin-right: auto;
}
audio,
video,
iframe {
    display: none;
}

/* Style des notes de bas de pages */
.footnote {
    font-size: -1 + @font-size-small;
    line-height: @line-height-small;

    
    ol {
        list-style-position: inside;
        margin: 0;
    }
    p {
        margin-bottom: 0;
    }
}


/* INLINES ------------------------------------- */
/* Style des liens hypertextes */
a,
a:visited {
    text-decoration: none;
    color: @color;
}
/* Style du texte en roll-over sur les liens */
a:hover {
    text-decoration: none;
    color: black;
}
/* Style quand on arrive à une ancre */
.target {
    background-color: @color;
}
/* Style de l'italique */
em {
    font-style: italic;
}
/* Style du bold */
strong {
    font-weight: bold;
}
/* Style des exposants */
sup {
    font-size: 0.65em;
    line-height: 0;
    vertical-align: 0.5em;
    text-decoration: none;
    margin-left: 1px;
    font-weight: bold;
}
sup a {
    font-family:  @sans;
}
/* Style du texte souligné */
u {
    text-decoration: none;
    border-bottom: 2px solid yellow;
}

dl {
    margin: @line-height/2 0;
}

dt {
    //font-style: italic;
    font-weight: bold;
    display: inline;
    font-family: @sans;
    text-indent: 0;
    margin-right: 0;
}

dt strong {
    text-decoration: underline;
}


dd + dt:before,
.metadata dt:before {
    content: " ";
    display: block;
    height: 8.75px /2 ;
}

dt:after {
    content: ": ";
}
dd {
    display: inline;
    margin: 0;
    text-indent: 0;
}
dd + dd {
    padding-left: @line-height * 2;
}


dd:after {
    content:'\0A';
    white-space:pre;
} 

.metadata dd:after {
    content: '';
    white-space:pre;
} 


.metadata dd:before {
    content: ", ";
    margin-left: 0px;
}
.metadata dt + dd:before {
    content: "";
    margin-left: 0;
}

.metadata dt.meta-theme,
.metadata dt.meta-theme + dd {
    display: none;
}

.metadata dd {
    padding-left: 0;
}

hr + dl {
    margin-top: -@line-height;
}

dl + p {
    margin-top: @line-height;
}

.comment:before {     
    background-color: yellow !important;
    border-radius: 1em;
    display: inline;
    height: 1em;
    margin: 0 0.5em;
    padding-left: 7px;
    padding-right: 9px;
    text-align: center;
    width: 1em;
    content: "!";
    font-family:  @sans;
} 


/* FORMS -------------------------- */
form {
    margin-bottom: none;
}
form label, form textarea {
    font-family: inherit;
    font-size: inherit;
}
form input, form textarea {
  background: none;
  border-style: solid;
  border-color: black;
  font-family: sans-serif;
    font-size: inherit;
}
/* Style de l'élément activé */
form input:focus, form textarea:focus {
    background-color: white;
}
form input[type=text], form input[type=password] {
  height: 25px;
    position: relative;
    top: -1px;
    width: 200px;
}
form input[type=submit] {
    cursor: pointer;
    padding: 0;
  height: 26px;
  border-style: none;
  border-color: none;
  text-decoration: none;
  color: @color;
}
form input[type=submit]:hover {
    background-color: white;
    text-decoration: none;
    color: black;
}

/* GENERIC CLASSES -------------------------------- */

.clearfix {
    overflow: auto;
}

/* Style des boutons */
.button {
  text-decoration: none;
    margin: 0 @line-height / 2;
}
/* Style des boutons en roll over */
.button:hover {
    background-color: none;
    outline: none;
}
/* Classe pour transformer des éléments blocs en éléments en ligne */
.inline {
    display: inline;
}


/* PAGE STRUCTURE --------------------------------- */
/* Style des containers */
.wrap {
    margin: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* Style des sous-parties de containers */
.left-side, .middle, .right-side {
    float: left;
    position: relative;
}
.left-side,
.right-side  {
    margin-top:0;
    height: 0;
}
.middle {
    width: 180mm;
    padding: @line-height 2 * @line-height;
}

.write-mode .middle {
    width: 70%;
}

/* NAV ------------------------------------------ */


/* Navigation */
nav {
    font-family: @sans;
    line-height: @line-height-small;
    font-size: @font-size-small;
    position: fixed;
    top: 0;
    background-color: white;
    padding: @line-height / 4;
    z-index: 1000;
}
nav#nav-left {
    left: 0;
    width: 100%;
}
nav#nav-right {
    right: 0;
    text-align: right;
}
nav div#staff-menu {
    display: inline;
    color: darkgray;
}

nav h1 {
    display: inline;
}
nav span:before {
    content: " — ";
}

nav div#sort-by {
    display: inline;
    color: darkgray;
}


/* Texte précédent/suivant */
div#previous a,
div#next a {
    position: fixed;
    top: 6.5em; 
    font-family:  sans-serif;
    font-size: @font-size-small;
    line-height: @line-height-small;
    padding: @line-height;
}
div#previous a span,
div#next a span {
    display: none;
}
div#previous a:hover span,
div#next a:hover span {
    display: block;
}
div#next {
    text-align: right;
    padding-right: 0;
}
div#next a {
        right: 0;
}

/* MAIN CONTENT ---------------------------------- */
header {
    margin-top: -0.5px;
    font-size:  2.5 * @font-size;
    line-height: 1.2em;
    text-align: center;
    margin-bottom: @line-height;
}
header p, header h2 {
    font-family: inherit;
    margin-bottom: 0;
    line-height: inherit;
    text-align: center;
    display: inline;
}
header h2 {
    font-size: inherit;
    line-height: 1em;
    display: block;
    font-family: @font-lettrine;
    text-transform: none;
    margin-top: 0;
}

header p.authors:after {
    content: ", ";
}



ul li:before {
    content: "– ";
}
ul {
    margin-top: @line-height;
    margin-left: @line-height;
    margin-bottom: @line-height;
}
ul ul {
    margin-top: 0;
    margin-bottom: 0;
}

#content  {
    h1, h2, h3, h4, h5, h6,
    p, ul, ol, div {
        //max-width: 380px;
    }
}

ol {
    list-style-type: decimal;
    margin-left: @line-height;
    
    li {
        text-indent: 0;
    }
}
.footnote ol li {
    margin-bottom: 0em;
}


.note {
    margin: @line-height;
    margin-left: 25%;
    text-indent: 0;
    font-family: @sans;
    font-size: @font-size;
    
    & + p {
        text-indent: 0;
    }
}
.noteA {
    width: 75%;
    float: right;
    margin: 0;
}
.noteB {
    width: 75%;
    font-family: @sans;
}




#content {
    position: relative;
}

div#go-up {
    clear: both;
    margin-top: 2 * @line-height;
    a {
        border-bottom: none;
    }
    a:hover {
        color: @color;
    }
}

/* AUTHORSHIP ----------------------------- */ 

.authors {
    display: inline;
}
/* Hides Etherpad background colours */ 
#content span {
    background-color: inherit !important;
}

/* ------ PRINT/SCREEN ------ */
@media screen {
    .print-only {
    display: none;
    }
}





/* ================================================================================== */
@page {
    size: 210mm 297mm;
    margin: 0;
}

.page .main-section {
    top: 23mm;
    padding-bottom: 17mm;
}

div.marginalia {
    position: absolute;
    width: 35mm;
    height: 100%;
    top: 10mm;
    -webkit-flow-from: marginalia;
}
div.metadata {
    -webkit-flow-into: marginalia;
}
div.metadata {
    -webkit-region-break-after: always;
    display: block;
    position: static;
    clear: both;
   font-family: @sans;
   font-size: @font-size-small;
    line-height: -1+@line-height-small ;
}

div.footnote-marginalia {
    position: absolute;
    width: 35mm;
    height: 100%;
    top: 10mm;
    -webkit-flow-from: footnote-marginalia;
}
div.footnote {
    -webkit-flow-into: footnote-marginalia !important;
    -webkit-region-break-after: always;
}

.header { font-family: @sans; }

/* PAGE DE GAUCHE */
    .page:nth-child(odd) .header,
    .page:nth-child(odd) .main-section,
    .page:nth-child(odd) .footer {
        padding-left: 20mm;
        padding-right: 20mm;
    }
    .page:nth-child(odd) section.header:before {
        font-family: @font-lettrine;
        right: 20mm;
        float: right;
    }
    .page:nth-child(odd) section.header {
        text-align: left;
        float: left;
    }
    .page:nth-child(odd) section.header:after {
        content: "";
        left: 20mm;
        position: absolute;
        text-align: right;
        font-family: @sans;
    }
    .page:nth-child(odd) .marginalia,
    .page:nth-child(odd) .footnote-marginalia {
        right: 20mm;
    }
    .page:nth-child(odd) .column {
        width: 100%;
    }

/* PAGE DE DROITE */
    .page:nth-child(even) .header,
    .page:nth-child(even) .main-section,
    .page:nth-child(even) .footer {
        padding-left: 20mm;
        padding-right: 20mm;
    }
    .page:nth-child(even) section.header:before {
        left: 20mm;
        font-family: @font-lettrine;
        float: left;
    }
    .page:nth-child(even) section.header {
        text-align: right;
    }
    .page:nth-child(even) section.header:after {
        content: "";
        right: 20mm;
        position: absolute;
        text-align: left;
        float: left;
        font-family: @sans !important;
    }
    .page:nth-child(even) .marginalia,
    .page:nth-child(even) .footnote-marginalia {
        left: 20mm;
    }






.footer,
.page-ref {
    font-family: @font-lettrine;
}

.footnote-backref {
    display: none;
}

.middle,
#content {
    padding: 0;
}

/* Pour les inclusions de pads dans les compilations */
.include .middle {
    width: 100%;
}

.include .middle #content  {
    width: 100%;
}


#logo {
    position: fixed;
    top: 10px;
    left: 0;
    z-index: 10000;
    display: none;
}
#logo:after {
    content: attr(data-article);
}



div.column + div.column {
    padding-left: @line-height;
}




.screen-only,
.button,
nav span,
.left,
.right,
div#go-up {
    display: none;
}
video,
audio {
    display: none;
}


a.include {
    -webkit-region-break-before: always !important;
    position: static;
    display: block;
}

//.debug .column { outline: 1px solid yellow;}
//.debug #content { outline: 1px solid blue;}
//.debug .marginalia, .debug .footnote-marginalia, { outline: 1px solid blue;}



.comment {
    display: none;
}

.region-break {
    -webkit-region-break-before: always;
}

