@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Roboto");
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.flex-grow {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1; }

.navbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  top: 0px;
  left: 0px;
  width: 100vw;
  max-width: 100vw;
  height: 50px;
  z-index: 100;
  background-color: #2a2a2a;
  text-align: center;
  color: white;
  -webkit-box-shadow: 0 8px 12px -10px #000;
  box-shadow: 0 8px 12px -10px #000; }

.navbar * {
  text-decoration: none;
  display: inline-block;
  width: auto; }

.navbar .back-button,
.navbar .action-button,
.navbar .three-dots-button {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  cursor: pointer;
  color: white;
  z-index: 120;
  /* Otsikon yläpuolelle, jotta otsikko ei blokkaa inputtia. */ }

.navbar .back-button i {
  font-size: 28px;
  line-height: 50px; }

.navbar .action-button i {
  font-size: 28px;
  line-height: 40px; }

.navbar .back-button:hover,
.navbar .action-button:hover {
  background-color: #333; }

.navbar .back-button {
  padding-right: 32px;
  background-image: url("../HRSuuntiLogo146.png");
  background-repeat: no-repeat;
  background-position: 80% 50%;
  background-size: 28px 28px; }

.navbar .action-button {
  width: 40px;
  margin: 5px;
  border-radius: 100%; }

.navbar h1 {
  vertical-align: middle;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  line-height: 50px;
  font-size: 1.2em;
  font-weight: normal;
  text-align: center;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap; }

.navbar div.nav-pad {
  width: 50px;
  -webkit-box-flex: 0;
  -ms-flex: 0 9999 auto;
  flex: 0 9999 auto; }

.navbar a + a + h1 + div.nav-pad {
  width: 100px; }

@media (min-width: 800px) {
  .navbar {
    padding: 0px calc(50% - 400px); } }

.navbar .three-dots-button {
  width: 40px; }

.navbar .three-dots-button span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: white;
  -webkit-box-shadow: 0px 10px 0px white, 0px 20px 0px white;
  box-shadow: 0px 10px 0px white, 0px 20px 0px white;
  pointer-events: none; }

