/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*
*/
.jxgbox {
  position: relative;
  /* for IE 7 */
  overflow: hidden;
  background-color: #ffffff;
  border-style: solid;
  border-width: 1px;
  border-color: #356AA0;
  border-radius: 10px;
  /*-moz-border-radius:10px;*/
  -webkit-border-radius: 10px;
  -ms-touch-action: none;
  /*
        -moz-box-shadow:black 2px 2px 2px -2px, #151A10 4px 4px;
        -webkit-box-shadow:4px 4px 3px #151A10;
        */ }

.JXGtext {
  background-color: transparent;
  /* May produce artefacts in IE. Solution: setting a color explicitly. */
  font-family: Arial, Helvetica, Geneva;
  padding: 0px;
  margin: 0px;
  /*line-height:100%;*/
  /* This has to be commented out. Otherwise subscripts are not visible in IE */
  /*border-style:dotted;*/
  /*border-width:0.4px;*/ }

.JXGinfobox {
  border-style: none;
  border-width: 1px;
  border-color: black; }

.JXGimage {
  opacity: 1.0; }

.JXGimageHighlight {
  opacity: 0.6;
  /*
    border-style:solid;
    border-width:10px;
    border-color:#A0A0A0;
    */ }

.navbar {
  color: #aaaaaa;
  background-color: #f5f5f5;
  padding: 2px;
  position: absolute;
  font-size: 10px;
  cursor: pointer;
  z-index: 100;
  right: 5px;
  bottom: 5px; }

/* apply a natural box layout model to all elements */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html, body, #application, p, input.function + span, .zoom.in span, .zoom.out span, .slider .close-slider, #f, input, .button {
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none; }

/* Generated by Font Squirrel (http://www.fontsquirrel.com) on March 22, 2014 */
@font-face {
  font-family: 'monacoregular';
  src: url("../monaco/monaco_1-webfont.eot");
  src: url("../monaco/monaco_1-webfont.eot?#iefix") format("embedded-opentype"), url("../monaco/monaco_1-webfont.woff") format("woff"), url("../monaco/monaco_1-webfont.ttf") format("truetype"), url("../monaco/monaco_1-webfont.svg#monacoregular") format("svg"); }

/* mixins=================================================================*/
html, body, #application {
  width: 100%;
  height: 100%;
  color: #F8F7F6;
  font-size: 12px;
  font-family: "adelle",serif; }

p {
  color: #F8F7F6;
  font-size: 14px;
  font-family: "adelle",serif;
  color: #EBE9E8; }

body {
  background: #F2F2F2; }

input.function + span:hover:after {
  content: attr(data-tip);
  position: absolute;
  background: #fff;
  font-size: 13px;
  border: rgba(61, 51, 50, 0.5) 1px solid;
  color: #000;
  width: 360px;
  padding: 25px; }

.red {
  color: #f25545; }

.submit {
  outline: none;
  border: none; }

.segment {
  padding: 10px 12px !important; }

a.edit, a.remove {
  width: auto !important; }

a.edit {
  margin-right: 8px; }

.hidden {
  display: none; }

input.function + span {
  color: #F8F7F6;
  font-size: 12px;
  font-family: "adelle",serif;
  margin-top: -5px;
  margin-left: 3px;
  color: rgba(248, 247, 246, 0.45); }
  input.function + span:hover {
    cursor: pointer; }

[data-html] {
  display: none; }

.button.play, .button.reset {
  display: none; }

.dim {
  opacity: 0.5;
  filter: alpha(opacity=50);
  *zoom: 1;
  cursor: default !important; }
  .dim:before, .dim:after {
    content: "";
    display: table; }
  .dim:after {
    clear: both; }

#content .new {
  display: inline-block;
  float: none; }

.finished {
  cursor: default !important; }

#content {
  min-height: 300px;
  padding: 10px; }

.center {
  width: 100%; }

h2.title {
  font-size: 1.8em;
  font-weight: bold;
  font-variant: small-caps;
  color: #3D3332; }

#content .back {
  margin-top: 10px;
  margin-left: 13px; }

ol {
  margin-top: 25px; }

#items li > span:first-child {
  font-size: 0.7em;
  color: #CFCABA;
  float: left;
  position: relative;
  z-index: 10;
  background: #fff; }
  #items li > span:first-child + span {
    display: block;
    z-index: 5;
    position: relative;
    top: 6px;
    margin-top: -17px;
    left: 1px;
    width: 100%;
    border-top: rgba(204, 204, 204, 0.5) 1px solid; }

