AudioPostView {
  padding: 30px 50px
  max-width: 100%

  -playing {
    header {
      div.main {
        div.title {
          a.play {
            background-image: svg(pauseIcon)
          }
        }
      }
    }
  }

  -waiting {
    header {
      div.main {
        div.title {
          a.play {
            background-image: svg(waitingIcon)
            animation: playIconSpin 1s infinite linear
          }
        }
      }
    }
  }

  header {
    display: flex;
    background: linear-gradient(0deg, #272713, #939680);
    padding: 30px;
    margin: -30px -50px 20px;
    border-bottom: 5px solid #666;

    div.artwork {
      overflow: hidden;
      height: 300px;
      width: 300px;
      background: linear-gradient(100deg, #7B7B7B, transparent);
      background-size: cover;
      background-position: 50% 50%;
      box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.6);
    }

    div.main {
      display: flex;
      flex-direction: column;
      flex: 1
      margin-right: 30px;

      div.title {
        display: flex
        a.play {
          display: block
          background-image: svg(playIcon)
          background-repeat: no-repeat
          background-position: center
          margin-left: 3px
          background-color: #333;
          height: 44px;
          width: 44px;
          border-radius: 5px;
        }
        header {
          margin-left: 10px
          flex: 1
          a.feedTitle {
            display: inline-block
            padding: 3px 6px
            -webkit-user-select: text
            color: #BBB
            margin-bottom: 3px
            background-color: #333
          }
          span.title {
            display: inline-block
            padding: 3px 6px
            -webkit-user-select: text
            color: #EEE
            font-size: 170%
            background-color: #333
          }
        }
      }

      div.display {
        flex: 1
        position: relative
        margin: 15px 0

        svg {
          position: absolute
          top: 0; bottom: 0; left: 0; right: 0
          height: 100%;
          width: 100%;

          rect {
            fill: #f4c0fb
            transform: translate(0, -50%)
          }
        }

        div.progress {
          position: absolute
          pointer-events: none
          top: 0; bottom: 0; left: 0
          background-color: #FFF
          opacity: 0.4
        }

        span {
          position: absolute
          color: #CBD8CB
          padding: 4px
          background: rgb(47, 47, 47)
          font-family: monospace
        }

        span.position {
          bottom: 0
          left: 0
        }

        span.duration {
          bottom: 0
          right: 0
        }
      }

      div.options {
        display: flex
        height: 24px
        font-size: 110%
        a {
          padding: 4px 6px
          margin-right: 5px
          border: 1px solid #656363
          border-radius: 4px
          background: #444444
          color: #C5C5C5

          :hover {
            text-decoration: none
            color: white
            border-color: #888
          }

          -active {
            background-color: #004605;
            border-color: #61e66c !important;
            box-shadow: inset 0px -2px 10px #4ab157;
            color: white;
            border-width: 2px;
            margin-right: 4px;
          }
        }

        div.status {
          text-align: right
          flex: 1
          font-color: #AAA

          span {
            display: inline-block
            padding: 4px 5px
            -peers {
              background: #555
              border-radius: 4px
            }
          }
        }
      }
    }
  }

  section {
    display: flex
    div.main {
      flex: 2.5
      font-size: 120%
      -webkit-user-select: text
    }
    div.side {
      flex: 1
      margin-left: 20px
      min-width: 250px
      max-width 400px
      margin-bottom: 20px

      h2 {
        span.sub {
          font-weight: normal
          font-size: 90%
        }
      }
    }
  }
}
