html {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

body {
  font-family: sans-serif;
  touch-action: none; }

@media (any-pointer: coarse) {
  body {
    font-size: 1.2em; } }
#master {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background-color: white;
  overflow: hidden; }

#head {
  width: 100%;
  margin: 0px;
  height: 22px;
  background-color: black; }
  #head .link {
    color: #f37021;
    float: right;
    display: inline-block;
    margin: 5px 10px;
    font-size: 12px; }
    #head .link img {
      margin: 0px 5px 0px 0px; }
    #head .link a {
      text-decoration: none;
      color: inherit; }

#uppernav {
  width: 100%;
  margin: 0px;
  height: 95px;
  background-color: #02336a;
  color: white;
  position: relative; }
  #uppernav #logo {
    background-image: url("../../image/logo.png");
    background-position: right;
    background-repeat: no-repeat;
    position: absolute;
    right: 0px;
    width: 150px;
    top: -5px;
    bottom: 0px;
    cursor: pointer; }
  #uppernav #mainmenu {
    position: absolute;
    right: 0px;
    max-width: 800px;
    left: 0px;
    top: 0px; }
    #uppernav #mainmenu .menusection {
      display: inline-block; }
      #uppernav #mainmenu .menusection ul {
        list-style-type: none;
        margin: 0px;
        padding: 0px; }
        #uppernav #mainmenu .menusection ul li {
          height: 38px;
          overflow: hidden;
          font-size: 1.2em;
          margin: 0px 1px;
          padding: 8px 5px;
          vertical-align: text-bottom;
          cursor: pointer; }
        #uppernav #mainmenu .menusection ul li.selected {
          background-color: white;
          color: #02336a; }
        #uppernav #mainmenu .menusection ul li.view_style.selected {
          background-color: inherit;
          color: #02336a; }
        #uppernav #mainmenu .menusection ul a {
          color: white;
          text-decoration: none; }
  #uppernav #searchbar {
    position: absolute;
    bottom: 0px;
    right: 200px;
    max-width: 800px;
    left: 0px;
    top: 45px;
    padding: 10px 10px 5px 10px; }
    #uppernav #searchbar #search {
      position: absolute;
      left: 10px;
      width: calc(100% - 160px);
      bottom: 10px;
      top: 10px;
      padding: 5px;
      background-color: #fff;
      background-image: url("/image/search.png");
      background-position: right;
      background-repeat: no-repeat;
      border: 1px solid white;
      border-radius: 2px; }
    #uppernav #searchbar #conference-selector {
      position: absolute;
      width: 120px;
      right: 15px;
      bottom: 10px;
      top: 10px; }
      #uppernav #searchbar #conference-selector select {
        position: absolute;
        right: 0px;
        bottom: 0px;
        top: 0px;
        left: 0px;
        min-width: 130px;
        font-size: 0.7em;
        background: white;
        background-color: #fff;
        background-image: url("/image/selector.png");
        background-position: right;
        background-repeat: no-repeat;
        border: 1px solid white;
        border-radius: 2px;
        -webkit-appearance: none;
        -moz-appearance: none;
        -o-appearance: none;
        appearance: none;
        padding: 5px 35px 5px 15px;
        box-sizing: border-box;
        cursor: pointer; }
      #uppernav #searchbar #conference-selector select::-ms-expand {
        display: none; }

/* If frontpage is focused then we hide the papermaster and the menus */
#master.focus-frontpage #mainmenu .hide-front {
  display: none; }
#master.focus-frontpage #frontmaster {
  display: block; }
#master.focus-frontpage #papermaster {
  display: none; }

#master.focus-frontpage[page='frontpage'] #homemenu {
  display: none; }

/* If frontpage is focused then we hide the papermaster and the menus */
#master.focus-list #mainmenu,
#master.focus-paper #mainmenu {
  display: block; }
#master.focus-list #frontmaster,
#master.focus-paper #frontmaster {
  display: none; }
#master.focus-list #papermaster,
#master.focus-paper #papermaster {
  display: block; }