a.item {
  width: 80% !important; }

li.next {
  margin-bottom: 3px; }

ol li {
  width: 98%;
  margin-left: 12px;
  padding: 15px 0;
  margin-bottom: 8px;
  border-bottom: rgba(204, 204, 204, 0.5) 1px solid;
  color: #F14837;
  font-size: 1.5em; }
  ol li:hover {
    cursor: pointer; }
    ol li:hover > span:first-child + span + br + a {
      color: #F14837; }
  ol li a {
    color: #815D1F;
    text-decoration: none;
    top: 0 !important; }
    ol li a.right {
      color: #CFCABA;
      font-size: 0.7em;
      position: relative;
      left: -10px;
      top: 5px !important;
      float: right; }
      ol li a.right:hover {
        text-decoration: underline; }

.page {
  width: 860px;
  height: auto;
  min-height: 400px;
  margin: 0 auto;
  background: #fff;
  box-shadow: rgba(0, 0, 0, 0.33333) 0px 0px 4px 1px 2px #000; }

.page form input {
  background: rgba(240, 205, 26, 0.18);
  border: rgba(228, 216, 216, 0.7) 1px solid;
  display: block;
  font-family: monospace;
  margin-bottom: 25px;
  margin-left: -3px;
  width: 100%;
  color: #464444; }

input.edit {
  background: rgba(240, 205, 26, 0.18);
  border: rgba(228, 216, 216, 0.7) 1px solid;
  color: #464444; }

.page form {
  *zoom: 1;
  display: block;
  padding: 10px;
  margin: 0 auto;
  width: 390px; }
  .page form:before, .page form:after {
    content: "";
    display: table; }
  .page form:after {
    clear: both; }
  .page form label {
    font-variant: small-caps;
    font-weight: bold;
    margin-bottom: 5px;
    width: 30px;
    font-size: 1.4em;
    color: #ab8543;
    font-family: Verdana; }
  .page form .button {
    margin-left: -3px;
    display: block;
    clear: both;
    *zoom: 1; }
    .page form .button:before, .page form .button:after {
      content: "";
      display: table; }
    .page form .button:after {
      clear: both; }

.col.user {
  padding-right: 25px !important;
  width: auto; }

.page footer {
  background: #3D3332;
  height: 50px;
  width: 100%;
  margin-top: 50px; }
  .page footer address {
    padding-top: 2.2%; }

.page label.error {
  position: absolute;
  width: 100%;
  margin-top: -73px;
  margin-left: 85px;
  color: #F14837; }

.page div.error {
  width: 450px;
  font-weight: bold;
  margin-bottom: 10px;
  font-size: 1.4em;
  color: #ab8543;
  color: #F14837; }

#auth div.margin {
  margin-bottom: 3px; }

.page a {
  width: 150px;
  position: relative;
  top: 8px;
  display: inline-block; }

.page .button + div {
  display: block;
  clear: both; }

.page header {
  height: 100px;
  background: #403534; }
  .page header figure {
    width: 230px;
    padding-top: 10px; }
    .page header figure img {
      margin-top: -10px; }

.page label {
  display: block; }

.demo-examples {
  background: #C8A973;
  z-index: 200;
  position: absolute;
  top: 0px;
  padding: 3px;
  text-align: center;
  left: calc(100% - 85px);
  height: 18px;
  overflow: hidden;
  cursor: pointer; }
  .demo-examples a, .demo-examples a:link, .demo-examples a:hover, .demo-examples a:visited {
    color: #F8F7F6;
    font-weight: bold;
    text-decoration: none; }

.keyboard-hints {
  background: #C8A973;
  width: 38px;
  z-index: 200;
  position: absolute;
  top: 0px;
  text-align: center;
  left: calc(100% - 145px);
  height: 25px;
  overflow: hidden;
  cursor: pointer; }
  .keyboard-hints img {
    margin-top: 2px;
    width: 28px;
    height: 19px; }

.keyboard-helper {
  display: none; }

.zoom {
  background: #C8A973;
  width: 46px;
  z-index: 200;
  height: 38px;
  overflow: hidden;
  cursor: pointer;
  *zoom: 1;
  position: absolute;
  bottom: 0; }
  .zoom:before, .zoom:after {
    content: "";
    display: table; }
  .zoom:after {
    clear: both; }
  .zoom.in {
    left: 279px; }
    .zoom.in span {
      position: relative;
      bottom: 12px;
      left: 6px;
      color: #F8F7F6;
      font-size: 5em;
      font-family: "adelle",serif; }
  .zoom.out {
    left: 334px; }
    .zoom.out span {
      position: relative;
      bottom: 32px;
      left: 10px;
      color: #F8F7F6;
      font-size: 4.4em;
      font-family: "adelle",serif; }

.button.undo {
  position: relative;
  left: 3px;
  display: none; }
  .button.undo.visible {
    display: block !important; }

.slider {
  background: #6D6262;
  padding: 10px;
  -webkit-border-radius: 0 5px 0 5px 0;
  border-radius: 0 5px 0 5px 0;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */ }
  .slider div[class*="draw-"],
  .slider div[class*="transform-"] {
    margin-left: 5%;
    width: intrinsic;
    *zoom: 1;
    width: 192px; }
    .slider div[class*="draw-"] input, .slider div[class*="draw-"] label,
    .slider div[class*="transform-"] input,
    .slider div[class*="transform-"] label {
      clear: both;
      display: block; }
    .slider div[class*="draw-"] input,
    .slider div[class*="transform-"] input {
      margin-bottom: 10px; }
    .slider div[class*="draw-"]:before, .slider div[class*="draw-"]:after,
    .slider div[class*="transform-"]:before,
    .slider div[class*="transform-"]:after {
      content: "";
      display: table; }
    .slider div[class*="draw-"]:after,
    .slider div[class*="transform-"]:after {
      clear: both; }
  .slider .inside {
    padding: 8px; }
  .slider .button.draw, .slider .button.transform {
    margin-top: 18px; }
  .slider .close-slider {
    right: 2%;
    cursor: pointer;
    color: #F8F7F6;
    font-size: 12px;
    font-family: 'monacoregular',courier;
    position: absolute;
    width: 10px;
    height: 10px; }

a {
  color: #CA9C4E; }

#misc {
  *zoom: 1; }
  #misc:before, #misc:after {
    content: "";
    display: table; }
  #misc:after {
    clear: both; }

#f {
  color: #F8F7F6;
  font-size: 20px;
  font-family: "coquette",fantasy;
  color: #F8F7F6;
  margin-left: 8px; }

.hosted {
  font-family: Verdana;
  color: #CA9C4E;
  font-weight: bold;
  position: relative;
  top: -18px;
  margin-right: 5px;
  margin-left: 15px; }
  .hosted + img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    position: relative;
    top: 15px; }

address {
  color: #CA9C4E;
  font-size: 1em;
  padding: 0 8px; }

input {
  background: #514645;
  padding: 0 10px;
  height: 27px;
  margin-left: 15px;
  width: 75%;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  color: #F8F7F6;
  font-size: 12px;
  font-family: 'monacoregular',courier;
  border: none;
  outline: none; }
  input:active {
    outline: none; }

h2 {
  font-size: 14px;
  padding: 14px 8px;
  clear: both;
  font-weight: normal; }

.button {
  background: #C8A973;
  padding: 10px 18px;
  float: left;
  cursor: pointer;
  margin: 3px 6px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  background-clip: padding-box;
  /* stops bg color from leaking outside the border: */
  color: #F8F7F6;
  color: #F8F7F6;
  font-size: 12.2px;
  font-family: "adelle",serif; }

#elements {
  *zoom: 1; }
  #elements:before, #elements:after {
    content: "";
    display: table; }
  #elements:after {
    clear: both; }
  #elements .col + .col > .button:first-child {
    padding: 10px 12px; }
  #elements .col + .col > .button + .button {
    padding: 10px 14px; }
  #elements .col:first-child + .col .button {
    margin-left: 5px; }
  #elements .col + .col + .col .button {
    margin: 3px 2px 3px 6px; }
  #elements .col:first-child + .col + .col .button {
    padding: 10px 12px;
    margin-right: 1px; }

