@font-face {
    font-family: Sharetech;
    src: url("ShareTechMono-Regular.ttf");
}

body * {
    font-family: Sharetech;
}

body *::selection {
  background: #808080;
  color: white;
}

#toolbar {
    background: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.2));
    height: 64px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
    position: fixed;
    top: 0;
    z-index: 2;
    width: 100%;
}

#toolbar img {
    position: fixed;
    top: 0px;
    right: 0px;
    height: 64px;
    border-top: 5px solid hsl(52, 0%, 65%);
    background: hsla(0, 0%, 40%, 0.1);
    color: hsl(52, 0%, 65%);
    text-shadow: 0px 0px 16px hsl(30, 0%, 46%);    
    cursor: pointer;
}

#toolbar button {
    border: none;
    background: none;
    height: 64px;
    width: 64px;
    color: white;
    cursor: pointer;
    font-size: 12px;
    border-top: 5px solid hsl(52, 0%, 65%);
    background: hsla(0, 0%, 40%, 0.1);
    color: hsl(52, 0%, 65%);
    text-shadow: 0px 0px 16px hsl(30, 0%, 46%);
    z-index: 10; 
  }

#toolbar button:hover, #toolbar img:hover{
    background: rgba(255, 255, 255, 0.2);
}

#info, #zoom {
    position: fixed;
    bottom: 8px;
    z-index: 3;
    font-size: 12px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #808080;
}

#info {
    left: 8px;
    cursor: default;
}

#zoom {
    right: 8px;
    cursor: pointer;
}

#user-input::placeholder {
    /*font-style: italic;*/
    opacity: 0.25;
    font-family: Sharetech;
}

#user-input {
    background: #333;
    border: none;
    border-bottom: 1px solid rgb(116, 116, 116);
    line-height: 32px;
    position: relative;
    top: -6px;
    left: 16px;
    width: calc(100% - 4em - 640px);
    padding: 0 1em 0 1em;
    border-radius: 4px;
    box-shadow: inset 0 5px 5px rgba(0, 0, 0, 0.1);
    color: #fff;
}

.output-topic {
    color: #999;
}

.message {
    color: #c0c0c0;
    font-size: 80%;
}

#cycle {
    width: 80vw;
    height: 100vh;
    position: fixed;
    top: calc(50vh - 40vw + 32px);
    left: 10vw;
    z-index: 4;
    pointer-events: none;
}

#cycle img {
    width: 100%;
}

#import-export {
    width: 60vw;
    height: 60vh;
    position: fixed;
    top: 20vh;
    left: 20vw;
    z-index: 6;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
    background: #eee;
    border-radius: 8px;
    padding: 16px;
    opacity: 1;
    transition: ease-in-out 0.5s;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    cursor: default;
}

#import-export.hidden {
    opacity: 0;
    top: -80vh;
}

#import-export-cancel {
    position: absolute;
    top: 16px;
    right: 16px;
    cursor: pointer;
}

#import-export-save {
    position: absolute;
    top: 16px;
    right: calc(16px + 2em);
    cursor: pointer;
}

#editor {
    width: calc(100% - 34px);
    height: calc(100% - 128px);
    border: 1px solid #ddd;
    position: absolute;
    top: 64px;
    left: 16px;
    resize: none;
    font-size: 12px;
}

#modal-title {
    font-family: Sharetech;
}

#copy, #clean {
    position: absolute;
    right: 16px;
    bottom: calc(1em + 16px);
    font-family: Sharetech;
    cursor: pointer;
    /*border-radius: 2em;
    border: 1px solid #ccc;
    padding: 4px 2em;
    background: linear-gradient(#fff, #ddd);
    box-shadow: 0 2px 2px 2px rgba(0, 0, 0, 0.05);*/
}

label { font-family: Sharetech; cursor: pointer; }
input[type=checkbox] { position: relative; top: 1px;}