
div, span {
    cursor:default;
}
input, textarea {
    cursor:text;
}
textarea.string_input {
    resize: none;
}
textarea.string_input {
    resize: none;
}
select, option, button {
    cursor:pointer;
}
button {
    font-family:"lucida grande",tahoma,verdana,arial,sans-serif;
    font-size:11px;
}
span.feedback {
    color: red;
}

html {
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.inputDiv {
    position: absolute;
    left: 10px;
    right: 20px;
    padding: 5px 10px;
    height: 32px;
}

.contentDiv {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    box-shadow: inset 7px 7px 5px rgba(0, 0, 0, 0.1);
}

.rootDiv {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
}

.commandHistory {
    width: 100%;
    position: absolute;
    display: none;
}

.mainInput {
    width: 100%;
    border: 1px solid black;
}

.mainInput:focus {
    box-shadow: 0 0 5px rgb(100, 200, 255);
    outline: none;
}

.mainInput.error:focus {
    box-shadow: 0 0 5px red;
}

.canvas {
    position:relative;
    height:100%;
    width:100%;
    overflow:auto;
    background: url(media/gridbg.png) top left repeat;
    cursor:crosshair;
}


.canvas_selection {
    stroke: chartreuse;
    stroke-width:0.5;
    stroke-dasharray:5,5;
    fill: chartreuse;
    fill-opacity:0.1;
    cursor:move;
}


.canvas_selection_overlay {
    stroke-width:0.1;
    fill:#0000ff;
    fill-opacity:0.10;
    cursor:crosshair;
}



.clickable {
    cursor:pointer;
}


.code_style {
    display:inline;
    font-family:"andale mono",monospace;
    font-size:11px;
    border-radius: 5px;
}

.container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: auto;
}

.ctrl_point_overlay {
    stroke: purple;
    stroke-width:1;
    fill: coral;
    fill-opacity:0.5;
    cursor:move;
}

.ctrl_point_center_overlay {
    stroke: lime;
    stroke-width:1;
    fill: khaki;
    fill-opacity:0.5;
    cursor:move;
}


.dark_bg {
    opacity:0.85;
    z-index: 100;
    height: 100%;
    width: 100%;
    background: black repeat;
    position:fixed;
    top: 0;
    left: 0;
    cursor:not-allowed;
}


.default_style {
    display:inline;
    font-family:"lucida grande",tahoma,verdana,arial,sans-serif;
    font-size:11px;
    border-radius: 5px;
    padding: 0;
    margin: 0;
}

.center_point {
    top: 50%;
    left: 50%;
    position: absolute;
}

.dialog {
    position:relative;
    min-height: auto;
    max-height: 80%;
    width: 50%;
    padding:0 20px 20px;
    z-index: 30;
    background-color: whitesmoke;
    border:2px solid crimson;
    border-radius: 5px;
    overflow-x:hidden;
    overflow-y:auto;
}

.dialog_title {
    padding: 10px;
    font-style: italic;
    font-weight: bold;
}



.dim_bg {
    opacity:0.30;
    z-index: 20;
    height: 100%;
    width: 100%;
    background: lavender repeat;
    position:fixed;
    top: 0;
    left: 0;
    cursor:not-allowed;
}


.disabled_link {
    pointer-events:none;
    color:grey;
    cursor:not-allowed;
}

.dock {
    position:absolute;
    top:5px;
    left:5px;
    z-index:10;
    overflow: auto;
    width: calc(100% - 20px);
    background-color: rgba(245, 245, 245, 0.7)
}
.disabled_dock {
    opacity:0.5;
    z-index:-1;
}


.droppable {
    background-color: chartreuse !important ;
    border: 1px dashed black !important;
    opacity: 0.5 !important;
}

.dropzone {
    width:200px;
    height:50px;
    background: lightblue no-repeat center center;
    padding:10px;
    border: 1px solid black;
    border-radius:10px;
    opacity:0.75
}


.empty_icon {
    opacity:0;
    cursor:pointer;
}


.enabled_link {
    color:indianred;
    cursor:pointer;
}


.error{
    color:crimson;
}


.fileb_icon {
    padding:5px;
    opacity:0.75;
    display: inline-block;
    text-align: left;
}
.fileb_icon:hover {
    opacity:1;
}
.fileb_icon_selected {
    padding:5px;
    opacity:1;
    display: inline-block;
    text-align: left;
    border-radius:8px;
    background:lightBlue;
}


.fileb_pane {
    padding:3px;
    border:1px solid black;
    border-radius: 5px;
    background-color: white;
    height: 300px;
    overflow:auto;
}


.footer {
    position:absolute;
    bottom:25px;
    right:32px;
}


.geometry_ctrls {
    position:fixed;
    padding:2px;
    background-color: whitesmoke;
    border:2px solid crimson;
    border-radius: 5px;
}

.geometry_ctrl {
    opacity:0.75;
    cursor:pointer;
}
.geometry_ctrl:hover {
    opacity:1;
}


.header {
    position:absolute;
    top:5px;
    right:32px;
    z-index:20;
}


.login {
    position:relative;
    margin: 10% auto;
    width: 300px;
    opacity: 1;
    padding: 10px;
    z-index: 101;
    background-color: snow;
    border: 5px solid dodgerblue;
    border-radius: 10px;
    overflow-x:hidden;
    overflow-y:auto;
}


.progress_bar {
    display: inline-block;
    border: 1px solid black;
    border-radius: 10px;
    height: 10px;
    width: 100px;
    margin: 0 5px;
}

.progress_fill {
    border-radius: 10px;
    background-color: crimson;
    opacity: 0.75;
    height: 10px;
    width: 0;
}


.toolbar_alt {
    line-height:32px;
}

.toolbar {
    padding-top:4px;
    margin:2px;
    background-color: whitesmoke ;
    border-radius: 5px;
    float:left;
}
.toolbar_bm {
    border:2px solid lightblue;
}
.toolbar_mm {
    border:2px solid khaki;
}

.toolbar_space {
    padding-left:4px;
}

.toolbar_button {
    display: inline-block;
    opacity:0.75;
    cursor:pointer;
}
.toolbar_button:hover {
    opacity:1;
}
.toolbar_button:active {
    opacity:0.5;
}




.transformation_preview {
    stroke: crimson;
    stroke-width:0.5;
    stroke-dasharray:5,5;
    fill: lavender;
    fill-opacity:0.1;
    cursor:not-allowed;
}

.unselectable {
    -webkit-user-select:none;
    -moz-user-select: none;
}


form, p, span {
    margin:0 auto;
    padding:0; }

input { font:12px arial; }

a {
    color:#0000FF;
    text-decoration:none; }

a:hover { text-decoration:underline; }

#chat, #loginform {
    display:none;
    margin:0 auto;
    padding-bottom:25px;
    background:#EBF4FB;
    width:504px;
    border:1px solid #ACD8F0; }

#loginform { padding-top:18px; }

#loginform p { margin: 5px; }

#chatbox {
    text-align:left;
    margin: 0 auto 25px;
    padding:10px;
    background:#fff;
    height:270px;
    width:430px;
    border:1px solid #ACD8F0;
    overflow:auto; }

#usermsg {
    width:395px;
    border:1px solid #ACD8F0; }

#submit { width: 60px; }

.error { color: #ff0000; }

#menu { padding:13px 25px 13px 25px; }

.welcome { float:left; }

.logout { float:right; }

.msgln { margin:0 0 2px 0; }