/* Layout */
.keep-together {
  display: inline-block; }

.modal {
  z-index: 5000; }
  .modal .modal-title {
    color: #263238;
    font-weight: 400;
    line-height: 1.2;
    width: 80%; }

.app-layout__header {
  background-color: #1e64c8;
  box-shadow: none; }
  .app-layout__header .mdl-layout__header-row {
    padding-left: 56px; }
  .app-layout__header img {
    height: 0.8em;
    margin-bottom: 0.15em; }
  .app-layout__header .mdl-layout-title,
  .app-layout__header .mdl-layout__drawer-button,
  .app-layout__header .mdl-navigation__link,
  .app-layout__header .mdl-button > .material-icons,
  .app-layout__header .mdl-button--accent {
    color: white; }
  .app-layout__header .mdl-layout__drawer-button {
    line-height: 54px; }
  .app-layout__header .mdl-button--accent {
    min-width: auto; }
  .app-layout__header .mdl-button--icon {
    margin-left: 8px; }
  .app-layout__header svg {
    height: 22px;
    width: 22px;
    fill: white; }
  .app-layout__header .app-menu {
    padding: 0; }
    .app-layout__header .app-menu .mdl-menu__item {
      padding: 0 16px;
      height: 40px;
      line-height: 40px; }
      .app-layout__header .app-menu .mdl-menu__item a {
        display: block;
        text-decoration: none;
        color: #263238; }
        .app-layout__header .app-menu .mdl-menu__item a:hover {
          color: #1e64c8; }

.btn-primary {
  color: #fff;
  background-color: #1e64c8;
  border-color: #1e64c8; }

.btn-outline-primary {
  color: #1e64c8;
  border-color: #1e64c8; }

.app-layout__header-transparent {
  background: transparent;
  color: #263238;
  border-bottom: 1px solid #CFD8DC;
  width: 824px !important;
  margin-left: 332px !important; }
  .app-layout__header-transparent small.user {
    font-size: small; }
  .app-layout__header-transparent .mdl-layout__header-row {
    height: 80px;
    padding: 0 !important; }
  .app-layout__header-transparent .mdl-layout-title,
  .app-layout__header-transparent .mdl-layout__drawer-button,
  .app-layout__header-transparent .mdl-navigation__link,
  .app-layout__header-transparent .mdl-button > .material-icons,
  .app-layout__header-transparent .mdl-button--accent {
    color: #263238; }
  .app-layout__header-transparent .mdl-button {
    background-color: #1e64c8;
    font-weight: bold; }

.app-textfield-wrapper .mdl-textfield {
  width: 100%; }

.app-textfield-wrapper .mdl-textfield__label {
  color: rgba(0, 0, 0, 0.4); }

.app-textfield-wrapper p.help {
  margin: 0; }

.app-textfield-wrapper .g-recaptcha {
  margin: 32px 0; }

.app-grid__container {
  max-width: 856px; }
  @media (min-width: 840px) {
    .app-grid__container {
      margin-left: 16px; } }

.app-footer .colophon {
  border-top: 1px solid #CFD8DC;
  margin-top: 32px;
  padding-top: 8px; }
  .app-footer .colophon p {
    color: #455A64;
    font-size: 0.8rem; }

.right {
  float: right; }

/* Drawer */
.app-layout__drawer {
  background: #ECEFF1;
  padding: 16px; }
  .app-layout__drawer img.fpl {
    max-width: 80px;
    margin-bottom: 16px; }
  .app-layout__drawer h5 {
    padding: 8px 0;
    margin: 8px 0 16px;
    font-size: 14px;
    text-transform: uppercase;
    color: #455A64;
    font-weight: 600; }
  .app-layout__drawer hr {
    border-color: #cfd6db; }
  .app-layout__drawer hr + h5 {
    padding-top: 0; }
  .app-layout__drawer .app-navigation__drawer {
    margin: -16px;
    padding-bottom: 32px; }
    .app-layout__drawer .app-navigation__drawer .mdl-navigation__link {
      padding: 8px 16px;
      color: #455A64;
      font-weight: 600; }
      .app-layout__drawer .app-navigation__drawer .mdl-navigation__link:hover {
        color: #1e64c8; }
    .app-layout__drawer .app-navigation__drawer hr {
      height: 0;
      width: 268px;
      margin: 16px 0;
      border-color: white; }
  .app-layout__drawer .material-icons {
    font-size: 20px;
    margin-right: 8px;
    vertical-align: -25%; }
    .app-layout__drawer .material-icons.external {
      float: right;
      margin-top: 6px;
      margin-right: 0;
      font-size: 14px;
      color: #90a7b2; }

.btn--icons .material-icons {
  font-size: inherit;
  vertical-align: -15%;
  margin-right: 0.4rem; }

.app--full-height {
  height: 100%; }

@media (min-width: 1024px) {
  .app-layout__drawer {
    box-shadow: none;
    border: 0;
    width: 300px;
    padding: 32px; }
    .app-layout__drawer .app-navigation__drawer {
      margin-left: -32px;
      margin-right: -32px; }
      .app-layout__drawer .app-navigation__drawer .mdl-navigation__link {
        padding: 4px 32px; }
  .mdl-layout--fixed-drawer.is-upgraded:not(.is-small-screen) > .app-layout__header {
    margin-left: 300px;
    width: calc(100% - $drawer-widest); }
  .mdl-layout--fixed-drawer > .app-layout__content {
    margin-left: 300px; } }

/* Typography */
/* Reset some Bootstrap changes */
html, body {
  -webkit-font-smoothing: antialiased;
  font-family: "Roboto", "Helvetica", "Arial", sans-serif;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.3; }

hr {
  margin: 32px 0;
  height: 1px; }

h1, h2, h3 {
  margin: 16px 0 32px;
  line-height: 1.2; }
  h1.compact, h2.compact, h3.compact {
    margin: 8px 0; }

h4, h5 {
  margin: 0;
  line-height: 1.3; }

p {
  line-height: 1.4; }

h1 {
  font-size: 28px;
  font-weight: 300;
  color: #1e64c8; }
  h1 span {
    color: #455A64; }
  @media (min-width: 1024px) {
    h1 {
      font-size: 32px; } }

h2 {
  font-size: 24px; }
  @media (min-width: 1024px) {
    h2 {
      font-size: 28px; } }

h3, h4 {
  font-size: 20px; }
  @media (min-width: 1024px) {
    h3, h4 {
      font-size: 22px; } }

h5 {
  font-size: 14px;
  text-transform: uppercase; }
  @media (min-width: 1024px) {
    h5 {
      font-size: 16px; } }

p, ul {
  font-size: 16px;
  font-weight: 300;
  letter-spacing: 0;
  margin: 16px 0; }
  @media (min-width: 1024px) {
    p, ul {
      font-size: 18px; }
      p:first-child, ul:first-child {
        margin-top: 0; } }

small {
  font-size: smaller;
  font-weight: 300; }

footer p {
  font-size: 0.8rem; }

.typo-small {
  line-height: 1.4;
  font-size: 0.8rem; }

.typo-smaller {
  line-height: 1.4;
  font-size: smaller; }

.table.mdl-tabs__panel thead td {
  border-top: 0; }

div.app-filter--container .badge {
  font-size: 0.8rem;
  font-weight: normal;
  background-color: #a8bac3;
  cursor: pointer; }
  div.app-filter--container .badge.selected {
    background-color: #1e64c8; }

form label {
  color: black;
  font-size: 14px; }

form div.checkbox label {
  font-size: 1rem;
  padding-left: 22px; }

form div.checkbox input {
  margin-left: -22px;
  width: 16px; }

form div.card {
  margin-bottom: 8px; }

form .asteriskField {
  margin-left: 3px;
  color: #1e64c8; }

form .text-muted {
  font-size: 12px;
  font-weight: 400;
  color: #636c72 !important; }
  form .text-muted ul {
    margin-top: 8px; }
  form .text-muted ul, form .text-muted li {
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
    line-height: 1.4; }

form button {
  cursor: pointer; }

form .disabled {
  color: #607D8B; }

form .alert.form-inline select.form-control:not([size]):not([multiple]) {
  height: calc(1.9rem + 2px); }

.form-inline.alert {
  padding: .5rem; }
  .form-inline.alert > div {
    margin: 3px 0 3px 5px; }
  .form-inline.alert .form-control, .form-inline.alert .btn {
    font-size: .75rem;
    margin-right: 5px; }

blockquote {
  font-size: large; }

ul.typo-small, ol.typo-small {
  padding-left: 24px; }
  ul.typo-small li, ol.typo-small li {
    margin-bottom: 0.35rem; }
  ul.typo-small .mdl-button--icon, ol.typo-small .mdl-button--icon {
    min-width: 19px;
    width: 19px;
    height: 19px;
    margin: -4px 0 0 4px; }
    ul.typo-small .mdl-button--icon .material-icons, ol.typo-small .mdl-button--icon .material-icons {
      font-size: 14px;
      transform: translate(-12px, -7px);
      line-height: 14px;
      /* width: 11px; */ }

ul.no-bullets {
  padding: 0; }
  ul.no-bullets li {
    list-style: none; }

ul.dates {
  font-size: 18px;
  padding-left: 150px; }
  ul.dates strong {
    display: inline-block;
    width: 150px;
    margin-left: -150px; }

span.badge {
  font-size: smaller; }
  span.badge.badge--track-keynotes {
    background-color: #E64A19; }
  span.badge.badge--track-papers {
    background-color: #1e64c8; }
  span.badge.badge--track-social {
    background-color: #C2185B; }
  span.badge.badge--track-tutorials {
    background-color: #AFB42B; }
  span.badge.badge--track-workshops {
    background-color: #0097A7; }

.track-keynotes--bio p:last-child {
  font-size: 0.8rem; }

.alert-dismissible .close {
  padding: 0.5rem 1.25rem; }

.app-color-text--primary {
  color: #1e64c8; }

a {
  color: #1e64c8; }
  a:hover,
  .mdl-tabs__tab-bar a,
  .mdl-tabs__tab-bar a:hover {
    text-decoration: none; }
  a.inherit {
    color: inherit;
    font-weight: inherit;
    text-decoration: none; }
    a.inherit:hover {
      text-decoration: underline; }

strong {
  font-weight: 600; }

.mdl-layout__header-row .btn .material-icons {
  font-size: 18px;
  vertical-align: -20%; }

.material-icons.huge {
  font-size: 4rem;
  color: #c6d2d8; }

.list-group {
  color: #607D8B;
  font-weight: 400; }
  .list-group .material-icons {
    vertical-align: bottom;
    color: inherit;
    margin-right: 0.5rem; }

.btn.h1 {
  margin-top: 16px; }

/* Images */
/* Images */
img {
  image-rendering: crisp-edges;
  max-width: 100%; }
  img.activity-avatar {
    height: 108px;
    width: 108px;
    border-radius: 99em;
    margin-left: 16px; }
  img.logo {
    width: auto;
    margin: 30px 0 0 16px; }
  img.radius {
    border-radius: 99em; }
  img.right {
    float: right;
    margin: 0 0 16px 32px; }
  img.sponsor {
    max-width: 108px;
    max-height: 54px;
    margin: 16px 32px 16px 0; }
    @media (min-width: 1024px) {
      img.sponsor {
        max-width: 144px;
        max-height: 72px; } }

/* Custom cells */
.app-cell--colored {
  background: #F4FF81;
  padding: 16px;
  margin-left: -16px; }
  .app-cell--colored.light {
    background: #E3F2FD; }
  @media (min-width: 1024px) {
    .app-cell--colored {
      margin-left: 0;
      padding: 24px;
      height: 100%; } }

@media (min-width: 600px) {
  .app-cell--left {
    padding-right: 8px; }
  .app-cell--right {
    padding-left: 8px; }
  .app-columns--2 {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
    -moz-column-gap: 32px;
    -webkit-column-gap: 32px;
    column-gap: 32px;
    margin-bottom: 16px; }
  .app-columns--ruled {
    -moz-column-gap: 64px;
    -webkit-column-gap: 64px;
    column-gap: 64px;
    -moz-column-rule: 1px outset #CFD8DC;
    -webkit-column-rule: 1px outset #CFD8DC;
    column-rule: 1px outset #CFD8DC; }
  .app-columns--keep-together p {
    -webkit-column-break-inside: avoid;
    /* Chrome, Safari */
    page-break-inside: avoid;
    /* Theoretically FF 20+ */
    break-inside: avoid-column;
    /* IE 11 */
    display: table; } }
