$font-size: 16px;
$line-height: 1.5;
$textarea-vertical-padding: 8px;

// Calculation: (font-size * line-height * num of lines) + (top and bottom padding)
$single-line-max-height: ($font-size * $line-height * 6) + ($textarea-vertical-padding * 2);
$multiple-lines-max-height: ($font-size * $line-height * 6) + ($textarea-vertical-padding * 2);


h1, h2, h3, h4, h5, h6 {
  color:#222;
  margin:0 0 20px;
}

p, ul, ol, table, pre, dl {
  margin:0 0 20px;
}

h1, h2, h3 {
  line-height:1.1;
}

h1 {
  font-size:28px;
}

h2 {
  color:#393939;
}

h3, h4, h5, h6 {
  color:#494949;
}

a {
  color:#39c;
  font-weight:400;
  text-decoration:none;
}

code, pre {
  color: #333;
  font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal;
  font-size: 14px;
}

pre {
  background-color: #f8f8f8;
  border: 1px solid #e5e5e5;
  border-radius: 4px;
  overflow-x: auto;
  padding: 8px 10px;
}

@media print, screen and (max-width: 960px) {

}

@media print, screen and (max-width: 720px) {
  body {
    word-wrap:break-word;
  }

  pre, code {
    word-wrap:normal;
  }
}

@media print, screen and (max-width: 480px) {
}

@media print {
  body {
    padding:0.4in;
    font-size:12pt;
    color:#444;
  }
}


* {
  box-sizing: border-box;
}

body {
  color: #555;
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: $font-size;
  line-height: $line-height;
  padding: 70px 0;
}

strong {
  font-weight: 700;
}

.container {
  margin: 0 auto;
  max-width: 500px;
  padding: 0 15px;
}

.logo {
  font-size: 32px;
  text-align: center;
}

.project-about {
  margin-bottom: 50px;
  text-align: center;
}

.primary-demo {
  margin-bottom: 10px;
}

.demo-options {
  margin-bottom: 50px;
  text-align: center;
}

.demo-options a {
  display: inline-block;
  font-size: 14px;
  margin: 0 10px;
}

hr {
  background-color: #c0c8c9;
  background-image: linear-gradient(to right, #fff 0%, #c0c8c9 50%, #fff 100%);
  border: none;
  height: 1px;
  margin: 50px 0;
}

.btn {
  border: 1px solid transparent;
  border-radius: 2px;
  cursor: pointer;
  display: inline-block;
  padding: 6px 12px;
  text-align: center;
}

.btn,
.btn:hover,
.btn:active {
  color: #fff;
}

.btn-primary {
  background-color: #39c;
  border-color: rgba(0, 0, 0, 0.1);
  color: #fff;
}

.btn-primary:hover,
.btn-primary:active {
  border-color: rgba(0, 0, 0, 0.195);
  box-shadow: 0 1px 1px rgba(0, 0, 0, .1);
}

.btn-primary:active {
  box-shadow: inset 0 1px 4px rgba(0, 0, 0, .1);
}

.site-footer {
  text-align: center;
}

textarea {border: 1px solid #d9d9d9; border-radius: 3px; font-size: inherit; margin: 0; overflow: auto; width: 100%;}
textarea:focus {border-color: rgba(82, 168, 236, 0.8); box-shadow: 0 0 6px rgba(102, 175, 233, .6); outline: 0;}

textarea {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  overflow-x: hidden;
  padding: 6px 8px;
}

.single-line {
  min-height: 38px;
  max-height: $single-line-max-height;
}

.multiple-lines {
  min-height: 86px;
  max-height: $multiple-lines-max-height
}

.ribbon{
  position: absolute;
  top: 50px;
  width: 230px;
  padding: 1px 0;
  background: #000;
  color: #eee;
  -moz-box-shadow: 0 0 10px rgba(0,0,0,0.5);
  -webkit-box-shadow: 0 0 10px rgba(0,0,0,0.5);
  box-shadow: 0 0 10px rgba(0,0,0,0.5);
}

.ribbon.left{
  left: -50px;
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.ribbon a,
.ribbon a:visited,
.ribbon a:active,
.ribbon a:hover{
  display: block;
  padding: 5px 0;
  color: inherit;
  text-align: center;
  text-decoration: none;
  font-size: 14px;
  border: 1px solid rgba(255,255,255,0.3);
  -moz-text-shadow: 0 0 10px rgba(0,0,0,0.31);
  -webkit-text-shadow: 0 0 10px rgba(0,0,0,0.31);
  text-shadow: 0 0 10px rgba(0,0,0,0.31);
}

.ribbon.blue{
  background: #09e;
}