.col .button:nth-child(n + 2) {
  margin-left: 3px !important; }

.ellipse {
  padding: 10px 16px  !important; }

.segment {
  padding: 10px 10px !important; }

.text {
  position: relative;
  left: 3px;
  padding: 10px 23px !important; }

.line {
  padding: 10px 16px !important;
  margin-left: 6px   !important; }

.point {
  position: relative;
  left: 7px; }

.rotate {
  padding: 10px 20px !important; }

.translate {
  padding: 10px 12px !important; }

.reflect {
  padding: 10px 11px !important; }

.scale {
  padding: 10px 16px !important; }

.shear {
  padding: 10px 13px !important; }

.new {
  padding: 10px 21px; }

.replay {
  padding: 10px 15px; }

#transform {
  *zoom: 1; }
  #transform:before, #transform:after {
    content: "";
    display: table; }
  #transform:after {
    clear: both; }
  #transform .col .button {
    padding: 10px 15px;
    margin: 3px 5px; }

#bottom footer p {
  padding: 15px 8px;
  clear: both;
  text-shadow: 1px 1px 2px rgba(96, 96, 96, 0.35) 2px 5px rgba(0, 0, 0, 0.4);
  word-spacing: 1px;
  width: 95%; }
  #bottom footer p .underline {
    color: #EBE9E8;
    text-decoration: underline; }
    #bottom footer p .underline:hover {
      text-decoration: none; }

