summaryrefslogtreecommitdiff
path: root/public/static/css
diff options
context:
space:
mode:
authorDaniel Friesel <derf@finalrewind.org>2019-06-09 12:48:19 +0200
committerDaniel Friesel <derf@finalrewind.org>2019-06-09 12:48:19 +0200
commit0ebe2d78893a925874b86e038eac11acff70a251 (patch)
tree138f78fcea49aae0d28c65f052ce3ae3b85ab00a /public/static/css
parent15b98bd1ffec98d168c7eceef5d321333e32aad9 (diff)
move css and js assets to separate directories
Diffstat (limited to 'public/static/css')
-rw-r--r--public/static/css/default.css1144
-rw-r--r--public/static/css/jquery-ui.min.css7
-rw-r--r--public/static/css/material-icons.css36
-rw-r--r--public/static/css/mobile.css21
4 files changed, 1208 insertions, 0 deletions
diff --git a/public/static/css/default.css b/public/static/css/default.css
new file mode 100644
index 0000000..aca2dba
--- /dev/null
+++ b/public/static/css/default.css
@@ -0,0 +1,1144 @@
+body {
+ margin: 0;
+}
+
+html {
+ font-family: Sans-Serif;
+}
+
+a {
+ color: #000099;
+ text-decoration: none;
+}
+
+p,
+div.about,
+div.input-field,
+div.notes {
+ max-width: 94%;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+p {
+ text-align: justify;
+}
+
+div.content {
+ width: 100%;
+ margin: 0;
+}
+
+div.app {
+ border-width:1px 2px;
+ width:100%;
+ margin-bottom: 5em;
+}
+
+div.app > ul {
+ position:relative;
+ width:100%;
+
+ list-style-type:none;
+ margin:0;
+ padding:0;
+}
+
+div.app > ul > li {
+ min-height:7em;
+ display:block;
+ width:100%;
+ position:relative;
+ cursor: pointer;
+}
+
+div.appdark > ul > li {
+ border-bottom: 1px solid #999999;
+ background-color: #000000;
+}
+
+div.applight > ul > li {
+ border-bottom: 1px solid #999999;
+ background-color: #ffffff;
+}
+
+div.app li .line {
+ font-size: 2.7em;
+ position:absolute;
+ bottom:5px;
+ left:2px;
+ max-width: 6em;
+ max-height: 3ex;
+ overflow: hidden;
+}
+
+div.app li .line .trainno {
+ font-weight: normal;
+}
+
+div.app li .line .trainno_sub {
+ font-weight: normal;
+ font-size: 0.6em;
+ text-align: center;
+ margin-top: -0.2em;
+}
+
+div.app li .sbahn .trainno_sub {
+ font-weight: normal;
+ font-size: 0.5em;
+ text-align: center;
+ margin-top: -0.25em;
+}
+
+div.app li .lineinfo {
+ color:#000000;
+ font-size: 2em;
+ position:absolute;
+ top:0px;
+ left:2px;
+}
+
+div.app .replacement {
+ color: #006600;
+}
+
+div.app .replaced {
+ color: #660000;
+}
+
+div.app .sbahn {
+ font-weight:bold;
+ border-radius: 30px;
+ padding:3px 6px 2px 6px;
+}
+
+div.applight .sbahn {
+ background-color:#95d79f;
+}
+
+div.appdark .sbahn {
+ background-color:#115511;
+}
+
+div.app .bahn,
+div.app .fern,
+div.app .ext {
+ font-weight:bold;
+ border-radius: 5px;
+ padding:3px 5px 2px 5px;
+}
+
+div.applight .bahn {
+ background-color: #eeeeee;
+}
+
+div.appdark .bahn {
+ background-color: #333333;
+}
+
+div.applight .fern {
+ background-color: #ffdddd;
+}
+
+div.appdark .fern {
+ background-color: #551111;
+}
+
+div.applight .ext {
+ background-color: #ffdddd;
+ border: 2px solid #ff6666;
+}
+
+div.appdark .ext {
+ background-color: #551111;
+ border: 2px solid #993333;
+}
+
+div.app li .route {
+ background-color: transparent;
+ font-size:2.1em;
+ position:absolute;
+ top:1px;
+ left:7.7em;
+ height: 1.2em;
+ width: 70%;
+ overflow: hidden;
+}
+
+div.applight li .route {
+ color:#444444;
+}
+
+div.appdark li .route {
+ color:#bbbbbb;
+}
+
+div.app li .info {
+ color:#ff0000;
+ background-color: transparent;
+ font-size:2.1em;
+ position:absolute;
+ top:1px;
+ left:7.7em;
+ height: 1.2em;
+ width: 70%;
+ overflow: hidden;
+}
+
+div.app .moreinfo {
+ font-size:2.1em;
+ position:fixed;
+ top:0em;
+ left:0;
+ right:0;
+ bottom:0em;
+ z-index: 5;
+ overflow: auto;
+ cursor: default;
+}
+
+div.app .moreinfo .mheader,
+div.app .moreinfo .mfooter {
+ max-width: 50em;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+div.applight .moreinfo {
+ background-color: #ffffff;
+}
+
+div.appdark .moreinfo {
+ background-color: #000000;
+}
+
+div.app .collapsed-moreinfo {
+ display: none;
+}
+
+div.app .expanded-moreinfo {
+ display: block;
+}
+
+div.app .moreinfo .mheader {
+ text-align: center;
+ font-size: 120%;
+ padding-top: 0.5em;
+ padding-bottom: 0.5em;
+ padding-left: 1em;
+ padding-right: 1em;
+ border-bottom: 0.1em dashed #cccccc;
+}
+
+div.app .moreinfo .mfooter {
+ padding-top: 1em;
+ padding-left: 1em;
+ padding-right: 1em;
+}
+
+div.app .moreinfo .reason,
+div.app .moreinfo .minfo {
+ color: #ff0000;
+}
+
+div.app .moreinfo .verbose {
+ margin-bottom: 0.6em;
+}
+
+div.app .moreinfo .timeinfo {
+ margin-bottom: 0.6em;
+}
+
+div.applight .moreinfo .mroute .important-stop {
+ color: #000000;
+}
+
+div.appdark .moreinfo .mroute .important-stop {
+ color: #ffffff;
+}
+
+div.applight .moreinfo .mroute .generic-stop {
+ color: #555555;
+}
+
+div.appdark .moreinfo .mroute .generic-stop {
+ color: #999999;
+}
+
+div.applight .moreinfo .mroute .additional-stop {
+ color: #009900;
+}
+
+div.appdark .moreinfo .mroute .additional-stop {
+ color: #009900;
+}
+
+div.applight .moreinfo .mroute .cancelled-stop {
+ color: #cc0000;
+}
+
+div.appdark .moreinfo .mroute .cancelled-stop {
+ color: #cc0000;
+}
+
+div.app li .dest {
+ background-color: transparent;
+ font-size:4em;
+ position:absolute;
+ top:0.62em;
+ left:4em;
+ bottom:0px;
+ width: 70%;
+ overflow: hidden;
+}
+
+div.applight li .dest {
+ color:#000000;
+}
+
+div.appdark li .dest {
+ color:#ffffff;
+}
+
+div.applight li.cancelled {
+ background-color: #ffe7d0;
+}
+
+div.appdark li.cancelled {
+ background-color: #512f00;
+}
+
+div.app li .countdown {
+ background-color: transparent;
+ font-size: 3em;
+ position: absolute;
+ right: 5px;
+ bottom: 2px;
+ padding-left: 0.2em;
+}
+
+div.applight li .countdown {
+ color: #000000;
+}
+
+div.appdark li .countdown {
+ color: #ffffff;
+}
+
+div.app li .header {
+ color:#000000;
+ font-size:2em;
+ font-weight:bold;
+ padding-top:8px;
+ border-width-top:0;
+ display:block;
+ text-align:center;
+}
+
+div.app li .head {
+ border-bottom-width:0;
+}
+
+div.app li .countdown .delay {
+ font-size:1em;
+ color:#FF0000;
+ background-color: transparent;
+ padding-right:7px;
+}
+
+div.app li .countdown .undelay {
+ font-size:1em;
+ color:#006600;
+ padding-right:7px;
+}
+
+div.app li .countdown .delaynorm {
+ font-size:0.9em;
+ color:#BB3333;
+ padding-right:7px;
+}
+
+div.app li .countdown .undelaynorm {
+ font-size:0.9em;
+ color:#338833;
+ padding-right:7px;
+}
+
+div.app li .countdown .platform {
+ font-weight: bold;
+}
+
+div.app li .countdown .changed-platform {
+ color:#ff0000;
+}
+
+div.app li .time {
+ background-color: transparent;
+ font-size:2.3em;
+ position:absolute;
+ right:5px;
+ top:4px;
+ padding-left: 0.2em;
+}
+
+div.applight li .time {
+ color:#000000;
+}
+
+div.appdark li .time {
+ color:#ffffff;
+}
+
+div.app span.delayed {
+ color: #ff0000;
+ background-color: transparent;
+}
+
+/* ... */
+
+div.infoscreen {
+ border-width:1px 2px;
+ width:100%;
+ margin-bottom: 5em;
+}
+
+div.infoscreen > ul {
+ position:relative;
+ width:100%;
+
+ list-style-type:none;
+ margin:0;
+ padding:0;
+}
+
+div.infoscreen > ul > li {
+ min-height:7em;
+ display:block;
+ width:100%;
+ position:relative;
+}
+
+div.infoscreendark > ul > li {
+ border-bottom: 1px solid #999999;
+ background-color: #000000;
+}
+
+div.infoscreenlight > ul > li {
+ border-bottom: 1px solid #999999;
+ background-color: #ffffff;
+}
+
+div.infoscreen li .line {
+ font-size: 2.7em;
+ position:absolute;
+ bottom:5px;
+ left:2px;
+ max-width: 6em;
+ max-height: 3ex;
+ overflow: hidden;
+}
+
+div.infoscreen li .line .trainno {
+ font-weight: normal;
+}
+
+div.infoscreen li .line .trainno_sub {
+ font-weight: normal;
+ font-size: 0.6em;
+ text-align: center;
+ margin-top: -0.2em;
+}
+
+div.infoscreen li .sbahn .trainno_sub {
+ font-weight: normal;
+ font-size: 0.5em;
+ text-align: center;
+ margin-top: -0.25em;
+}
+
+div.infoscreen li .lineinfo {
+ color:#000000;
+ font-size: 2em;
+ position:absolute;
+ top:0px;
+ left:2px;
+}
+
+div.infoscreen .replacement {
+ color: #006600;
+}
+
+div.infoscreen .replaced {
+ color: #660000;
+}
+
+div.infoscreen li .sbahn {
+ font-weight:bold;
+ border-radius: 30px;
+ padding:3px 6px 2px 6px;
+}
+
+div.infoscreenlight li .sbahn {
+ background-color:#95d79f;
+}
+
+div.infoscreendark li .sbahn {
+ background-color:#115511;
+}
+
+div.infoscreen li .bahn,
+div.infoscreen li .fern,
+div.infoscreen li .ext {
+ font-weight:bold;
+ border-radius: 5px;
+ padding:3px 5px 2px 5px;
+}
+
+div.infoscreenlight li .bahn {
+ background-color: #eeeeee;
+}
+
+div.infoscreendark li .bahn {
+ background-color: #333333;
+}
+
+div.infoscreenlight li .fern {
+ background-color: #ffdddd;
+}
+
+div.infoscreendark li .fern {
+ background-color: #551111;
+}
+
+div.infoscreenlight li .ext {
+ background-color: #ffdddd;
+ border: 2px solid #ff6666;
+}
+
+div.infoscreendark li .ext {
+ background-color: #551111;
+ border: 2px solid #993333;
+}
+
+div.infoscreen li .route {
+ background-color: transparent;
+ font-size:2.1em;
+ position:absolute;
+ top:1px;
+ left:7.7em;
+ height: 1.2em;
+ width: 70%;
+ overflow: hidden;
+}
+
+div.infoscreenlight li .route {
+ color:#444444;
+}
+
+div.infoscreendark li .route {
+ color:#bbbbbb;
+}
+
+div.infoscreen li .info {
+ color:#ff0000;
+ background-color: transparent;
+ font-size:2.1em;
+ position:absolute;
+ top:1px;
+ left:7.7em;
+ height: 1.2em;
+ width: 70%;
+ overflow: hidden;
+}
+
+div.infoscreen li .moreinfo {
+ font-size:2.1em;
+ position:fixed;
+ top:0em;
+ left:0em;
+ right:0em;
+ bottom:0em;
+ z-index: 5;
+ overflow: auto;
+}
+
+div.infoscreenlight li .moreinfo {
+ background-color: #ffffff;
+}
+
+div.infoscreendark li .moreinfo {
+ background-color: #000000;
+}
+
+div.infoscreen li .collapsed-moreinfo {
+ display: none;
+}
+
+div.infoscreen li .expanded-moreinfo {
+ display: block;
+}
+
+div.infoscreen li .moreinfo .mheader {
+ text-align: center;
+ font-size: 120%;
+ padding-top: 0.5em;
+ padding-bottom: 0.5em;
+ padding-left: 1em;
+ padding-right: 1em;
+ border-bottom: 0.1em dashed #cccccc;
+}
+
+div.infoscreen li .moreinfo .mfooter {
+ padding-top: 1em;
+ padding-left: 1em;
+ padding-right: 1em;
+}
+
+div.infoscreen li .moreinfo .reason,
+div.infoscreen li .moreinfo .minfo {
+ color: #ff0000;
+}
+
+div.infoscreen li .moreinfo .timeinfo {
+ margin-bottom: 0.6em;
+}
+
+div.infoscreen li .moreinfo .mroute {
+ margin-bottom: 0.6em;
+}
+
+div.infoscreenlight li .moreinfo .mroute .separator {
+ color: #999999;
+}
+
+div.infoscreendark li .moreinfo .mroute .separator {
+ color: #999999;
+}
+
+div.infoscreenlight li .moreinfo .mroute .important-stop {
+ color: #000000;
+}
+
+div.infoscreendark li .moreinfo .mroute .important-stop {
+ color: #ffffff;
+}
+
+div.infoscreenlight li .moreinfo .mroute .generic-stop {
+ color: #555555;
+}
+
+div.infoscreendark li .moreinfo .mroute .generic-stop {
+ color: #999999;
+}
+
+div.infoscreenlight li .moreinfo .mroute .additional-stop {
+ color: #009900;
+}
+
+div.infoscreendark li .moreinfo .mroute .additional-stop {
+ color: #009900;
+}
+
+div.infoscreenlight li .moreinfo .mroute .cancelled-stop {
+ color: #cc0000;
+}
+
+div.infoscreendark li .moreinfo .mroute .cancelled-stop {
+ color: #cc0000;
+}
+
+div.infoscreen li .dest {
+ background-color: transparent;
+ font-size:4em;
+ position:absolute;
+ top:0.62em;
+ left:4em;
+ bottom:0px;
+ width: 70%;
+ overflow: hidden;
+}
+
+div.infoscreenlight li .dest {
+ color:#000000;
+}
+
+div.infoscreendark li .dest {
+ color:#ffffff;
+}
+
+div.infoscreenlight li.cancelled {
+ background-color: #ffe7d0;
+}
+
+div.infoscreendark li.cancelled {
+ background-color: #512f00;
+}
+
+div.infoscreen li .countdown {
+ background-color: transparent;
+ font-size: 3em;
+ position: absolute;
+ right: 5px;
+ bottom: 2px;
+ padding-left: 0.2em;
+}
+
+div.infoscreenlight li .countdown {
+ color: #000000;
+}
+
+div.infoscreendark li .countdown {
+ color: #ffffff;
+}
+
+div.infoscreen li .header {
+ color:#000000;
+ font-size:2em;
+ font-weight:bold;
+ padding-top:8px;
+ border-width-top:0;
+ display:block;
+ text-align:center;
+}
+
+div.infoscreen li .head {
+ border-bottom-width:0;
+}
+
+div.infoscreen li .countdown .delay {
+ font-size:1em;
+ color:#FF0000;
+ background-color: transparent;
+ padding-right:7px;
+}
+
+div.infoscreen li .countdown .undelay {
+ font-size:1em;
+ color:#006600;
+ padding-right:7px;
+}
+
+div.infoscreen li .countdown .delaynorm {
+ font-size:0.9em;
+ color:#BB3333;
+ padding-right:7px;
+}
+
+div.infoscreen li .countdown .undelaynorm {
+ font-size:0.9em;
+ color:#338833;
+ padding-right:7px;
+}
+
+div.infoscreen li .countdown .platform {
+ font-weight: bold;
+}
+
+div.infoscreen li .countdown .changed-platform {
+ color:#ff0000;
+}
+
+div.infoscreen li .time {
+ background-color: transparent;
+ font-size:2.3em;
+ position:absolute;
+ right:5px;
+ top:4px;
+ padding-left: 0.2em;
+}
+
+div.infoscreenlight li .time {
+ color:#000000;
+}
+
+div.infoscreendark li .time {
+ color:#ffffff;
+}
+
+div.infoscreen span.delayed {
+ color: #ff0000;
+ background-color: transparent;
+}
+
+/* ... */
+
+div.displaymulti {
+ border: 0.2em solid #000066;
+ width: 55em;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+div.displaymulti div.display {
+ background-color: #0000ff;
+ color: white;
+ font-family: Sans-Serif;
+ font-weight: bold;
+ position: relative;
+ margin-bottom: 0;
+ margin-top: 0;
+ padding-top: 0;
+ padding-bottom: 0;
+ width: 55em;
+ height: 1.4em;
+}
+
+div.displaymulti div.display div {
+ overflow: hidden;
+ position: absolute;
+ height: 100%;
+}
+
+div.displaymulti div.time {
+ left: 0;
+ width: 6%;
+ font-size: 95%;
+}
+
+div.displaymulti div.train {
+ left: 5%;
+ width: 9%;
+ background-color: white;
+ color: #0000ff;
+ font-size: 95%;
+}
+
+div.displaymulti div.via {
+ left: 15%;
+ width: 35%;
+}
+
+div.displaymulti div.via span {
+ margin-right: 0.4em;
+ font-size: 80%;
+}
+
+div.displaymulti div.destination {
+ left: 50%;
+ width: 25%;
+ font-size: 120%;
+}
+
+div.displaymulti div.platform {
+ left: 75%;
+ width: 5%;
+}
+
+div.displaymulti div.info {
+ left: 80%;
+ width: 20%;
+ background-color: white;
+ color: #0000ff;
+ font-size: 80%;
+ line-height: 150%;
+}
+
+div.displaymulti div.separator {
+ border-bottom: 0.1em solid #000066;
+}
+
+div.displaysingle div.display {
+ background-color: #0000ff;
+ color: white;
+ font-family: Sans-Serif;
+ font-weight: bold;
+ position: relative;
+ margin-left: 1em;
+ margin-top: 1em;
+ float: left;
+ width: 28em;
+ height: 4.5em;
+ border: 0.7em solid #000066;
+}
+
+div.displaysingle div.display div {
+ overflow: hidden;
+ position: absolute;
+}
+
+div.displaysingle div.no_data {
+ top: 0.5em;
+ left: 1em;
+ font-size: 1.7em;
+}
+
+div.displaysingle div.time {
+ top: 0em;
+ left: 0em;
+ font-size: 1.7em;
+}
+
+div.displaysingle div.train {
+ left: 0em;
+ top: 1.8em;
+}
+
+div.displaysingle div.via {
+ top: 1.5em;
+ left: 5.8em;
+ width: 17em;
+ height: 1em;
+}
+
+div.displaysingle div.via span {
+ margin-right: 0.4em;
+}
+
+div.displaysingle div.destination {
+ top: 1.6em;
+ left: 3.6em;
+ width: 12em;
+ font-size: 1.6em;
+ height: 1.2em;
+}
+
+div.displaysingle div.platform {
+ top: 0em;
+ right: 0em;
+ font-size: 3em;
+}
+
+div.displaysingle div.info {
+ top: 0em;
+ left: 5.8em;
+ width: 16.5em;
+ height: 1em;
+ background-color: white;
+ color: #0000ff;
+}
+
+ul.ui-autocomplete {
+ max-height: 20em;
+ overflow-x: hidden;
+ overflow-y: auto;
+}
+
+div.geolocation {
+ text-align: center;
+}
+
+div.candidatestatus {
+ text-align: center;
+ color: #999999;
+}
+
+div.candidatelist a {
+ display: block;
+ text-decoration: none;
+ font-size: 1.4em;
+ padding-top: 0.3em;
+ text-align: center;
+ border-bottom: 1px solid #999999;
+}
+
+div.candidatelist a .distance:after {
+ content: " km";
+}
+
+div.candidatelist a .distance {
+ font-size: 0.6em;
+ color: #999999;
+ padding-top: 0.2em;
+ padding-bottom: 0.3em;
+}
+
+div.about {
+ margin-top: 2em;
+ font-family: Sans-Serif;
+ color: #666666;
+}
+
+div.about a {
+ color: #000066;
+ text-decoration: none;
+}
+
+.notice {
+ padding: 15px;
+ margin-bottom: 20px;
+ border: 1px solid #bce8f1;
+ border-radius: 4px;
+ color: #31708f;
+ background-color: #d9edf7;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.warning {
+ padding: 15px;
+ margin-bottom: 20px;
+ border: 1px solid #faebcc;
+ border-radius: 4px;
+ color: #8a6d3b;
+ background-color: #fcf8e3;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.error {
+ padding: 15px;
+ margin-bottom: 20px;
+ border: 1px solid #ebccd1;
+ border-radius: 4px;
+ color: #a94442;
+ background-color: #f2dede;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+.error .errcode {
+ font-family: Monospace;
+ margin-top: 2em;
+ font-size: 100%;
+ color: #aaaaaa;
+}
+
+.container {
+ max-width: 60em;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+pre {
+ margin-bottom: 2em;
+}
+
+span.optional,
+span.notes {
+ color: #666666;
+}
+
+.moresettings-header {
+ cursor: pointer;
+}
+
+.moresettings-header-collapsed:before {
+ content: "▹ "
+}
+
+.moresettings-header-expanded:before {
+ content: "▿ "
+}
+
+.moresettings-collapsed {
+ display: none;
+}
+
+.moresettings-expanded {
+ display: block;
+}
+
+.developers-header {
+ cursor: pointer;
+}
+
+.developers-header-collapsed:before {
+ content: "▹ "
+}
+
+.developers-header-expanded:before {
+ content: "▿ "
+}
+
+.developers-collapsed {
+ display: none;
+}
+
+.developers-expanded {
+ display: block;
+}
+
+div.break {
+ height: 1em;
+}
+
+div.field {
+ margin-top: 0.3em;
+ margin-bottom: 0.6em;
+}
+
+input, select, .button {
+ display: inline-block;
+ width: 60em;
+ max-width: 100%;
+ min-height: 1.8em;
+ border-radius: 4px;
+ color: #000;
+ background-color: #fff;
+ border: 1px solid #ccc;
+ box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
+ font-size: 90%;
+ text-align: center;
+ vertical-align: middle;
+}
+
+input[type="text"] {
+ width: 59em;
+ padding-left: 0.5em;
+ padding-right: 0.5em;
+ text-align: left;
+ box-sizing: border-box;
+}
+
+select {
+ min-height: 2em;
+}
+
+input[type="checkbox"] {
+ width: 1.5em;
+ box-shadow: none;
+}
+
+input[type="submit"], .button {
+ color: #fff;
+ background-color: #337ab7;
+ border-color: #2e6da4;
+ cursor: pointer;
+ box-shadow: none;
+ padding-top: 0.9ex;
+ padding-bottom: 0.9ex;
+}
+
+.button {
+ padding-top: 1.1ex;
+ padding-bottom: 0;
+}
+
+input[type="submit"]:active,
+input[type="submit"]:focus,
+input[type="submit"]:hover,
+.button:active,
+.button:focus,
+.button:hover {
+ color: #fff;
+ background-color: #286090;
+ border-color: #204d74;
+}
+
+input[type="submit"]:active,
+.button.active {
+ box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
+}
+
+.button-light {
+ color: #333;
+ background-color: #fff;
+ border-color: #ccc;
+}
+
+.button-light:active,
+.button-light:focus,
+.button-light:hover
+{
+ color: #333;
+ background-color: #e6e6e6;
+ border-color: #adadad;
+}
+
+div.notes {
+ margin-top: 2em;
+}
+
+div.notes ul {
+ margin-top: 1em;
+}
diff --git a/public/static/css/jquery-ui.min.css b/public/static/css/jquery-ui.min.css
new file mode 100644
index 0000000..a2cf45a
--- /dev/null
+++ b/public/static/css/jquery-ui.min.css
@@ -0,0 +1,7 @@
+/*! jQuery UI - v1.12.1 - 2019-05-04
+* http://jqueryui.com
+* Includes: core.css, autocomplete.css, menu.css, theme.css
+* To view and modify this theme, visit http://jqueryui.com/themeroller/?scope=&folderName=base&cornerRadiusShadow=8px&offsetLeftShadow=0px&offsetTopShadow=0px&thicknessShadow=5px&opacityShadow=30&bgImgOpacityShadow=0&bgTextureShadow=flat&bgColorShadow=666666&opacityOverlay=30&bgImgOpacityOverlay=0&bgTextureOverlay=flat&bgColorOverlay=aaaaaa&iconColorError=cc0000&fcError=5f3f3f&borderColorError=f1a899&bgTextureError=flat&bgColorError=fddfdf&iconColorHighlight=777620&fcHighlight=777620&borderColorHighlight=dad55e&bgTextureHighlight=flat&bgColorHighlight=fffa90&iconColorActive=ffffff&fcActive=ffffff&borderColorActive=003eff&bgTextureActive=flat&bgColorActive=007fff&iconColorHover=555555&fcHover=2b2b2b&borderColorHover=cccccc&bgTextureHover=flat&bgColorHover=ededed&iconColorDefault=777777&fcDefault=454545&borderColorDefault=c5c5c5&bgTextureDefault=flat&bgColorDefault=f6f6f6&iconColorContent=444444&fcContent=333333&borderColorContent=dddddd&bgTextureContent=flat&bgColorContent=ffffff&iconColorHeader=444444&fcHeader=333333&borderColorHeader=dddddd&bgTextureHeader=flat&bgColorHeader=e9e9e9&cornerRadius=3px&fwDefault=normal&fsDefault=1em&ffDefault=Arial%2CHelvetica%2Csans-serif
+* Copyright jQuery Foundation and other contributors; Licensed MIT */
+
+.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0}.ui-widget{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Arial,Helvetica,sans-serif;font-size:1em}.ui-widget.ui-widget-content{border:1px solid #c5c5c5}.ui-widget-content{border:1px solid #ddd;background:#fff;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #ddd;background:#e9e9e9;color:#333;font-weight:bold}.ui-widget-header a{color:#333}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default,.ui-button,html .ui-button.ui-state-disabled:hover,html .ui-button.ui-state-disabled:active{border:1px solid #c5c5c5;background:#f6f6f6;font-weight:normal;color:#454545}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited,a.ui-button,a:link.ui-button,a:visited.ui-button,.ui-button{color:#454545;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus,.ui-button:hover,.ui-button:focus{border:1px solid #ccc;background:#ededed;font-weight:normal;color:#2b2b2b}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited,.ui-state-focus a,.ui-state-focus a:hover,.ui-state-focus a:link,.ui-state-focus a:visited,a.ui-button:hover,a.ui-button:focus{color:#2b2b2b;text-decoration:none}.ui-visual-focus{box-shadow:0 0 3px 1px rgb(94,158,214)}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active,a.ui-button:active,.ui-button:active,.ui-button.ui-state-active:hover{border:1px solid #003eff;background:#007fff;font-weight:normal;color:#fff}.ui-icon-background,.ui-state-active .ui-icon-background{border:#003eff;background-color:#fff}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#fff;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #dad55e;background:#fffa90;color:#777620}.ui-state-checked{border:1px solid #dad55e;background:#fffa90}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#777620}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #f1a899;background:#fddfdf;color:#5f3f3f}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#5f3f3f}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#5f3f3f}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-widget-header .ui-icon{background-image:url("images/ui-icons_444444_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon,.ui-button:hover .ui-icon,.ui-button:focus .ui-icon{background-image:url("images/ui-icons_555555_256x240.png")}.ui-state-active .ui-icon,.ui-button:active .ui-icon{background-image:url("images/ui-icons_ffffff_256x240.png")}.ui-state-highlight .ui-icon,.ui-button .ui-state-highlight.ui-icon{background-image:url("images/ui-icons_777620_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_cc0000_256x240.png")}.ui-button .ui-icon{background-image:url("images/ui-icons_777777_256x240.png")}.ui-icon-blank{background-position:16px 16px}.ui-icon-caret-1-n{background-position:0 0}.ui-icon-caret-1-ne{background-position:-16px 0}.ui-icon-caret-1-e{background-position:-32px 0}.ui-icon-caret-1-se{background-position:-48px 0}.ui-icon-caret-1-s{background-position:-65px 0}.ui-icon-caret-1-sw{background-position:-80px 0}.ui-icon-caret-1-w{background-position:-96px 0}.ui-icon-caret-1-nw{background-position:-112px 0}.ui-icon-caret-2-n-s{background-position:-128px 0}.ui-icon-caret-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-65px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-65px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:1px -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:3px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:3px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:3px}.ui-widget-overlay{background:#aaa;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{-webkit-box-shadow:0 0 5px #666;box-shadow:0 0 5px #666} \ No newline at end of file
diff --git a/public/static/css/material-icons.css b/public/static/css/material-icons.css
new file mode 100644
index 0000000..7b120b3
--- /dev/null
+++ b/public/static/css/material-icons.css
@@ -0,0 +1,36 @@
+@font-face {
+ font-family: 'Material Icons';
+ font-style: normal;
+ font-weight: 400;
+ src: url(/static/v15/fonts/MaterialIcons-Regular.eot); /* For IE6-8 */
+ src: local('Material Icons'),
+ local('MaterialIcons-Regular'),
+ url(/static/v15/fonts/MaterialIcons-Regular.woff2) format('woff2'),
+ url(/static/v15/fonts/MaterialIcons-Regular.woff) format('woff'),
+ url(/static/v15/fonts/MaterialIcons-Regular.ttf) format('truetype');
+}
+
+.material-icons {
+ font-family: 'Material Icons';
+ font-weight: normal;
+ font-style: normal;
+ font-size: 20px; /* Preferred icon size */
+ display: inline-block;
+ line-height: 1;
+ text-transform: none;
+ letter-spacing: normal;
+ word-wrap: normal;
+ white-space: nowrap;
+ direction: ltr;
+
+ /* Support for all WebKit browsers. */
+ -webkit-font-smoothing: antialiased;
+ /* Support for Safari and Chrome. */
+ text-rendering: optimizeLegibility;
+
+ /* Support for Firefox. */
+ -moz-osx-font-smoothing: grayscale;
+
+ /* Support for IE. */
+ font-feature-settings: 'liga';
+}
diff --git a/public/static/css/mobile.css b/public/static/css/mobile.css
new file mode 100644
index 0000000..a0fe99e
--- /dev/null
+++ b/public/static/css/mobile.css
@@ -0,0 +1,21 @@
+div.app {
+ max-width: 60em;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+@media only screen and (max-width: 600px) {
+ div.app > ul > li {
+ font-size: 35%;
+ }
+}
+
+@media only screen and (min-width: 600px) {
+ div.app > ul > li {
+ font-size: 40%;
+ }
+}
+
+div.app .moreinfo {
+ font-size: 100%;
+}