
	.debugger { font: 14px Consolas, monospace; box-sizing: border-box; position: relative; }
	.debugger .hex-edit-control, 
	.debugger .text-edit-control { position: absolute; z-index: 9999; margin: 0; border: 0; outline: 0; padding: 0; background-color: #ffffff; text-align: center; font: 14px Consolas, monospace; box-sizing: border-box; }

	.debugger-row { }
	.debugger-row > .debugger-block { display: inline-block; border: 1px solid #444444; border-left-style: none; border-top-style: none; vertical-align: top; }
	.debugger-row:first > .debugger-block { border-top-style: solid; }
	.debugger-row > .debugger-block:first { border-left-style: solid; }
	.debugger-row > .debugger-block > .header { height: 18px; background-color: #444444; color: #ffffff; text-align: center; }

	.debugger .toolbar { border: none; border-top: 1px solid #444444; height: 18px; }
	.debugger .toolbar-button { display: inline-block; cursor: pointer; width: 18px; height: 18px; background-color: transparent; background-repeat: no-repeat; background-position: center center; border: 0; vertical-align: top; }
	.debugger .toolbar-button:hover { background-color: #aaf7ff; }
	.debugger .toolbar-separator { display: inline-block; width: 1px; height: 18px; margin: 0 4px; background-color: #cccccc; vertical-align: top; }
	.debugger .toolbar-button.-button_break { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path d="M2 2v12h12V2H2zm10.75 10.75h-9.5v-9.5h9.5v9.5z"/></svg>'); }
	.debugger .toolbar-button.-button_run { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M4.25 3l1.166-.624 8 5.333v1.248l-8 5.334-1.166-.624V3zm1.5 1.401v7.864l5.898-3.932L5.75 4.401z"/></svg>'); }
	.debugger .toolbar-button.-button_step-over { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M14.25 5.75v-4h-1.5v2.542c-1.145-1.359-2.911-2.209-4.84-2.209-3.177 0-5.92 2.307-6.16 5.398l-.02.269h1.501l.022-.226c.212-2.195 2.202-3.94 4.656-3.94 1.736 0 3.244.875 4.05 2.166h-2.83v1.5h4.163l.962-.975V5.75h-.004zM8 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"/></svg>'); }
	.debugger .toolbar-button.-button_step-in { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 9.532h.542l3.905-3.905-1.061-1.06-2.637 2.61V1H7.251v6.177l-2.637-2.61-1.061 1.06 3.905 3.905H8zm1.956 3.481a2 2 0 1 1-4 0 2 2 0 0 1 4 0z"/></svg>'); }
	.debugger .toolbar-button.-button_run-until-cursor { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000" transform="rotate(270)"><g id="SVGRepo_bgCarrier" stroke-width="0"/><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"/><g id="SVGRepo_iconCarrier"><path fill-rule="evenodd" clip-rule="evenodd" d="M8 9.532h.542l3.905-3.905-1.061-1.06-2.637 2.61V1H7.251v6.177l-2.637-2.61-1.061 1.06 3.905 3.905H8zm1.956 3.481a2 2 0 1 1-4 0 2 2 0 0 1 4 0z"/></g></svg>'); }
	.debugger .toolbar-button.-button_run-until-address { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" fill="%23000000" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path transform="rotate(-90,8,8.0065)" d="m8 9.532h0.542l3.905-3.905-1.061-1.06-2.637 2.61v-6.177h-1.498v6.177l-2.637-2.61-1.061 1.06 3.905 3.905z" clip-rule="evenodd" fill-rule="evenodd"/><path d="m11.262 13.532h-2.247v1.498h5.992v-1.498h-2.247v-11.05h2.247v-1.498h-5.992v1.498h2.247z" fill="%23000" stroke-width=".02"/></svg>'); }
	.debugger .toolbar-button.-button_toggle-bp-at-cursor { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path d="M8 4c.367 0 .721.048 1.063.145a3.943 3.943 0 0 1 1.762 1.031 3.944 3.944 0 0 1 1.03 1.762c.097.34.145.695.145 1.062 0 .367-.048.721-.145 1.063a3.94 3.94 0 0 1-1.03 1.765 4.017 4.017 0 0 1-1.762 1.031C8.72 11.953 8.367 12 8 12s-.721-.047-1.063-.14a4.056 4.056 0 0 1-1.765-1.032A4.055 4.055 0 0 1 4.14 9.062 3.992 3.992 0 0 1 4 8c0-.367.047-.721.14-1.063a4.02 4.02 0 0 1 .407-.953A4.089 4.089 0 0 1 5.98 4.546a3.94 3.94 0 0 1 .957-.401A3.89 3.89 0 0 1 8 4z"/></svg>'); }
	.debugger .toolbar-button.-button_toggle-bp-at-address { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" fill="%23000000" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="m4.9835 4c0.367 0 0.721 0.048 1.063 0.145a3.943 3.943 0 0 1 1.762 1.031 3.944 3.944 0 0 1 1.03 1.762c0.097 0.34 0.145 0.695 0.145 1.062s-0.048 0.721-0.145 1.063a3.94 3.94 0 0 1-1.03 1.765 4.017 4.017 0 0 1-1.762 1.031c-0.343 0.094-0.696 0.141-1.063 0.141s-0.721-0.047-1.063-0.14a4.056 4.056 0 0 1-1.765-1.032 4.055 4.055 0 0 1-1.032-1.766 3.992 3.992 0 0 1-0.14-1.062c0-0.367 0.047-0.721 0.14-1.063a4.02 4.02 0 0 1 0.407-0.953 4.089 4.089 0 0 1 1.433-1.438 3.94 3.94 0 0 1 0.957-0.401 3.89 3.89 0 0 1 1.063-0.145z"/><path d="m11.262 13.532h-2.247v1.498h5.992v-1.498h-2.247v-11.05h2.247v-1.498h-5.992v1.498h2.247z" fill="%23000" stroke-width=".02"/></svg>'); }
	.debugger .toolbar-button.-button_prev-page { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" fill="%23000000" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="m7.32 7.976 4.357 4.357-0.618 0.62-4.667-4.669v-0.618l4.667-4.666 0.618 0.619z" clip-rule="evenodd" fill-rule="evenodd"/><path d="m4.536 7.976 4.357 4.357-0.618 0.62-4.667-4.669v-0.618l4.667-4.666 0.618 0.619z" clip-rule="evenodd" fill-rule="evenodd"/></svg>'); }
	.debugger .toolbar-button.-button_prev { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M5.928 7.976l4.357 4.357-.618.62L5 8.284v-.618L9.667 3l.618.619-4.357 4.357z"/></svg>'); }
	.debugger .toolbar-button.-button_next { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.072 8.024L5.715 3.667l.618-.62L11 7.716v.618L6.333 13l-.618-.619 4.357-4.357z"/></svg>'); }
	.debugger .toolbar-button.-button_next-page { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" fill="%23000000" version="1.1" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="m8.68 8.024-4.357-4.357 0.618-0.62 4.667 4.669v0.618l-4.667 4.666-0.618-0.619z" clip-rule="evenodd" fill-rule="evenodd"/><path d="m11.464 8.024-4.357-4.357 0.618-0.62 4.667 4.669v0.618l-4.667 4.666-0.618-0.619z" clip-rule="evenodd" fill-rule="evenodd"/></svg>'); }
	.debugger .toolbar-button.-button_load { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path d="M1.5 14h11l.48-.37 2.63-7-.48-.63H14V3.5l-.5-.5H7.71l-.86-.85L6.5 2h-5l-.5.5v11l.5.5zM2 3h4.29l.86.85.35.15H13v2H8.5l-.35.15-.86.85H3.5l-.47.34-1 3.08L2 3zm10.13 10H2.19l1.67-5H7.5l.35-.15.86-.85h5.79l-2.37 6z"/></svg>');}
	.debugger .toolbar-button.-button_save { background-image: url('data:image/svg+xml,<svg width="16px" height="16px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="%23000000"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.353 1.146l1.5 1.5L15 3v11.5l-.5.5h-13l-.5-.5v-13l.5-.5H13l.353.146zM2 2v12h12V3.208L12.793 2H11v4H4V2H2zm6 0v3h2V2H8z"/></svg>');}

	.regs { cursor: default; }
	.regs .registers-table { border-collapse: collapse; }
	.regs .registers-table th, 
	.regs .registers-table td { padding: 0.05em 0.5em;  }
	.regs .registers-table th { background-color: #444444; color: #ffffff; font-weight: normal; }
	.regs .registers-table td { background-color: #eeeeee; padding-right: 0.75em; }
	.regs .registers-table td.-no-padding { padding: 0; }
	.regs .registers-table .-modified { background-color: #ffcccc; }
	.regs .registers-inner-table { width: 100%; border-collapse: collapse; }
	.regs .registers-inner-table td { padding-right: 0.5em; }

	.ports { cursor: default; }
	.ports .port-list { border-collapse: collapse; }
	.ports .port-item > * { padding: 0.05em 0.5em; }
	.ports .port-item > th { background-color: #444444; color: #ffffff; font-weight: normal; }
	.ports .port-item > td { padding-right: 0.75em; }
	.ports .filler > td { padding: 0.05em 0.5em; }

	.dasm { width: 300px; }
	.dasm .dasm-line { white-space: nowrap; cursor: default; }
	.dasm .dasm-line > * { padding: 0.05em 0.5em; display: inline-block; }
	.dasm .dasm-line > .addr { background-color: #444444; color: #ffffff;  }
	.dasm .dasm-line > .bytes { width: 80px; }
	.dasm .dasm-line > .mnemonics { padding-left: 1em; }
	.dasm .dasm-line.-pointer > .mnemonics { background: transparent url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA8UlEQVQokXWSMU4DQQxFny0qjkCFEDRUEeIC2TZlityDA+wqe5sUlGl3b4CookgglIpjzKeYHZidHb40xdj+/t+WIcJJGLpr6vCszn2RNl4Y2ucKMUzPgeBZMEJ6wOzA2K3+UQ25xUzZAN0BR8busWKzatUxRbJ0gzgytE812yUxIAMpKd8CB4Z2lY3jucVACVPkwj1mr5Pt37raVov/FJD+XFWJ0lScHp9IW5r+lJc55cZs1v2CtKPp34r2flXM52CJ/I3ZhqY/ZyLpACqK0e4XZhvW+/OycbwgLxIB+MBsx3r/XsnNtj9XG9vakS8u7AfXLUyfEUTHWAAAAABJRU5ErkJggg==") no-repeat left center; }
	.dasm .dasm-line.-break-point > .mnemonics { background: transparent url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABw0lEQVQokV2SP08bQRDFf299RiGyqLBBQXcySJaBhi8RWZbo+Ap8CMqkT5UiSpU2HV16BAjJckfhdEG44GJsgSLb8r87blLcnXEy0mpnd2bfm5l9IjUHJJlPAk68mlZiee5qHGs0NqnXTwyOiaI9SUObTlvqds+5uGgbJC4DUY5gp6dVfP+L+X5TZi6lEsQxhGHIzc0Hu739rsFgJkg8ILFGY9MODr6ys9PU4yMGSMIACgUUBO8w+8x0+sxg8ANYOMDZ0dEJ29sNskdIICHnEGCzGba19Va7u2cEQdXAOQM0mRwrilyejHOYhGX78t73961UOgQ8D8DieE9xnJaXJf6/TIJicQOpYrDmZQMd5ixaZQHMuVcfFopjLJsoms9bJElajoRyFudQdjbn0NNTj/E4FCROkNDtnvPwELK+vuxLKwBIaDTCOp0r6/fvgEUB4OP9/W8rFv+oXH5PpVKUWfolOchoBNfXLV1efmI+/yWYKpcY5fIb6vWmarUzarV9S5INvbws6Pd7dDpX1m5/02Ty0+DZQbyUnKX9egRB1UqlQ0kV4hjG45B+/86iqAcMler0X62uCNwzWFsR+CIT9lLsfwFyZMUjvdOb3QAAAABJRU5ErkJggg==") no-repeat left center; }
	.dasm .dasm-line.-pointer.-break-point > .mnemonics { background: transparent url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAB3RJTUUH5wsCDQM1bwp8swAAAitJREFUKM9Nkj9oU2EUxX/3e++lTVILbWoM0rRNURCcKi5VQbBSKE5uCm4F0clF1KEQiji0uDgUl3YSxEVEutvWLLFDHWqKgq0tNWkMbZAk5N/78j6H/DEH7nLvPRfOuQeasGnjUzzggTJd1Zqo7pKupmemp4eW7l9entmtDsR+lQdFpGAqlaQcHLxnbW3TgNe64tkd0uzsGNHoUn9PYGbhUk2enz1PuO5DtL7C6OgdLCt+vLX1zuTzZQEswJSmpsLO5OQysdjMtsrLXKBOJlDhet7gdwVCoVP099/sKRS21eHhz3kwClC9ExO3iUSmTTYLYgDhrdXg2WiJnF9jqlVMOBywxsefMDIyZmiKR5XLt8R1lSgFRsA0ySuOZn64QC7ooSwLotELOhi8CNhNrY1GDK0REZCWX2JA4LWjmRv+y7HfA8fpF6XCBnxtqwsohekmtiECSPMo1C2tTfsNSK2WxPMQpQDTWQbhoWvzIhti0PUhJydZSqWMgKcE0Pv7H0inM/j9TZIxAMxqm/ifEGdqPqRYxKRSn00ut7cD2gY8e309aRwnjuO8IhIIIBXuasXC0WkGahaUiphEIimbmytF181lwLMAdRVkvFjcaeTz375MDN6I2Hbv4g9Lho5KdbW7myaRWG1sbLyslsvfg5A/B7oTOdPK7IPVp4v3Uunf1958LaA1lEoZcrk947pZoCDgCXgdg9p49PFxnwGfB30e9BkIpMBn/gccgH8BS+jjLMdqIQAAAABJRU5ErkJggg==") no-repeat left center; }
	.dasm .dasm-line.-cursor { background-color: #dfdfdf; }
	.dasm .dasm-line.-cursor > .addr { background-color: #7f7f7f; }
	.-focused .dasm .dasm-line.-cursor { background-color: #aaf7ff; }

	.watch { overflow-x: auto; }
	.watch .watch-list { border: 0; border-collapse: collapse; }
	.watch .watch-line { white-space: nowrap; cursor: default; }
	.watch .watch-line > * { padding: 0.05em 0.5em; }
	.watch .watch-line > .formula { background-color: #444444; color: #ffffff; width: 80px; text-align: right; }
	.watch .watch-line > .addr { background-color: #444444; color: #ffffff; }
	.watch .watch-line > .format { font-style: italic; }
	.watch .watch-line > .data { white-space: nowrap; padding-left: 0; padding-right: 0; }
	.watch .watch-line > .data > .mem-value { padding: 0 0.25em; margin: 0; }
	.watch .watch-line > .data > .mem-value.-modified { background-color: #ffcccc; }
	.watch .watch-line > .symbols { }
	.watch .watch-line.-cursor > * { background-color: #dfdfdf; }
	.watch .watch-line.-cursor > .formula,
	.watch .watch-line.-cursor > .addr { background-color: #7f7f7f; }
	.-focused .watch .watch-line.-cursor > * { background-color: #aaf7ff; }
	.-focused .watch .watch-line.-cursor > .formula,
	.-focused .watch .watch-line.-cursor > .addr { background-color: #7f7f7f; }

	.dump { cursor: default; }
	.dump .dump-data { border: 0; border-collapse: collapse; }
	.dump .dump-row > * { padding: 0.05em 0.5em; }
	.dump .dump-row > .addr { background-color: #444444; color: #ffffff; }
	.dump .dump-row > .data { white-space: nowrap; padding-left: 0; padding-right: 0; }
	.dump .dump-row > .data > .mem-value { padding: 0 0.25em; margin: 0; }
	.dump .dump-row > .data > .mem-value.-modified { background-color: #ffcccc; }
	.dump .dump-row > .symbols { }



	.drive-box {
		box-sizing: border-box;
		display: block;
		width: 100%;
		border: 1px solid #cccccc;
		height: 24px;
		line-height: 24px;
		position: relative;
		margin: 10px 0;
	}

	.drive-box .letter {
		width: 20px;
		text-align: center;
		display: inline-block;
		vertical-align: middle;
	}

	.drive-box .action-button {
		display: block;
		height: 24px;
		line-height: 24px;
		cursor: pointer;
		white-space: nowrap;
		border: 1px solid #75a9f9;
		border-radius: 3px;
		font-family: Arial;
		background: #e0e0e0 url('../img/dropdown.png') no-repeat right center;
		overflow: hidden;
	}

	.drive-box .title {
		overflow: hidden;
		white-space: nowrap;
		display: inline-block;
		vertical-align: middle;
	}

	.drive-box .status {
		display: inline-block;
		width: 16px;
		height: 24px;
		background-color: transparent;
		background-position: center center;
		background-repeat: no-repeat;
		vertical-align: top;
		color: black;
		border-top: 1px solid transparent;
		border-bottom: 1px solid transparent;
		font: 14px/22px Arial;
		text-align: center;
	}
	.drive-box .status.-motor {
		color: #7FFF7F;
	}
	.drive-box .status.-motor.-head_0 {
		border-top-color: #7FFF7F;
	}
	.drive-box .status.-motor.-head_1 {
		border-bottom-color: #7FFF7F;
	}
	.drive-box .status.error {
		display: inline-block;
		background-image: url('../img/error.png');
		color: transparent;
	}
	.drive-box .status.loading {
		display: inline-block;
		background-image: url('../img/process.gif');
		color: transparent;
	}

	.drive-box .action-list {
		list-style-type: none;
		margin: 0;
		padding: 0;
		z-index: 1000;
		display: none;
		position: absolute;
		background-color: #ffffff;
		border: 1px solid #a8a8a8;
		top: 1.5em;
		right: 0;
		
	}

	.drive-box .action-list li {
		padding: 0;
		margin: 0;
	}	

	.drive-box .action-list a {
		cursor: pointer;
		padding: 2px 5px;
		display: block;
	}

	.drive-box .action-list a:hover {
		background-color: #0088ff;
		color: #ffffff;
	}



	.settings-dialog__menu {
		float: left;
		width: 120px;
		height: 100%;
	}
	.settings-dialog__workspace {
		margin-left: 120px;
		overflow-x: hidden;
		overflow-y: auto;
	}

	.settings-dialog .settings { padding: 0 0.5em; }
	.settings-dialog .settings-menu { border-right: 2px solid #3D8AF7; }
	.settings-dialog .settings-menu__section { display: block; cursor: pointer; padding: 0.2em 0.5em; }
	.settings-dialog .settings-menu__section.-active { background-color: #3D8AF7; color: #FFFFFF; }
	.settings-dialog .settings-section { display: none; padding: 0.5em; }
	.settings-dialog .settings-section.-active { display: block; }

	.settings-dialog table {
		width: 100%;
	}

	.settings-dialog tr th {
		text-align: left;
		font-weight: normal;
		width: 300px;
	}

	.settings-dialog input[type=text] {
		width: 80px;
		text-align: center;
	}

	.settings-dialog .ui-slider-handle {
		width: 2.5em;
		height: 1.6em;
		line-height: 1.6em;
		margin-top: -0.8em;
		top: 50%;
		text-align: center;
	}

	.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset .reset-settings-button {
		position: absolute;
		left: 15px;
	}

	.settings-dialog .gamepads { border-collapse: collapse; }
	.settings-dialog .gamepads th, .settings-dialog .gamepads td { padding: 0.2em 0.5em; width: initial; border: 1px solid #f0f0f0; }
	.settings-dialog .gamepads th { background-color: #f0f0f0; }
	.settings-dialog .gamepads td:last-child { border-left: none }
	.settings-dialog .gamepads .-connected::after {
		content: '(connected)';
		font-size: 0.7em;
		color: green;
		display: inline;
	}


	.ui-dialog .create-image-dialog { padding: 0.5em; }
	.create-image-dialog .title { text-align: right; }


.ui-dialog .save-image-dialog { padding: 0.5em; }


	.server-browser .filter {
		float: left;
		width: 200px;
		overflow: hidden;
	}

	.server-browser ul.tags {
		list-style-type: none;
		margin: 0;
		padding: 0;

	}

	.server-browser ul.tags li {
		margin: 0;
		padding: 0;
	}

	.server-browser ul.files {
		list-style-type: none;
		margin: 0;
		padding: 0;
		overflow: auto;
	}

	.server-browser ul.files li {
		margin: 0;
		padding: 0;
	}

	.server-browser ul.files li a {
		cursor: pointer;
		padding: 2px 5px;
		display: block;
	}

	.server-browser ul.files li a:hover {
		background-color: #0088ff;
		color: #ffffff;
	}

	.ui-dialog .server-browser {
		border-radius: 0 0 10px 10px;
		-moz-border-radius: 0 0 10px 10px;
		-webkit-border-radius: 0 0 10px 10px;
		padding: 0.5em;
	}


	.virtual-keyboard {
		border: 1px solid #a0a0a0;
		border-radius: 5px;
		display: inline-block;
		background-color: #c0c0c0;
		font: 1em Verdana;
		box-shadow: 1px 1px #a0a0a0;
	}

	.virtual-keyboard .keyline {
		margin: 0.4em 0;
	}

	.virtual-keyboard .keyplace {
		display: inline-block;
		color: #404040;
		width: 4em;
	}

	.virtual-keyboard .keyplace .sup {
		text-align: center;
		text-transform: uppercase;
		color: #408040;
		font-size: 0.6em;
		min-height: 1em;
	}

	.virtual-keyboard .keyplace .inf {
		text-align: center;
		color: #804040;
		font-size: 0.6em;
		min-height: 1em;
	}

	.virtual-keyboard .keyplace .key {
		display: block;
		position: relative;
		width: 2.7em;
		height: 2.2em;
		margin: auto;

		border: 1px solid #a0a0a0;
		border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		background-color: #e8e8e8;
		box-shadow: 1px 1px #a0a0a0;

		cursor: pointer;
	}

	.virtual-keyboard .pressed .key {
		box-shadow: inset 1px 1px #a0a0a0;
		background-color: #3c85ff;
	}

	.virtual-keyboard .keyplace .main {
		position: absolute;
		padding-left: 3px;
		font-weight: bold;
		font-size: 0.8em;
	}

	.virtual-keyboard .keyplace .ss {
		color: #804040;
		padding-right: 3px;
		text-align: right;
		font-size: 0.52em;
		line-height: 2.4em;
	}

	.virtual-keyboard .keyplace .ext {
		font-size: 0.52em;
		text-align: center;
		line-height: 1.6em;
	}

	.virtual-keyboard .symbol-shift-keyplace .main {
		color: #804040;
	}

	.virtual-keyboard .edit-keyplace .sup {
		font-weight: bold;
	}



	.virtual-mouse {
		border: 1px solid #a0a0a0;
		border-top-left-radius: 15px;
		border-top-right-radius: 15px;
		border-bottom-left-radius: 45px;
		border-bottom-right-radius: 45px;

		display: inline-block;
		width: 140px;
		text-align: center;
		padding: 5px;
	}

	.virtual-mouse .button {
		display: inline-block;
		width: 40px;
		height: 50px;

		cursor: pointer;
		background-color: #e0e0e0;

		border: 1px solid #a0a0a0;
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
		
	}

	.virtual-mouse .pressed {
		background-color: #3c85ff;
		box-shadow: inset 1px 1px #a0a0a0;
	}

	.virtual-mouse .move-area {
		display: inline-block;
		cursor: move;
		background-repeat: no-repeat;
		background-position: center center;
		width: 130px;
		height: 130px;
		position: relative;
	}

	.virtual-mouse .move-area canvas {
		position: absolute;
		top: 25px;
		left: 25px;
	}

	.virtual-mouse .moving {
		/* background-image: url('../img/mouse_arrows.png') */
	}




    .zip-browser { }
    .zip-browser > .zip-entries { list-style-type: none; margin: 0; padding: 0; }
    .zip-browser > .zip-entries > .zip-file { margin: 0; padding: 0; }
    .zip-browser > .zip-entries > .zip-file > a { display: block; padding: 2px 5px; cursor: pointer; }
    .zip-browser > .zip-entries > .zip-file > a:hover { background-color: #0088ff; color: #ffffff; }
    .ui-dialog .zip-browser {
		border-radius: 0 0 10px 10px;
		-moz-border-radius: 0 0 10px 10px;
		-webkit-border-radius: 0 0 10px 10px;
		padding: 0.5em;
	}


    .tape-recorder-box { display: block; width: 268px; position: relative; font-family: Arial; line-height: 24px; }
    .tape-recorder-box .action-button { display: inline-block; height: 24px;  padding: 3px 5px; white-space: nowrap; cursor: pointer; border: 1px solid #75a9f9; border-radius: 3px; }
    .tape-recorder-box .action-button:hover { background-color: #0C59CF; color: #FFFFFF; }
    .tape-recorder-box .control-button { display: inline-block; height: 24px; width: 24px; cursor: pointer; padding: 0; margin: 0; border: 0; background: transparent none no-repeat center center; }
    .tape-recorder-box .control-button.-command_play { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAARUlEQVQ4y2NgoAnYz/CfWKVMlBrCRKlLmCj1DhOlYcJEacAyURo7pBngyMBIvgFYNBNvAA7NxBmARzNhAwhopkpeGHgAAKVwD1HNZQOGAAAAAElFTkSuQmCC"); }
    .tape-recorder-box .control-button.-command_pause { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAKklEQVQ4y2NgoBAwMjAwMOzfz/AfXcLRESJHSJ6JUheMGjBqwDAxYOABAHx9BhosN+FDAAAAAElFTkSuQmCC"); }
    .tape-recorder-box .control-button.-command_resume { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAATUlEQVQ4y2NgoBrYz/AfjpHFCAAmogymyAAChjCR5EWKDMBhCBNZgU2RAWiGkGeAIwMj+QYgaSbdADTNpBmARTPxBuDQTJwBeDQPDgAA0vwTEbh4/RkAAAAASUVORK5CYII="); }
    .tape-recorder-box .control-button.-command_stop { background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAJ0lEQVQ4y2NgoBAwMjAwMOxnYPhPqkZHqF4mSl0wasCoAcPEgIEHAL+sAhqHb3dyAAAAAElFTkSuQmCC"); }
	.tape-recorder-box .icon { display: inline-block; width: 24px; height: 24px; background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAC4jAAAuIwF4pT92AAAA1ElEQVRIx+1Uuw3CMBQ8RwySzMDr3JrSG1CwScgmFGzgEo/wSgbwJqEIz5IdQyiMIkW5yp/nO72z3gE7Ng8lC2PMWJPYe6+igJD786MKubmfokgTFSuR51zNv//gMDu5TN/CzAAAIkqu+75P9tZaAIBzDgAwdNfkvtgBM4OIFBEpERKEEBJyqROhHCtY9LaFmceSRW3bxrVzLtaJRcsCt2kc6JnuBUNWPkhdd1zZIhmO2kg60FpDa/1x7JfOSu+bX/KklFMxXgpCs7CrHXTfutyxQbwAzaVKzbSgGCYAAAAASUVORK5CYII=") no-repeat 0 1px; position: relative; top: -2px; vertical-align: top; }
	.tape-recorder-box .title { display: inline-block; height: 24px; width: 162px; overflow: hidden; padding: 0 3px; font-size: 14px; vertical-align: top; }
	.tape-recorder-box .status { display: inline-block; width: 16px; height: 24px; background-color: transparent; background-position: center center; background-repeat: no-repeat; vertical-align: top; border-top: 1px solid transparent; border-bottom: 1px solid transparent; }
	.tape-recorder-box .status.error { background-image: url('../images/error.png'); }
	.tape-recorder-box .status.loading { background-image: url('../images/process.gif'); }
    .tape-recorder-box .control { display: inline-block; width: 48px; height: 24px; text-align: right; }
	.tape-recorder-box .action-list { list-style-type: none; margin: 0; padding: 0; z-index: 1000; display: none; position: absolute; background-color: #ffffff; border: 1px solid #a8a8a8; bottom: 24px; right: 0; }
    .tape-recorder-box .action-list.-visible { display: block; }
	.tape-recorder-box .action-list li { padding: 0; margin: 0; }	
	.tape-recorder-box .action-list a { cursor: pointer; padding: 2px 5px; display: block; }
	.tape-recorder-box .action-list a:hover { background-color: #0088ff; color: #ffffff; }


    .tape-info-dialog { }
    .tape-info-dialog > .tape-info { padding: 1em; }
    .tape-info-dialog .tape-prop { font: 14px Verdana; }
    .tape-info-dialog .tape-prop > .prop-header { font-weight: bold; }
    .tape-info-dialog .tape-prop > .prop-header:after { display: inline; content: ': '; }
    .tape-info-dialog .tape-prop > .prop-data { }
    .tape-info-dialog .block-table { border: 1px solid #444444; border-collapse: collapse; }
    .tape-info-dialog .block-table .header-row { text-align: left; vertical-align: top; }
    .tape-info-dialog .block-table .header-row > th { border-bottom: 1px solid #444444; border-left: 1px solid #444444; background-color: #444444; color: #f7f7f7; padding: 0.2em 0.5em; }
    .tape-info-dialog .block-table .header-row > .block-size { text-align: right; }
    .tape-info-dialog .block-table .data-row > td { text-align: left; vertical-align: top; border-left: 1px solid #444444; border-bottom: 1px solid #dfdfdf; padding: 0.2em 0.5em; }
    .tape-info-dialog .block-table .data-row:nth-child(2n) > td { background-color: #f7f7f7; }
    .tape-info-dialog .block-table .data-row:last-child > td { border-bottom: 0; }
    .tape-info-dialog .block-table .data-row > .block-index { text-align: center; }
    .tape-info-dialog .block-table .data-row > .block-index:hover { background-color: #a0ffa0; cursor: pointer; }
    .tape-info-dialog .block-table .data-row.-current > .block-index { background-color: #00bf00; }
    .tape-info-dialog .block-table .data-row > .block-id { white-space: nowrap; }
    .tape-info-dialog .block-table .data-row > .block-size { text-align: right; }
    .tape-info-dialog .block-table .data-row > .block-info { padding: 0; }
    .tape-info-dialog .block-prop-table { border-collapse: collapse; }
    .tape-info-dialog .block-prop-table .block-prop-row > th { padding: 0.2em 0.5em; width: 150px; font-weight: normal; border-bottom: 1px solid #dfdfdf; background-color: #f0f0f0; }
    .tape-info-dialog .block-prop-table .block-prop-row > th > .block-prop-header { }
    .tape-info-dialog .block-prop-table .block-prop-row > th > .block-prop-header:after { display: inline; content: ': '; }
    .tape-info-dialog .block-prop-table .block-prop-row > td { padding: 0.2em 0.5em; border-bottom: 1px solid #f0f0f0; }
    .tape-info-dialog .block-prop-table .block-prop-row:last-child > * { border-bottom: 0; }
    .tape-info-dialog .hardware-table { border-collapse: collapse; border: 1px solid #dfdfdf; }
    .tape-info-dialog .hardware-table .header-row > th { background: #cccccc; border-left: 1px solid #cccccc; border-bottom: 1px solid #cccccc; color: #444444; font-weight: normal; }
    .tape-info-dialog .hardware-table .data-row > td { border-left: 1px solid #dfdfdf; }


    .tape-menu-dialog { font: 14px Verdana; }
    .tape-menu-dialog > .tape-menu { padding: 1em; }
    .tape-menu-dialog .menu-table { border: 1px solid #444444; border-collapse: collapse; }
    .tape-menu-dialog .menu-header > th { text-align: center; vertical-align: top; border-bottom: 1px solid #444444; border-left: 1px solid #444444; background-color: #444444; color: #f7f7f7; padding: 0.2em 0.5em; }
    .tape-menu-dialog .menu-header > th.col-description { text-align: left; }
    .tape-menu-dialog .menu-row > td { text-align: center; vertical-align: top; border-left: 1px solid #444444; border-bottom: 1px solid #dfdfdf; padding: 0.2em 0.5em; cursor: pointer; }
    .tape-menu-dialog .menu-row > td.col-description { text-align: left; }
    .tape-menu-dialog .menu-row:nth-child(2n) > td { background-color: #f7f7f7; }
    .tape-menu-dialog .menu-row:last-child > td { border-bottom: 0; }
    .tape-menu-dialog .menu-row:hover > td { background-color: #a0ffa0; }
    .tape-menu-dialog .menu-row.-selected > td { background-color: #00bf00; }


    .tape-message-dialog { font: 14px Verdana; }
    .tape-message-dialog > .tape-message { padding: 1em; white-space: pre; }


	body {
		width: 100%;
		margin: 8px 0;
	}

	.clear {
		clear: both;
	}

	#main_container {
		margin: 0 auto;
	}

	#left_field,
	#right_field {
		width: 250px;
	}

	#left_field,
	#right_field,
	#center_field {
		float: left;
	}

	#commands {
		margin: 200px 0 10px 0;
	}
	#commands a {
		margin: 0;
	}
	#display {
		position: relative;
		border: 1px solid #a0a0a0;
		border-radius: 5px;
		box-shadow: 1px 1px #a0a0a0;
		width: 576px;
		height: 468px;
		margin: 0 auto;
	}

    #display > .canvas-wrapper {
        margin: 0;
        position: relative;
    }

    #display > .performance {
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		height: 20px;
        color: #000000;
        padding: 0 1em;
        text-align: right;
        font: 10px/20px Verdana;
    }

	#display .error-message {
		text-align: center;
		color: #ff0000;
		padding: 2em;
	}

    #display.-fullscreen {
        display: block;
        background-color: #000000;
        padding: 0;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }
    #display.-fullscreen > .canvas-wrapper {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 20px;
        right: 0;
        margin: auto;
    }
    #display.-fullscreen .performance {
        background-color: #000000;
        color: #ffffff;
    }

	#vkeyb {
		margin: 5px auto;
		text-align: center;
	}
	#vmouse {
		margin: 200px 10px 10px 10px;
		text-align: center;
	}

	#debug {
		display: none;
		width: 970px;
	}

    #errors {
        display: block;
        position: fixed;
        right: 0;
        bottom: 38px;
        width: 23px;
        height: 150px;
        border: 3px solid #cccccc;
        background-color: white;
        overflow: hidden;
        border-radius: 20px 0 0 20px;
    }

    #errors > .expander {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        width: 20px;
        background-color: #cccccc;
        border-right: 3px solid #cccccc;
        -ms-writing-mode: tb-rl;
        writing-mode: tb;
        text-orientation: upright;
        text-align: center;
        color: #444444;
        cursor: pointer;
        font-size: 0.9em;
    }

    #errors > #errorList {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 343px;
        overflow-y: scroll;
        display: none;
        padding: 2px;
    }

    #errors.-expanded { width: 370px; }
    #errors.-expanded > #errorList { display: block; }
    #errorList > .error { font-size: 0.8em; color: red; margin-bottom: 1em; }
    #errorList > .error > .timestamp { display: inline-block; margin-right: 0.5em; }