#content {
  position: absolute;
  padding: 10px;
  fant-size: 1.0em;
  top: 117px;
  bottom: 30px;
  left: 0px;
  right: 0px;
  overflow: hidden; }
  #content .banner {
    top: 10px;
    position: absolute;
    width: 120px;
    right: 10px;
    background-color: white;
    cursor: pointer; }
  #content #papermaster .paper-view {
    position: absolute;
    left: 42%;
    right: 140px;
    top: 10px;
    bottom: 10px;
    vertical-align: top;
    padding: 10px;
    overflow-y: auto; }
  #content #papermaster .list-view {
    position: absolute;
    left: 10px;
    width: 40%;
    top: 10px;
    bottom: 10px;
    vertical-align: top;
    overflow-y: hidden; }
  #content .contents {
    overflow-y: auto;
    position: absolute;
    left: 240px;
    right: 140px;
    top: 10px;
    bottom: 10px; }
  #content .conference-menu {
    position: absolute;
    left: 10px;
    width: 220px;
    top: 20px;
    bottom: 10px;
    overflow-y: auto; }

@media (min-width: 941px) {
  #mainmenu #home-icon-container {
    display: inline-block; }

  #mainmenu #back-view-container {
    display: none; } }
/** This is used in tablet mode  */
@media (max-width: 944px) {
  #master.focus-list #mainmenu #home-icon-container {
    display: inline-block; }
  #master.focus-list #mainmenu #back-view-container {
    display: none; }
  #master.focus-list #papermaster .list-view {
    width: 100%;
    left: 0%;
    transition: 0.5s; }
    #master.focus-list #papermaster .list-view .alphabet, #master.focus-list #papermaster .list-view .resultcount {
      padding-left: 0.5em; }
  #master.focus-list #papermaster .paper-view {
    width: 100%;
    left: 100%;
    transition: 0.5s; }

  #master.focus-paper #mainmenu #home-icon-container {
    display: none; }
  #master.focus-paper #mainmenu #back-view-container {
    display: inline-block; }
  #master.focus-paper #papermaster .list-view {
    width: 100%;
    left: -100%;
    transition: 0.5s; }
  #master.focus-paper #papermaster .paper-view {
    width: 100%;
    left: 0%;
    transition: 0.5s; }

  #frontmaster .conference-menu {
    display: none; }
  #frontmaster .contents {
    left: 10px;
    right: 0px; }

  bodya {
    font-size: 10px; }

  .banner {
    display: none; } }
#master.display-home #homemenu {
  display: inline-block; }

#mainmenu .viewmenu ul li {
  display: inline-block; }

@media (min-width: 651px) {
  .sortmenu ul li {
    display: inline-block; } }
@media (max-width: 650px) {
  .sortmenu {
    display: none;
    position: absolute;
    left: -80%;
    width: 80%;
    top: 0px;
    bottom: 0px; }
    .sortmenu ul li {
      display: block; } }
#lower.closed {
  bottom: -220px;
  transition: 0.5s; }

#lower.opened {
  bottom: 0;
  transition: 0.5s; }

#lower {
  position: absolute;
  height: 250px;
  left: 0px;
  right: 0px; }
  #lower #lowernav {
    width: 100%;
    margin: 0px;
    height: 50px;
    padding: 10px;
    background-color: #f37021;
    min-height: 90px;
    border-bottom: 1px solid white;
    color: white; }
    #lower #lowernav .impressum {
      position: absolute;
      font-size: 0.8em;
      right: 10px;
      top: 10px;
      bottom: 5px; }
      #lower #lowernav .impressum a {
        text-decoration: none;
        color: white; }
  #lower #footer {
    width: 100%;
    margin: 0px;
    padding: 10px;
    height: 200px;
    background-color: #f37021;
    min-height: 90px;
    color: white;
    text-align: center; }
    #lower #footer a {
      text-decoration: none;
      color: inherit; }

