/* Don't let the header get small enough to wrap. */
div.header
  {
  min-width: 905px;
  }

/* Don't let the menu get small enough to wrap. */
ul.menu
  {
  min-width: 520px;
  }

div.header td
  {
  vertical-align: middle;
  }

div.header h1,
h1.title
  {
  margin: .3em;
  }

dt
  {
  font-weight: bold;
  }

dd
  {
  margin-bottom: 1em;
  }
  
.title img
  {
  vertical-align: -.3em;
  margin: 0;
  height: 1.2em;
  width: 1.2em;
  }

/* Take the app name and icon, float it right and center vertically. */
.title .app
  {
  }
  
/* Make the app name dark green and bold. */
.title span.app
  {
  color: #006644;
  vertical-align: middle;
  font-weight: bold;
  margin-left: 10px;
  }

/* Use the correct size for the app icon. */
.title .app img
  {
  height: 1.2em;
  width: 1.2em;
  vertical-align: middle;
  }

a.button
  {
  /* Create a square box. */
  padding: 5px;
  padding-left: 10px;

  float: right;

  /* Center the text. */
  font-weight: bold;
  text-align: center;

  border-style: dashed;
  border-width: 1px;
  border-radius: 10px;

  -webkit-transition: box-shadow .5s;
  -webkit-transition: background-color .5s;
  }

/* Make the software box act like a button. */
a.button:hover
  {
  border-color: transparent;
  }

a.button:active
  {
  border-color: transparent;
  }

/* Turn off underline. */
a.button,
a.button:hover,
a.button:active,
a.button:visited
  {
  text-decoration: none;
  }

a.link
  {
  text-decoration: underline;
  }

.caption
  {
  font-size: 24px;
  font-weight: bold;
  color: #006644;
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 0;
  margin-top: 0px;
  }

.details dt,
.faq dt
  {
  font-weight: bold;
  }

.background,
.background_shade
  {
  position: fixed;
  top: 100px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  }

.background
  {
  z-index: 0;
  }
  
