Several improvements before second concert

- Add end timestamp to concerts
- Add ability to view booklets for past concerts
- Filled concerts/nadal2020nens.json

Change-Id: Ic83b0b46661d1557468b0ffe678ac78e794ec179
diff --git a/css/styles.css b/css/styles.css
index 435b652..530397f 100644
--- a/css/styles.css
+++ b/css/styles.css
@@ -12,6 +12,7 @@
 .header {
   display: flex;
   justify-content: flex-start;
+  align-items: center;
   position: fixed;
   top: 0;
   width: calc(100% - 16px);
@@ -21,9 +22,18 @@
 }
 
 .header .header-logo {
+  display: flex;
+  flex: 1;
+}
+
+.header .header-logo img {
   height: 42px;
 }
 
+.header button {
+  margin-left: 8px;
+}
+
 .app-content {
   max-width: min(calc(100% - 32px), 800px);
   margin: 74px auto 16px auto;
@@ -104,6 +114,104 @@
   color: white;
 }
 
+button.primary-btn {
+  font-family: inherit;
+  font-size: 100%;
+  line-height: 1.15;
+  margin: 0;
+  text-transform: none;
+  -webkit-appearance: button;
+  border: 0;
+  border-radius: 4px;
+  padding: 8px;
+  color: white;
+  background-color: #0277BD;
+  cursor: pointer;
+}
+
+button.primary-btn:hover {
+  background-color: #1591DC;
+}
+
+button.primary-btn:active {
+  background-color: #22A3F1;
+}
+
+/* Section adapted from
+ * https://chromium.googlesource.com/infra/infra/+/master/appengine/monorail/static_src/elements/projects/mr-projects-page/mr-projects-page.js
+ * Copyright 2019 The Chromium Authors. All rights reserved.
+ * License: https://chromium.googlesource.com/infra/infra/+/master/LICENSE
+ **/
+.concerts-list {
+  display: flex;
+  align-items: stretch;
+  flex-wrap: wrap;
+  width: 100%;
+  padding: 0.5em 0;
+  margin-bottom: 3em;
+}
+
+.concert {
+  text-align: left;
+  width: 200px;
+  margin-left: 16px;
+  margin-right: 16px;
+  margin-bottom: 32px;
+  display: flex;
+  flex-direction: column;
+  align-items: flex-start;
+  justify-content: flex-start;
+  border-radius: 4px;
+  border: 1px solid #aaa;
+  padding: 16px;
+  font-weight: normal;
+  line-height: 16px;
+  transition: all 0.1s ease-in-out;
+}
+
+.concert:hover {
+  text-decoration: none;
+  cursor: pointer;
+  box-shadow: 0 2px 6px hsla(0,0%,0%,0.12),
+    0 1px 3px hsla(0,0%,0%,0.24);
+}
+
+.concert-title {
+  font-size: 16px;
+  line-height: 24px;
+  margin: 0;
+  margin-bottom: 16px;
+  padding-top: 0.1em;
+  padding-bottom: 16px;
+  letter-spacing: 0.1px;
+  font-weight: 600;
+  width: 100%;
+  border-bottom: 1px solid #aaa;
+}
+
+.concert-subtitle {
+  margin: 0 0 32px;
+  flex-grow: 1;
+}
+
+.linkify {
+  display: inline;
+  padding: 0px;
+  margin: 0px;
+  border: 0px;
+  background: 0px center;
+  cursor: pointer;
+  color: #0277BD;
+}
+
+.concert-btn {
+  text-transform: uppercase;
+  margin: 0px;
+  font-weight: 600;
+  flex-grow: 0;
+}
+/* End of section */
+
 /* DARK THEME */
 @media screen {
   .dark-theme {
@@ -129,6 +237,15 @@
     background: white;
     color: black;
   }
+
+  .dark-theme .concert:hover {
+    box-shadow: 0 2px 6px hsla(0,0%,100%,0.12),
+      0 1px 3px hsla(0,0%,100%,0.24);
+  }
+
+  .dark-theme .linkify {
+    color: #4cb9fb;
+  }
 }
 
 @media print {