body {
  background-color: #101010;
  color: lightgray;
  font-size: medium;
}
a {
  text-decoration: underline;
  color: lightgray;
}
img {
  text-align: center;
}

.img-mini {
  min-width: 50px;
  min-height: 50px;
  display: flex;
  justify-content: center;
  align-content: center;
}
.img-mini img {
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 50px;
}

.img-small {
  min-width: 100px;
  min-height: 100px;
  display: flex;
  justify-content: center;
  align-content: center;
}
.img-small img {
  width: 100px;
  height: 100px;
  text-align: center;
  line-height: 100px;
}

.img-medium {
  min-width: 250px;
  min-height: 250px;
  display: flex;
  justify-content: center;
  align-content: center;
}
.img-medium img {
  width: 250px;
  height: 250px;
  text-align: center;
  line-height: 250px;
}

.img-large {
  min-width: 500px;
  min-height: 500px;
  display: flex;
  justify-content: center;
  align-content: center;
}
.img-large img {
  width: 500px;
  height: 500px;
  text-align: center;
  line-height: 500px;
}

#root {
  height: 100%;
  display: flex;
  justify-content: center;
}
#app {
  display: flex;
  flex-direction: column;
  min-width: 75vw;
}

#loading {
  justify-content: center;
  align-content: center;
  text-align: center;
  font-size: x-large;
  margin-top: 10vh;
}

#profile {
  justify-content: center;
  align-content: center;
  text-align: center;
  font-size: x-large;
  margin-top: 10vh;
}

#sidebar {
  flex: 1;
  border-right: 1px solid darkgray;
  margin: 3px;
  font-size: large;
}
#sidebar .divider {
  border: 1px solid darkgray;
  margin-top: 5px;
  margin-bottom: 5px;
}

#header {
  display: flex;
  flex-flow: row wrap;
}

.selected {
  background-color: steelblue;
}

#content {
  display: grid;
  grid-template-columns: 1fr 10fr;
}
/*
#content > * {
  border : 1px solid red;
}
*/

#messages {
  list-style: none;
  align-items: center;
  width: 300px;
}

.playback-slider {
  width: 100%;
}

.search {
  display: flex;
  justify-content: center;
}
.search .search-box {
  flex: 1;
  margin-left: 50px;
  margin-right: 50px;
  margin-top: 10px;
  margin-bottom: 10px;
}
/*
#controls {
  flex: 2;
  display: grid;
  grid-template-columns: 3fr 10fr;
}
#controls li {
  list-style: none;
  align-items: center;
}
*/

.connected-stream-icon {
  color: gray;
}
.connected-icon {
  color: green;
}
.playing-icon {
  color: green;
}

/* authentication state icons */
.connection-state-icon {
  font-size: x-large;
  font-family: monospace;
}
.connection-state-icon.authenticated {
  color: green;   /* closed green */
}
.connection-state-icon.authenticated::after {
  content: "\002b24";
}
.connection-state-icon.unknown {
  color: yellow;  /* closed yellow */
}
.connection-state-icon.unknown::after {
  content: "\002b24";
}
.connection-state-icon.invalid {
  color: red;     /* closed red */
}
.connection-state-icon.invalid::after {
  content: "\002b24";
}
.connection-state-icon.none {
  color: red;     /* open red */
}
.connection-state-icon.none::after {
  content: "\002b25";
}