.background_shade
  {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffcc+0,ffffcc+100&1+0,0.8+70,0.68+78,0.51+86,0.2+100 */
  background: -moz-linear-gradient(left, rgba(255,255,204,1) 0%, rgba(255,255,204,0.8) 70%, rgba(255,255,204,0.68) 78%, rgba(255,255,204,0.51) 86%, rgba(255,255,204,0.2) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(255,255,204,1) 0%,rgba(255,255,204,0.8) 70%,rgba(255,255,204,0.68) 78%,rgba(255,255,204,0.51) 86%,rgba(255,255,204,0.2) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(255,255,204,1) 0%,rgba(255,255,204,0.8) 70%,rgba(255,255,204,0.68) 78%,rgba(255,255,204,0.51) 86%,rgba(255,255,204,0.2) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffcc', endColorstr='#33ffffcc',GradientType=1 ); /* IE6-9 */
  }
  
.background img
  {
  position: absolute;

  top: 0;
  margin-left: 30%;
  width: 70%;
  
  -moz-transform-origin: center center;
  -ms-transform-origin: center center;
  -o-transform-origin: center center;
  -webkit-transform-origin: center center;
  transform-origin: center center;
  }

.foreground
  {
  z-index: 1000;
  }

.footer
  {
  z-index: 1100;
  }

/* Use a consistent style for all list-style tables. */
table.tablelist
  {
  border-spacing: 0;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  table-layout: fixed;
  }

table.tablelist p
  {
  margin-top: 0;
  margin-bottom: 6px;
  }

table.tablelist p:last-child
  {
  margin-bottom: 0;
  }

table.tablelist td:first-child
  {
  width: 200px;
  }

table.tablelist ol
  {
  padding-left: 20px;
  }

table.tablelist ul
  {
  padding-left: 12px;
  }

table.tablelist ol:first-child,
table.tablelist ul:first-child
  {
  margin-top: 0px;
  }

table.tablelist ol:last-child,
table.tablelist ul:last-child
  {
  margin-bottom: 0px;
  }

table.tablelist th,
table.tablelist td
  {
  padding: 0.5em 1em;
  vertical-align: top;
  }

table.tablelist th
  {
  background: rgb(227, 227, 227);
  text-align: center;
  }

table.tablelist td
  {
  background: rgba(242, 242, 242, 0.5);
  }

table.tablelist td.header
  {
  font-weight: bold;
  padding-right: 7px;
  }

/* Use rounded borders. */
table.tablelist tr:first-child th:first-child,
table.tablelist tr:first-child td:first-child
  {
  border-top-left-radius: 0.6em;
  }

table.tablelist tbody.group tr td
  {
  border-bottom: none;
  }

table.tablelist tr td
  {
  border-left: 1px solid rgb(170, 170, 170);
  border-top: 1px solid rgb(170, 170, 170);
  }

table.tablelist tbody.group tr:first-child td
  {
  border-top: 1px solid rgb(170, 170, 170);
  }

table.tablelist tbody.group:last-child tr:last-child td
  {
  border-bottom: 1px solid rgb(170, 170, 170);
  }

table.tablelist tbody.group tr:first-child td:first-child
  {
  border-top-left-radius: 0;
  }

table.tablelist tbody.group:first-child tr:first-child td:first-child
  {
  border-top-left-radius: 0.6em;
  }

table.tablelist tr:first-child th:last-child,
table.tablelist tr:first-child td:last-child
  {
  border-top-right-radius: 0.6em;
  }

table.tablelist tbody.group tr:first-child td:last-child
  {
  border-top-right-radius: 0;
  }

table.tablelist tbody.group:first-child tr:first-child td:last-child
  {
  border-top-right-radius: 0.6em;
  }

table.tablelist tr:last-child td:first-child,
table.tablelist tr.last_child td:first-child,
table.tablelist tr.last_child th:first-child
  {
  border-bottom-left-radius: 0.6em;
  }

table.tablelist tbody.group tr:last-child td:first-child
  {
  border-bottom-left-radius: 0;
  }

table.tablelist tbody.group:last-child tr:last-child td:first-child
  {
  border-bottom-left-radius: 0.6em;
  }

table.tablelist tr:last-child td:last-child,
table.tablelist tr.last_child td:last-child,
table.tablelist tr.last_child th:last-child
  {
  border-bottom-right-radius: 0.6em;
  }

table.tablelist tbody.group tr:last-child td:last-child
  {
  border-bottom-right-radius: 0;
  }

table.tablelist tbody.group:last-child tr:last-child td:last-child
  {
  border-bottom-right-radius: 0.6em;
  }

table.tablelist tr:first-child td
  {
  border-top: 1px solid rgb(170, 170, 170);
  }

/* Put borders on table headers. */
table.tablelist tr th
  {
  border-top: 1px solid rgb(170, 170, 170);
  }

table.tablelist tr th:first-child
  {
  border-left: 1px solid rgb(170, 170, 170);
  }

table.tablelist tr th:last-child
  {
  border-right: 1px solid rgb(170, 170, 170);
  }

/* Exterior border on the last row. */
table.tablelist tr:last-child td
  {
  border-bottom: 1px solid rgb(170, 170, 170);
  }

/* Exterior borders. */
table.tablelist td:first-child
  {
  border-left: 1px solid rgb(170, 170, 170);
  }

table.tablelist td:last-child
  {
  border-right: 1px solid rgb(170, 170, 170);
  }

td.download a.maslink,
td.download a.download_link,
div.column a.maslink,
div.column a.download_link
  {
  float: none;
  display: inline-block;
  width: 200px;
  padding-top: 0px;
  position: relative;
  top: -20px;
  }

div.downloadbuttons
  {
  position: relative;
  height: 100px;
  }

ul.terms li
  {
  margin-bottom: 10px;
  }

div.column
  {
  position: absolute;
  top: 0px;
  display: inline-block;
  width: 300px;
  height: 100px;
  text-align: center;
  }

div.column1
  {
  left: 0px;
  }

div.column2
  {
  right: 0px;
  }

td.download a.maslink,
div.column a.maslink,
  {
  margin-left: 25px;
  }

td.download a.download_link,
div.column a.download_link
  {
  font-size: 90%;
  top: 0px;
  width: 198px;
  }

td.download a.download_link span,
div.column a.download_link span
  {
  display: inline-block;
  width: 100px;
  font-size: 1.3em;
  line-height: 1em;
  position: relative;
  top: 9px;
  }

td.download a.download_link img,
div.column a.download_link img
  {
  position: relative;
  top: 2px;
  }

.dark,
.slide img.dark
  {
  display: none;
  }

@-moz-document url-prefix()
  {
  .title span.app
    {
    position: relative;
    top: 3px;
    }
    
  /* Download overlay wrapper. */
  #downloadoverlaywrapper
    {
    background-color: rgba(80, 80, 80, .8);
    }
  }

@media (prefers-color-scheme: dark)
  {
  .aqua,
  .slide img.aqua
    {
    display: none;
    }

  .dark,
  .slide img.dark
    {
    display: inherit;
    }

  /* Make the app name dark green and bold. */
  .title span.app
    {
    color: #66bb88;
    }

  /* Make the software box act like a button. */
  a.download_link:hover
    {
    color: #002200;
    background-color: rgba(119, 170, 119, .5);
    box-shadow: inset 0px 0px 2px 2px rgba(160, 160, 160, 1.0);
    }

  a.download_link:active
    {
    color: #002200;
    background-color: rgba(238, 238, 187, .5);
    box-shadow: inset 0px 0px 2px 2px rgba(160, 160, 160, 1.0);
    }

  .caption
    {
    color: #66bb88;
    }

  .background_shade
    {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#002200+0,002200+100&1+0,0.8+70,0.68+78,0.51+86,0.2+100 */
    background: -moz-linear-gradient(left, rgba(0,34,0,1) 0%, rgba(0,34,0,0.8) 70%, rgba(0,34,0,0.68) 78%, rgba(0,34,0,0.51) 86%, rgba(0,34,0,0.2) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(0,34,0,1) 0%,rgba(0,34,0,0.8) 70%,rgba(0,34,0,0.68) 78%,rgba(0,34,0,0.51) 86%,rgba(0,34,0,0.2) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(0,34,0,1) 0%,rgba(0,34,0,0.8) 70%,rgba(0,34,0,0.68) 78%,rgba(0,34,0,0.51) 86%,rgba(0,34,0,0.2) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002200', endColorstr='#33002200',GradientType=1 ); /* IE6-9 */
    }

  table.tablelist th
    {
    background: rgba(28,28,28,1);
    text-align: center;
    }

  table.tablelist td
    {
    background: rgba(30,30,30,.5);
    }

  table.tablelist tr td
    {
    border-left: 1px solid rgba(91,91,91,1);
    border-top: 1px solid rgba(91,91,91,1);
    }

  table.tablelist tbody.group tr:first-child td
    {
    border-top: 1px solid rgba(91,91,91,1);
    }

  table.tablelist tbody.group:last-child tr:last-child td
    {
    border-bottom: 1px solid rgba(91,91,91,1);
    }

  table.tablelist tr:first-child td
    {
    border-top: 1px solid rgba(91,91,91,1);
    }

  /* Put borders on table headers. */
  table.tablelist tr th
    {
    border-top: 1px solid rgba(91,91,91,1);
    }

  table.tablelist tr th:first-child
    {
    border-left: 1px solid rgba(91,91,91,1);
    }

  table.tablelist tr th:last-child
    {
    border-right: 1px solid rgba(91,91,91,1);
    }

  /* Exterior border on the last row. */
  table.tablelist tr:last-child td
    {
    border-bottom: 1px solid rgba(91,91,91,1);
    }

  /* Exterior borders. */
  table.tablelist td:first-child
    {
    border-left: 1px solid rgba(91,91,91,1);
    }

  table.tablelist td:last-child
    {
    border-right: 1px solid rgba(91,91,91,1);
    }
  }