#new {
  *zoom: 1;
  margin-bottom: -7px; }
  #new:before, #new:after {
    content: "";
    display: table; }
  #new:after {
    clear: both; }

#bottom {
  border-top: rgba(202, 156, 78, 0.45) 1px dashed;
  width: 95%;
  margin-top: 20px;
  *zoom: 1; }
  #bottom .button {
    padding: 10px 17px; }
  #bottom > .col:first-child {
    margin-top: 15px; }
  #bottom:before, #bottom:after {
    content: "";
    display: table; }
  #bottom:after {
    clear: both; }

.url {
  width: 200px; }

#left-bar {
  padding-left: 8px;
  width: 259px;
  overflow: auto;
  height: 100%;
  float: left;
  background: #3D3332; }
  #left-bar header img {
    width: 195px;
    height: 86px; }
    .paste #left-bar header img {
      width: 140px;
      height: 80px; }
  #left-bar header p {
    width: 93.6%;
    word-spacing: 2px;
    text-shadow: 1px 1px 2px rgba(96, 96, 96, 0.35) 2px 5px rgba(0, 0, 0, 0.4);
    margin: 0 auto; }
  .paste #left-bar {
    width: 160px; }

#auth {
  *zoom: 1;
  margin: 15px 5px;
  width: 95%; }
  #auth:before, #auth:after {
    content: "";
    display: table; }
  #auth:after {
    clear: both; }
  #auth a {
    text-decoration: none; }
    #auth a:hover {
      color: #CA9C4E;
      text-decoration: underline; }
  #auth .col:first-child {
    padding-right: 35px; }

.slider h3 {
  font-size: 1.3em;
  color: #FFBA74;
  font-variant: small-caps;
  font-weight: bold;
  font-family: Verdana, sans-serif;
  margin-bottom: 8px; }

.slider p {
  padding-bottom: 5px;
  border-bottom: rgba(248, 247, 246, 0.3) 1px dashed;
  margin-bottom: 5px; }
  .slider p span:first-child {
    font-weight: bold;
    font-size: 13px;
    margin-right: 25px; }
    .slider p span:first-child + span {
      clear: both;
      margin-left: 10px;
      font-size: 12px;
      display: block; }

.col {
  float: left;
  width: intrinsic;
  *zoom: 1;
  width: -moz-max-content; }
  .col:before, .col:after {
    content: "";
    display: table; }
  .col:after {
    clear: both; }

#grid {
  width: calc(100% - 259px);
  height: 100%; }
  .paste #grid {
    width: calc(100% - 160px); }

@media only screen and (min-width: 768px) and (max-width: 1280px) and (orientation: landscape) {
  #left-bar header p {
    display: none; }
  #auth {
    margin: 6px 5px 15px 5px; }
    #auth .col {
      width: 105px; }
  #bottom > .col:first-child + .col {
    float: none; }
  #bottom > .col:first-child .button {
    width: 105px; }
  #bottom footer p {
    display: none; }
  #bottom footer address {
    margin-top: 10px;
    display: block; } }

@media screen and (max-height: 600px) {
  #left-bar {
    overflow: auto; } }

@media screen and (max-height: 768px) {
  #bottom {
    margin-top: 10px !important; }
    #bottom .button {
      padding: 10px 15px !important; }
    #bottom > .col:first-child {
      margin-top: 10px !important; } }