a.button,
div.button,
span.button,
button.button {
  display: block;
  position: relative;
  padding: 1rem;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  color: white;
  text-decoration: none;
  text-align: center;
  background-color: #404040;
  background: -webkit-gradient(linear, left top, right bottom, from(#525252), to(#404040));
  background: -webkit-linear-gradient(left top, #525252, #404040);
  background: -o-linear-gradient(left top, #525252, #404040);
  background: linear-gradient(to right bottom, #525252, #404040);
  border: 1px solid #272727;
  border-bottom: 1px solid #212121;
  -webkit-box-shadow: 0px 2px 8px -3px #090909;
  box-shadow: 0px 2px 8px -3px #090909;
  text-shadow: 0px -1px 0px #333333, -1px -1px 0px #333333;
  border-radius: 0.2rem;
  cursor: pointer;
  -webkit-transition: -webkit-box-shadow 0.2s;
  transition: -webkit-box-shadow 0.2s;
  -o-transition: box-shadow 0.2s;
  transition: box-shadow 0.2s;
  transition: box-shadow 0.2s, -webkit-box-shadow 0.2s; }

.button:hover,
.button:focus,
.button:active {
  color: white;
  -webkit-box-shadow: 0px 4px 8px -3px #090909;
  box-shadow: 0px 4px 8px -3px #090909;
  background-color: #4d4d4d;
  background: -webkit-gradient(linear, left top, right bottom, from(#5a5a5a), to(#4d4d4d));
  background: -webkit-linear-gradient(left top, #5a5a5a, #4d4d4d);
  background: -o-linear-gradient(left top, #5a5a5a, #4d4d4d);
  background: linear-gradient(to right bottom, #5a5a5a, #4d4d4d); }

.button:visited {
  color: white; }

.button.touched {
  -webkit-box-shadow: 0px 6px 20px -3px #090909;
  box-shadow: 0px 6px 20px -3px #090909;
  background-color: #5a5a5a;
  background: -webkit-gradient(linear, left top, right bottom, from(#737373), to(#525252));
  background: -webkit-linear-gradient(left top, #737373, #525252);
  background: -o-linear-gradient(left top, #737373, #525252);
  background: linear-gradient(to right bottom, #737373, #525252); }

.button.disabled,
.button.touched.disabled {
  background: inherit;
  color: #aaa; }

.button.top-margin {
  margin-top: 0.5rem; }

.icon.button {
  -webkit-box-shadow: 0px 1px 4px -2px #090909;
  box-shadow: 0px 1px 4px -2px #090909; }

.icon.button i {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.button span + i {
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%); }

.button.flipped span + i {
  -webkit-transform: translate(0, -50%) scaleY(-1);
  -ms-transform: translate(0, -50%) scaleY(-1);
  transform: translate(0, -50%) scaleY(-1); }

.green.button {
  background: -webkit-gradient(linear, left top, right bottom, from(#0e9686), to(#0b7569));
  background: -webkit-linear-gradient(left top, #0e9686, #0b7569);
  background: -o-linear-gradient(left top, #0e9686, #0b7569);
  background: linear-gradient(to right bottom, #0e9686, #0b7569);
  border: 1px solid #07463f;
  border-bottom: 1px solid #063d37;
  text-shadow: 0px -1px 0px #095e54, -1px -1px 0px #095e54; }

.green.button:hover,
.green.button:focus,
.green.button:active {
  background-color: #0d8c7e;
  background: -webkit-gradient(linear, left top, right bottom, from(#0fa493), to(#0d8c7e));
  background: -webkit-linear-gradient(left top, #0fa493, #0d8c7e);
  background: -o-linear-gradient(left top, #0fa493, #0d8c7e);
  background: linear-gradient(to right bottom, #0fa493, #0d8c7e); }

.green.button.touched {
  background-color: #0fa493;
  background: -webkit-gradient(linear, left top, right bottom, from(#14d2bd), to(#0e9686));
  background: -webkit-linear-gradient(left top, #14d2bd, #0e9686);
  background: -o-linear-gradient(left top, #14d2bd, #0e9686);
  background: linear-gradient(to right bottom, #14d2bd, #0e9686); }

.red.button {
  color: white !important;
  background: -webkit-gradient(linear, left top, right bottom, from(#e13f5b), to(#db2241));
  background: -webkit-linear-gradient(left top, #e13f5b, #db2241);
  background: -o-linear-gradient(left top, #e13f5b, #db2241);
  background: linear-gradient(to right bottom, #e13f5b, #db2241);
  border: 1px solid #af1b34;
  border-bottom: 1px solid #a61a31;
  text-shadow: 0px -1px 0px #c51f3a, -1px -1px 0px #c51f3a; }

.red.button:hover,
.red.button:focus,
.red.button:active {
  background-color: #e03753;
  background: -webkit-gradient(linear, left top, right bottom, from(#e34d66), to(#e03753));
  background: -webkit-linear-gradient(left top, #e34d66, #e03753);
  background: -o-linear-gradient(left top, #e34d66, #e03753);
  background: linear-gradient(to right bottom, #e34d66, #e03753); }

.red.button.touched {
  background-color: #e34d66;
  background: -webkit-gradient(linear, left top, right bottom, from(#ea798c), to(#e13f5b));
  background: -webkit-linear-gradient(left top, #ea798c, #e13f5b);
  background: -o-linear-gradient(left top, #ea798c, #e13f5b);
  background: linear-gradient(to right bottom, #ea798c, #e13f5b); }

.tableStyle1 {
  border: 0;
  width: 100%;
  margin: 0.5rem 0;
  font-size: 0.9em; }
  .tableStyle1 th, .tableStyle1 .final-row td,
  .tableStyle1 .header-row td,
  .tableStyle1 th a {
    font-weight: bold;
    color: #222;
    background-color: #0b7569; }
  .tableStyle1 .header-row td {
    border-top: 10px solid #222; }
  .tableStyle1 th {
    padding: 0.5rem 0.2rem;
    border: 0;
    border-bottom: 2px solid #222; }
  .tableStyle1 td {
    padding: 0.3rem 0.1rem;
    border: 0; }
  .tableStyle1 td.align-left {
    padding: 0.3rem 0.5rem; }
  .tableStyle1 td a {
    color: #0fa493; }
  .tableStyle1 td .button {
    color: white; }
  .tableStyle1 .no-highlight {
    color: inherit; }
  .tableStyle1 tr {
    background-color: #333;
    color: inherit; }
  .tableStyle1 tr:nth-child(2n) {
    background-color: #444; }
  .tableStyle1 .new-day-row {
    border-top: 4px solid #222; }
  .tableStyle1 tr.weekend {
    border-left: 4px solid #db2241;
    border-right: 4px solid #db2241; }
  .tableStyle1 tr.weekend td:first-child {
    font-weight: bold; }
  .tableStyle1 tr.today {
    border: 1px solid #d45; }
  .tableStyle1 .final-row td {
    padding: 0.5rem 0.1rem;
    border-top: 2px solid #222;
    border-bottom: 2px solid #222; }
  .tableStyle1 input {
    margin-right: 0.5rem; }
  .tableStyle1 .red {
    color: #db2241; }
  .tableStyle1 .secondary-row td {
    color: #bbb;
    font-size: 0.9em;
    font-style: italic; }

.tableStyle1.no-highlight a {
  color: inherit; }

table.tablesorter th:not(.nosort):not(.headerSortDown):not(.headerSortUp):after {
  content: url("../arrow-none.png");
  margin-left: 2px; }

table.tablesorter th.headerSortDown:after {
  content: url("../arrow-down.png");
  margin-left: 2px; }

table.tablesorter th.headerSortUp:after {
  content: url("../arrow-up.png");
  margin-left: 2px; }

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent; }

body {
  background: #222;
  font-family: "Roboto", sans-serif;
  color: #eaeaea; }

table {
  width: 100%;
  border: 0; }

a,
a:visited {
  color: #0b7569; }

a:hover {
  color: #db2241; }

input[type=text],
input[type=password],
input[type=number],
select,
textarea {
  display: block;
  width: 100%;
  margin: 0.5rem 0;
  padding: 0.55rem;
  font-size: 1em;
  background-color: #ddd;
  border: 1px solid #ccc;
  border-radius: 0.2rem;
  outline: none;
  -webkit-box-shadow: 0px 1px 3px -1px #000;
  box-shadow: 0px 1px 3px -1px #000; }

textarea {
  min-width: 100%;
  max-width: 100%;
  font-family: "Roboto", sans-serif; }

input.short, select.short {
  display: inline-block;
  width: 60px;
  text-align: right; }

input.medium, select.medium {
  display: inline-block;
  width: 100px;
  text-align: right; }

input[type=text].changed,
input[type=password].changed,
input[type=number].changed,
select.changed {
  border: 1px solid #ff9933;
  background-color: #ffe6cc;
  -webkit-box-shadow: inset 0px 1px 10px -3px #ff9933;
  box-shadow: inset 0px 1px 10px -3px #ff9933; }

input.error {
  background: #fcc;
  border: 1px solid #e55; }

input:disabled,
select:disabled,
textarea:disabled {
  color: #505050; }

input:focus,
select:focus,
textarea:focus {
  border: 1px solid #199b8d; }

label {
  display: block;
  padding: 0.5rem 0.5rem 0 0.5rem; }

h1 {
  text-align: center;
  font-weight: normal; }

h2 {
  text-align: center;
  font-weight: normal;
  margin-bottom: 0.5rem; }

input.with-unit {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-right: 0; }

span.input-unit {
  display: inline-block;
  color: #444;
  padding: 0.55rem;
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
  background-color: #d0d0d0;
  border: 1px solid #ccc;
  -webkit-box-shadow: 0px 1px 3px -1px #000;
  box-shadow: 0px 1px 3px -1px #000;
  line-height: 1rem;
  margin: 0.5rem 0;
  margin-right: 0.5rem; }

.input-with-icon {
  position: relative; }

.input-with-icon i {
  position: absolute;
  top: 0.5rem;
  line-height: 1em;
  color: #777; }

.input-with-icon:not(.icon-right) i {
  left: 0.5rem; }

.input-with-icon.icon-right i {
  right: 0.5rem; }

.input-with-icon:not(.icon-right) > input {
  padding-left: 3rem; }

.input-with-icon.icon-right > input {
  padding-right: 3rem; }

.checkbox {
  margin: 0.7rem 0; }

.checkbox > input[type=checkbox] {
  display: none; }

.checkbox > input[type="checkbox"] + label {
  font-size: 1em;
  text-align: left;
  padding: 0;
  margin: 0;
  cursor: pointer; }

.checkbox > input[type="checkbox"] + label span:first-child {
  display: inline-block;
  position: relative;
  width: 1.2rem;
  height: 1.2rem;
  margin: -0.2rem 0.4rem 0 0.1rem;
  vertical-align: middle;
  background: #222;
  border-radius: 0.2rem;
  border: 1px solid #aaa;
  cursor: pointer; }

.checkbox > input[type="checkbox"] + label span:first-child:after {
  content: "\2713";
  position: absolute;
  top: 0.5rem;
  left: 0.5rem;
  font-family: "Roboto", sans-serif;
  font-size: 0rem;
  font-weight: bold;
  line-height: 0rem;
  color: white; }

.checkbox > input[type="checkbox"]:checked + label span:first-child {
  background: #0b7569;
  border: 1px solid #0b7569; }

.checkbox > input[type="checkbox"]:checked + label span:first-child:after {
  top: 0.05rem;
  left: 0.15rem;
  font-size: 1rem;
  line-height: 1rem; }

.inline {
  display: inline-block;
  margin-right: 1rem; }

.page-content {
  margin: auto;
  margin-top: 50px;
  max-width: 800px;
  padding: 0.5rem;
  padding-bottom: 2rem; }

.page-content.no-padding {
  padding: 0; }

.container {
  background-color: #1d1d1d;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
  -webkit-box-shadow: inset 0px 0px 10px -4px #000;
  box-shadow: inset 0px 0px 10px -4px #000;
  border-radius: 0.2rem; }

.container.no-margins {
  margin-left: -0.5rem;
  margin-right: -0.5rem; }

.table {
  display: table;
  width: 100%; }

[class^="half"] {
  display: table-cell; }

.half1 {
  padding-right: 0.25rem; }

.half2 {
  padding-left: 0.25rem; }

.center {
  text-align: center; }

.vertical-flexbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  margin-left: -0.25rem;
  margin-right: -0.25rem; }

.vertical-flexbox .button {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%; }

.vertical-flexbox > * {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  margin-left: 0.25rem;
  margin-right: 0.25rem; }

.bottom-margin {
  margin-bottom: 0.5rem; }

.align-left {
  text-align: left; }

.align-right {
  text-align: right; }

div.align-right * {
  display: inline-block;
  margin-left: auto;
  margin-right: 0px; }

#vuoro1 {
  margin: 0.5rem 0;
  padding: 0.8rem;
  text-align: center;
  background: #2f2f2f; }

.timeSelectorDiv div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.timeSelectorDiv span {
  margin: 0 0.5rem; }

.timeSelectorDiv input {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center; }

span.new-stuff {
  font-size: 0.9em;
  padding: 0.1rem 0.5rem;
  white-space: nowrap;
  background-color: #db2241;
  border-radius: 100px;
  text-shadow: none; }

span.faded {
  font-size: 0.75em;
  color: #aaa; }

p.change-alert {
  color: #ff9933;
  font-weight: bold; }

a.button.not-available {
  color: #888;
  text-shadow: none;
  font-style: italic; }

#pagePopUp .page-content {
  max-width: 400px;
  min-width: 350px;
  margin-top: 1.5rem; }
  @media screen and (min-width: 600px) and (min-height: 600px) {
    #pagePopUp .page-content {
      margin-top: 80px; } }

#pagePopUp img {
  max-width: 80%; }

#pagePopUp h1 {
  font-size: 1.2em;
  margin: 0.4em 0 1.2em 0; }

#page0 .page-content h1 {
  display: inline-block;
  color: #1b8579; }

#page0 .page-content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch; }

#page0 .page-content li {
  display: block;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%;
  margin-bottom: 1px;
  text-align: center; }

#page0 .page-content li:not(:first-child) {
  margin-left: 1px; }

#page0 .page-content li .button {
  height: 100%; }

.company-information {
  margin-top: 1.25rem;
  text-align: center; }

.company-information img {
  max-width: 70%;
  max-height: 45px; }

.company-information a {
  font-size: 1.1em; }

.company-information p {
  color: #aaa;
  margin-top: 0.5rem; }

div.pv-myynnit-rivi span.date-span {
  display: block;
  text-align: center;
  background-color: #0b7569;
  padding: 0.5rem 0.5rem;
  border-top: 2px solid #222; }

div.pv-myynnit-rivi span.osasto-rivi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  background-color: #333;
  padding: 0.1rem 0.5rem; }
  div.pv-myynnit-rivi span.osasto-rivi span:last-child {
    padding-left: 0.2rem; }
  div.pv-myynnit-rivi span.osasto-rivi span.osasto-span {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis; }

div.pv-myynnit-rivi span.osasto-rivi:nth-child(2n) {
  background-color: #444; }

#pvSuunn {
  position: relative;
  height: 80vh; }
  #pvSuunn .kohde-rivi {
    position: absolute;
    width: 100%;
    padding: 0.2rem;
    font-size: 0.9em;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-right: 1px solid rgba(0, 0, 0, 0.4);
    border-bottom: 1px solid rgba(0, 0, 0, 0.4); }
    #pvSuunn .kohde-rivi span {
      position: relative;
      z-index: 10;
      color: black; }
  #pvSuunn .kohde-rivi:hover,
  #pvSuunn .kohde-rivi:active {
    color: black; }
  #pvSuunn div.timeline-marker {
    position: absolute;
    width: 100%;
    width: calc(100% + 0.4rem);
    margin: 0 -0.2rem;
    height: 2px;
    background: #db2241;
    border-bottom: 1px solid rgba(0, 0, 0, 0.3); }

#wait {
  z-index: 10000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

#wait-toast {
  display: table;
  text-align: center;
  vertical-align: middle;
  padding: 0.8rem 1rem;
  -webkit-box-shadow: 1px 1px 12px -2px #000;
  box-shadow: 1px 1px 12px -2px #000;
  background: #414141;
  border-radius: 0.2rem; }

#wait-message {
  display: table-cell;
  vertical-align: middle;
  color: white;
  padding: 1rem 0.5rem 1rem 1rem; }

.load-circle {
  width: 40px;
  height: 40px;
  margin: auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 50%;
  border: 5px solid transparent;
  border-bottom-color: #0b7569; }

.animated-load {
  -webkit-animation: spin 1.5s ease infinite;
  animation: spin 1.5s ease infinite; }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.fadeIn {
  -webkit-animation: fadeIn 0.3s ease 0s 1 forwards;
  animation: fadeIn 0.3s ease 0s 1 forwards; }

@-webkit-keyframes fadeIn {
  from {
    -webkit-transform: translate(0, 20%);
    transform: translate(0, 20%);
    opacity: 0; }
  to {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1; } }

@keyframes fadeIn {
  from {
    -webkit-transform: translate(0, 20%);
    transform: translate(0, 20%);
    opacity: 0; }
  to {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1; } }

.fadeOut {
  -webkit-animation: fadeOut 0.3s ease 0s 1 forwards;
  animation: fadeOut 0.3s ease 0s 1 forwards; }

@-webkit-keyframes fadeOut {
  from {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1; }
  to {
    -webkit-transform: translate(0, 20%);
    transform: translate(0, 20%);
    opacity: 0; } }

@keyframes fadeOut {
  from {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
    opacity: 1; }
  to {
    -webkit-transform: translate(0, 20%);
    transform: translate(0, 20%);
    opacity: 0; } }

.fullscreen {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100vh;
  background: transparent;
  opacity: 1; }

.time-selector {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  .time-selector select {
    -webkit-box-shadow: none;
    box-shadow: none; }
  .time-selector select:first-child {
    direction: rtl; }
  .time-selector select:not(:first-child) {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    border-left: 0;
    padding-left: 0.1rem; }
  .time-selector select:not(:last-child) {
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
    border-right: 0;
    padding-right: 0.1rem; }
  .time-selector span {
    background: #ddd;
    color: #000;
    padding: 0.5rem 0;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc; }
  .time-selector select, .time-selector span {
    margin: 0.5rem 0; }

h2.side-lines {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  h2.side-lines:before, h2.side-lines:after {
    content: "";
    width: 1000px;
    height: 1px;
    background: #ccc; }
  h2.side-lines span {
    white-space: nowrap;
    margin: 0 0.5rem;
    font-size: 0.8em; }

div.horizontal-line {
  border: 1px solid #ccc;
  margin: 1rem 0; }

.versionCode {
  color: #777;
  text-align: center;
  font-size: 0.8rem;
  margin-top: 1rem; }

div.text-panel {
  margin: 1rem 0; }

div.page-context-menu {
  position: absolute;
  background: #eee;
  -webkit-box-shadow: 1px 1px 5px #000;
  box-shadow: 1px 1px 5px #000;
  border: 1px solid #ddd;
  z-index: 130;
  display: none; }

div.page-context-menu * {
  display: inline-block;
  color: #333;
  padding: 0.6rem;
  padding-right: 3rem;
  text-decoration: none; }

div.page-context-menu a:hover {
  background: #ddd; }

[data-open] { cursor: pointer; }
