/* layout */
.row {
    margin-left: auto;
    margin-right: auto;
}


#schedule {
    display: grid;
    grid-template-columns: auto repeat(5, 18%);
    cursor: default;
}

#schedule .slot {
    min-height: 3rem;
}

#schedule h2,
#schedule h3 {
    margin: 0 0 0.5em 0;
}

/* style and colors */

#schedule .slot {
    position: relative;
    top: -1.3ex;
    left: -1em;
    padding-left: 1em;
    text-align: right;
    font-size: smaller;
    color: grey;
} 

.session {
    margin: 2px;
    border: 1px solid grey;
    border-radius: 4px;
}

section.session {
    position: relative;
    max-width: 36em;
}

section.session .session-header {
    position: relative;
    padding: 6px;
}

section.session .session-header h2,
section.session .session-header h3 {
    font-size: x-large;
    margin: 0.5rem 0;
}

section.session ol,
section.session .session-details {
    list-style-type: none;
    margin: 0.5em 0;
    padding: 0 0.5em;
}

section.session ol li {
    margin: 0.5em 0;
    padding-left: 3.5em;
}

section.session ol .time {
    display: inline-block;
    position: absolute;
    left: 6px;
}

section.session .contrib {
}

section.session .contrib a,
section.session h2 a,
section.session h3 a,
.session-room a {
    color: inherit;
    text-decoration: none;
}

section.session .contrib a:hover .title,
section.session h2 a:hover,
section.session h3 a:hover,
.session-room a:hover {
    color: inherit;
    text-decoration: underline;
}

section.session .title {
    font-weight: bold;
}



#schedule .session {
    padding: 3px;
}

#schedule .session a {
    color: black;
    text-decoration: none;
}

#schedule .session a:hover {
    text-decoration: underline;
}

#schedule .session-OAC ,
#schedule .session-KEY ,
#schedule .session-LGH ,
#schedule .session-POP ,
section.session-OAC .session-header,
section.session-KEY .session-header,
section.session-LGH .session-header,
section.session-POP .session-header {
    background-color: #9bb0ba;
    cursor: pointer;
}

#schedule .session-COF,
#schedule .session-LUN,
#schedule .session-EXC,
section.session-COF .session-header,
section.session-LUN .session-header,
section.session-EXC .session-header {
    background-color: #ddd;
}

#schedule .session-RGS,
#schedule .session-SPS,
#schedule .session-WKS,
#schedule .session-TUT,
section.session-RGS .session-header,
section.session-SPS .session-header,
section.session-WKS .session-header,
section.session-TUT .session-header {
    background-color: #9bbab6;
}

*[onclick] {
    cursor: pointer;
}

h1 {
    margin: 0.1em 0;
}

.nav-slot-prev {
    margin-top: 1em;
}

.nav-slot-next {
    margin-bottom: 1.5em;
}


/* big screen layout */
@media only screen and (min-width: 991px) {
    #schedule .session ul {
	/*display: none;*/
	max-height: 0px;
    margin-bottom: 0px;
	padding-left: 1.5em;
	overflow: hidden;
	font-size: smaller;
	transition: max-height 500ms;
    }
    
    #schedule .session:hover ul {
	/*display: block;*/
	max-height: 35em;
	transition: max-height 500ms;
    }
    
    
    #schedule .session .time,
    #schedule .session .room {
	display: none;
    }
}

/* small screen layout */

@media only screen and (max-width: 991px) {
  #schedule {
    display: block;
    max-width: 36em;
  }

  #schedule .slot {
    display: none;
  }

  #schedule .session {
    padding: 0.6em;
  }

  #schedule h2,
  #schedule h3 {
    margin-top: 0.5em;
  }
  
  #schedule .session .time {
    display: inline-block;
    width: 6em;
    padding-right: 1em;
    text-align: right;
    font-size: smaller;
  }

    #schedule .session .room {
	display: none;
    }

  #schedule .session ul {
    padding-left:6em;
  }
}

@media only screen and (max-width: 460px) {
  #schedule .session ul {
    padding-left:2em;
  }
}


/* print layout */

@media print {
  #page-top, #container, #mtb, #schedule {
    display: inline;
  }

  footer, a.print, #schedule .slot {
    display: none;
  }

  #schedule .session {
    padding: 0.6em;
  }

  #schedule h2 {
    page-break-before: always;
    margin-top: 0.5em;
  }

  #schedule h2:first-of-type {
    page-break-before: inherit;
  }

  #schedule .title {
    font-weight: bold;
  }

  #schedule .session .time {
    display: inline-block;
    width: 6em;
    padding-right: 1em;
    text-align: right;
    font-size: smaller;
  }

  #schedule .session .room {
    font-size: smaller;
    margin-right: 1em;
  }

  #schedule .session ul {
    padding-left: 6em;
  }

  a[href]:after {
    content: none
  }
}


section.session-details {
    max-width:36em;
    margin-top: 2em;
}



/* Programme stuff */
a.publication {
    clear: right;
    float: right;
    width: 68px;
    height: 68px;
    background: url('/static/css/img/pdf.png') center no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    border: 1px solid white;
    border-radius: 4px;
}

a.publication:hover {
    border-color: grey;
}

a.watch {
    clear: right;
    float: right;
    color: white;
    width: 68px;
    height: 68px;
    margin-left: 1em;
    margin-bottom: 0.5em;
    background: url('/static/css/img/watch-icon-green.png') center no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    border: 1px solid white; /*#9bbab6;*/
    border-radius: 4px;
}

a.watch:hover {
    border-color: grey;
}

.session-header a.watch {
    width: 56px;
    height: 46px;
    background: url('/static/css/img/watch-icon.png') center no-repeat;
}

.session-header a.watch:hover {
    background-color: #c2dad7;
    border-color: white;
}

a.print {
    clear: right;
    float: right;
    color: white;
    width: 48px;
    height: 48px;
    margin-left: 1em;
    margin-bottom: 0.5em;
    background: url('/static/css/img/print.png') center no-repeat;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    border: 1px solid white; /*#9bbab6;*/
    border-radius: 4px;
}

a.print:hover {
    border-color: grey;
}

a.print + * {
    clear: both;
}

p.authors {
    font-weight: bold;
}