div#grid .entry {
  display: inline-block;
  margin: 5px;
  background-color: #f2f2f8;
  padding: 10px;
  width: 140px;
  height: 145px;
  overflow: hidden;
  font-size: 0.75em; }
  div#grid .entry .title {
    position: absolute;
    top: 0px;
    height: 6.5em;
    left: 0px;
    right: 0px;
    padding: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: bold;
    font-size: 1.0em;
    margin-bottom: 10px; }
  div#grid .entry .meta {
    position: absolute;
    top: 7.5em;
    bottom: 0px;
    left: 0px;
    right: 0px;
    padding: 0px 10px; }
    div#grid .entry .meta .author {
      font-style: italic;
      margin-bottom: 10px;
      text-align: right;
      color: #bd4e0a; }
    div#grid .entry .meta .category {
      font-size: 0.8em;
      margin-bottom: 0.5em;
      color: #7070a0;
      font-style: italic;
      text-align: right; }
    div#grid .entry .meta .conference {
      font-size: 0.7em;
      color: #606080;
      text-align: right; }

.datatable-container {
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  overflow-y: hidden;
  display: flex;
  flex-direction: column;
  flex-wrap: no-wrap;
  align-items: stretch; }
  .datatable-container .alphabet {
    display: block;
    width: 100%;
    font-size: 1em;
    flex-grow: 0; }
    .datatable-container .alphabet .alphabet-link {
      margin-bottom: 5px;
      display: inline-block;
      width: 1.3em;
      height: 1.3em;
      background-color: #888;
      color: white;
      padding: 0.2em;
      text-align: center;
      cursor: pointer; }
      .datatable-container .alphabet .alphabet-link a {
        text-decoration: none;
        color: white; }
    .datatable-container .alphabet .alphabet-link:hover {
      background-color: #aaa; }
    @media (any-pointer: coarse) {
      .datatable-container .alphabet .alphabet-link {
        font-size: 1.1em; } }
  .datatable-container .resultcount {
    padding: 0.8em 0px;
    font-weight: bold;
    font-size: 16px;
    border-bottom: 1px solid #b0b0b0;
    flex-grow: 0; }
  .datatable-container .datatable-scroll {
    overflow-y: auto;
    flex-grow: 1; }

table.datatable {
  width: 100%;
  font-size: 0.8em; }
  @media (max-width: 944px) {
    table.datatable {
      font-size: 0.8em; } }
  table.datatable tr.datarow:hover {
    background-color: #f0f0ff; }
  table.datatable tr.datarow.category {
    background-color: #778;
    color: #fff; }
    table.datatable tr.datarow.category td {
      font-size: 1.3em;
      font-weight: bold;
      padding: 0.4em; }
  table.datatable tr.datarow td {
    padding: 0.6em 0.6em 2em 0.6em;
    border-bottom: 1px solid #e0e0e0;
    font-size: 1.3em; }
    table.datatable tr.datarow td .title {
      font-size: 0.8em;
      font-weight: bold;
      cursor: pointer; }
    table.datatable tr.datarow td .rightblock {
      float: right;
      margin: 0.5em 0em 0 0; }
      table.datatable tr.datarow td .rightblock .author {
        margin: 0.5em 0em 0 0;
        font-size: 0.7em;
        color: #f37021;
        text-align: right; }
      table.datatable tr.datarow td .rightblock .category {
        font-size: 0.7em;
        color: #7070a0;
        font-style: italic;
        margin: 0.4em 0 0 0;
        text-align: right; }
      table.datatable tr.datarow td .rightblock .conference {
        font-size: 0.7em;
        color: #404060;
        margin: 0.4em 0 0 0;
        text-align: right; }
    table.datatable tr.datarow td .highlights {
      clear: both; }
      table.datatable tr.datarow td .highlights .result-count {
        font-weight: normal;
        font-size: 0.8em;
        color: #888;
        margin: 3em 0 0 0;
        text-align: left;
        cursor: pointer; }
      table.datatable tr.datarow td .highlights .result-count:hover {
        font-weight: bold; }
      table.datatable tr.datarow td .highlights .all-highlights {
        display: none;
        border-top: 1px solid #ddd;
        padding: 0.5em 0em; }
        table.datatable tr.datarow td .highlights .all-highlights .highlight {
          font-weight: normal;
          font-size: 0.6em;
          color: #777;
          margin: 0.2em 0 0 0; }
          table.datatable tr.datarow td .highlights .all-highlights .highlight b {
            color: #444;
            font-style: italic;
            font-weight: bold; }
  table.datatable tr.datarow:last-of-type td {
    border-bottom: 0px solid #d0d0d0; }

.paper {
  font-size: 0.9em; }
  .paper .head {
    margin-bottom: 2em;
    border-bottom: 1px solid #f37021;
    padding-bottom: 2em; }
    .paper .head .title {
      width: 100%;
      font-size: 1.2em;
      margin: 0px 0 10px 0;
      font-weight: bold;
      color: #02336a; }
    .paper .head .author {
      width: 100%;
      font-size: 0.8em;
      font-style: italic;
      padding: 5px 0px; }
    .paper .head .event {
      font-size: 0.7em;
      font-style: italic;
      padding: 5px 0px;
      float: left;
      color: #88a; }
    .paper .head .doi {
      font-size: 0.7em;
      font-style: italic;
      padding: 5px 0px;
      float: right;
      height: 1.2em; }
  .paper .keywords {
    margin: 15px 0px 5px 0px;
    font-style: italic;
    font-size: 0.8em;
    color: #88A;
    text-align: right; }
  .paper .download {
    border-top: 1px solid #f37021;
    padding: 10px 0px 0px 0px; }
    .paper .download a {
      text-decoration: none;
      color: #02336a; }
  .paper .summary p {
    font-size: 1.0em;
    margin-bottom: 0.8em; }

.contents .breadcrumbs {
  width: 100%;
  border-bottom: 1px dotted #f37021;
  color: #f37021;
  font-size: 12px;
  font-weight: bold;
  padding: 0px 0px 5px 0px; }
  .contents .breadcrumbs .breadcrumb {
    display: inline-block; }
  .contents .breadcrumbs a {
    text-decoration: none;
    color: #f37021; }
.contents h1 {
  font-size: 1.3em;
  font-weight: bold;
  color: #f37021;
  margin-bottom: 1em;
  margin-top: 1em; }
.contents h2 {
  font-size: 1em;
  font-weight: bold;
  color: #f37021;
  margin-bottom: 1em;
  margin-top: 3em;
  border-top: 1px dotted #f37021; }
.contents p {
  font-size: 0.9em;
  margin-bottom: 0.8em; }
.contents .contact p {
  font-size: 0.8em;
  color: #888;
  margin-bottom: 2px;
  margin-left: 10px; }
.contents ul {
  padding: 0.1em;
  margin-left: 2em;
  margin-bottom: 1em; }
  .contents ul li {
    font-size: 0.8em;
    color: #444;
    font-style: italic;
    margin-bottom: 0.15em; }
.contents .disclaimer {
  font-size: 0.7em; }
.contents .conference {
  margin-bottom: 1em;
  color: #404080;
  margin-bottom: 2em;
  border-bottom: 1px solid #f0f0f0; }
  .contents .conference p {
    margin-bottom: 0.3em;
    font-size: 0.9em; }
  .contents .conference .name {
    font-weight: bold; }
.contents li.link {
  margin-bottom: 5px; }
.contents a {
  color: #02336a; }

.conference-menu {
  background-color: #f0f0f0;
  padding: 10px;
  font-size: 0.7em; }
  .conference-menu .name {
    font-size: 1.1em;
    color: #02336a;
    font-weight: bold;
    margin-bottom: 5px; }
  .conference-menu .desc {
    color: #02336a;
    margin-bottom: 5px;
    font-style: italic;
    font-weight: bold; }
  .conference-menu .place {
    color: #888;
    font-style: italic; }
  .conference-menu .date {
    color: #888;
    font-style: italic; }
  .conference-menu a {
    display: block;
    text-decoration: none;
    margin-bottom: 15px;
    border-bottom: 1px dotted #d0d0d0;
    padding-bottom: 10px; }
