
/* Base */
/* ----------------------------------------------------------*/

* {
  margin: 0;
  padding: 0;
}

html, body { height: 100%; }

body {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 300;
  background-color: #fdfdfd;
}

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 400; }

a         { color: #2a7ae2; text-decoration: none; }
a:hover   { color: #000; text-decoration: underline; }
a:visited { color: #205caa; }

/* Utility */

.wrap:before,
.wrap:after { content:""; display:table; }
.wrap:after { clear: both; }
.wrap {
  max-width: 800px;
  padding: 0 30px;
  margin: 0 auto;
  zoom: 1;
}


/* Layout Styles */
/* ----------------------------------------------------------*/

/* Site header */

.site-header {
  border-top: 5px solid #333;
  /* border-bottom: 1px solid #e8e8e8;
  min-height: 56px; */
  background-color: white;
}

/* Site footer */

.site-footer {
  border-top: 1px solid #e8e8e8;
  padding: 30px 0;
}

.footer-heading {
  font-size: 18px;
  font-weight: 300;
  letter-spacing: -.5px;
  margin-bottom: 15px;
}

.site-footer .column { float: left; margin-bottom: 15px; }

.footer-col-1 {
  width: 270px; /*fallback*/
  width: -webkit-calc(35% - 10px);
  width: -moz-calc(35% - 10px);
  width: -o-calc(35% - 10px);
  width: calc(35% - 10px);
  margin-right: 10px
}
.footer-col-2 {
  width: 175px; /*fallback*/
  width: -webkit-calc(23.125% - 10px);
  width: -moz-calc(23.125% - 10px);
  width: -o-calc(23.125% - 10px);
  width: calc(23.125% - 10px);
  margin-right: 10px
}
.footer-col-3 {
  width: 335px; /*fallback*/
  width: -webkit-calc(41.875%);
  width: -moz-calc(41.875%);
  width: -o-calc(41.875%);
  width: calc(41.875%);
}

.site-footer ul { list-style: none; }

.site-footer li,
.site-footer p {
  font-size: 15px;
  letter-spacing: -.3px;
  color: #828282;
}

.github-icon-svg,
.twitter-icon-svg {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  top: 3px;
}

/* media queries */
/* ----------------------------------------------------------*/


@media screen and (max-width: 750px) {

  .footer-col-1 { width: 50%; }

  .footer-col-2 {
    width: 45%; /*fallback*/
    width: -webkit-calc(50% - 10px);
    width: -moz-calc(50% - 10px);
    width: -o-calc(50% - 10px);
    width: calc(50% - 10px);
    margin-right: 0;
  }

  .site-footer .column.footer-col-3 {
    width: auto;
    float: none;
    clear: both;
  }

}

@media screen and (max-width: 600px) {

  .wrap { padding: 0 12px; }

  .site-nav {
    position: fixed;
    z-index: 10;
    top: 14px; right: 8px;
    background-color: white;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border: 1px solid #e8e8e8;
  }

  .site-nav .menu-icon {
    display: block;
    font-size: 24px;
    color: #505050;
    float: right;
    width: 36px;
    text-align: center;
    line-height: 36px;
  }

  .site-nav .menu-icon svg { width: 18px; height: 16px; }

  .site-nav .trigger {
    clear: both;
    margin-bottom: 5px;
    display: none;
  }

  .site-nav:hover .trigger { display: block; }

  .site-nav .page-link {
    display: block;
    text-align: right;
    line-height: 1.25;
    padding: 5px 10px;
    margin: 0;
  }

  .site-footer .column {
    float: none;
    clear: both;
    width: auto;
    margin: 0 0 15px; }

}


/* ------------------ SOM ------------------ */

h1, h2, h3, h4, h5 {
    font-family: 'Open Sans Condensed','Helvetica Neue',Helvetica,Arial,sans-serif;
    font-weight: 300;
    text-align: center;
    font-size: 180%;
}

.som.comment, .highlight .c {color:#4e9a06;}
.som.string, .highlight .s2 {color:#66355c;}
.highlight .nb {font-weight: bold;}
.som.number  {color:#5c3566;}
.som.arg     {font-style:italic;}
.som.self    {color:#204a87;}

.som {
  font-family: "Lucida Console", Monaco, monospace;
  font-weight: 300;
  font-size:   90%;
}

.content-section-even {
  padding-top:50px;
}

figure {
  margin:auto; 
  margin-top: 30px;
}
figure code {
  display:table;
  white-space: pre;
  margin:auto;
}
figcaption {
    margin-top: 10px;
    text-align: center;
}

figcaption code {
  display:inline;
}
cite {
  display:block;
  margin:auto;
  text-align:center;
}
cite em {font-style:normal;}

.content-section {
  padding: 30px 0;
  padding-bottom: 30px;
  border-top: 1px solid #e8e8e8;
}

.content-section:nth-child(even) {
  background-color: #fdfdfd;
}

.content-section:nth-child(odd) {
  background-color: #ffffff;
}

.lang-logo {
  filter: gray;
  -webkit-filter: grayscale(100%);
  height:40px;
  width:40px;
  vertical-align:middle;
  display: inline-block;
}

ul.som-impl {
  list-style-type: none;
  text-align: center;
  width:80%;
  margin: auto;
}
ul.som-impl ul {list-style-type: none; display: inline-block; vertical-align:middle;}

ul.som-impl:after {
    content: '';
    display: inline-block;
    width: 100%;
}
ul.som-impl:before {
    content: '';
    display: block;
    margin-top: 2.5em;
}
li.som-impl {
    display: inline-block;
    margin:0px 20px;
}
.text-logo {color:#bbbbbb;font-size:40px;line-height: 33px;font-weight:bold}

.details-list li.som-impl {
  list-style-type: circle;
  width: 20em;
  font-size: 70%;
  text-align: left;
}

.details-list ul.som-impl ul {
  list-style-type: circle;
  text-align: left;
  vertical-align: top;
}

.details-list h4 {
  padding-top: 1em;
}

ul.two-col {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
}

ul.two-col > li:before {
  content: '\02022\0a0\0a0';
}
ul.two-col li {
  padding-left: 1em;
}
ul.two-col > li {
  padding-left: 1.5em;
  text-indent: -1em;
  list-style-type: none;
}

ul.two-col ul {
  padding-left: 33px;
}

sub.ns {
  font-size: 60%;
  vertical-align: baseline;
}

.content-section p {
  text-align: center;
}

.history {
  display: table;
}
.history div {display: table-row; margin-top: 10px;}
.history div img, .history div p {display: table-cell; vertical-align: top; padding: 15px 5px;}
.history div img {margin: auto; max-width: 150px;}

#repl-out {
  width:600px;
  height:200px;
  padding:5px;
  background-color:#000;
  color:#fff;
}

.repl-input {
    width:600px;
    font-family:monospace;
    margin:auto;
}

#repl-in {
    border:0;
    font-family:monospace;
    box-shadow:none;
    resize: none;
    outline: none;
    font-size: inherit;
    height: 3ex;
    background-color: inherit;
    width:90%;
    vertical-align: middle;
}

#repl { display: none;}

#try-som {
    position:absolute;
    -webkit-transform:rotate(-90deg);
       -moz-transform:rotate(-90deg);
        -ms-transform:rotate(-90deg);
         -o-transform:rotate(-90deg);
    margin-top:80px;margin-left:700px;
    font-weight:400
}
