:root {
  --body-height: 100px;
  --body-margin: 8px;
  --border-radius: 4px;
  --button-border-radius: 1px;

  --toolbar-width: 380px;
  --toolbar-height: 32px;
  --line-height-toolbar-text: 30px;

  --palette-width: 200px;			/*originally 100 for 5-tile rows*/
  --palette-cell-width: 20px;
  --palette-cell-height: 20px;
  --palette-margin-right: 10px;
  
  --tooltiptext-background-color: #ffffc9;
  --canvas-width: 320px;
  --canvas-cell-width: 16px;
  --body-background-color: #161619;
  --blanket-background-color: #2a2a2a;
  --toolbar-background-color: #777;

  --shadow: 2px 2px 8px #224;
}

.no-select {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
     -khtml-user-select: none; /* Konqueror HTML */
       -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none; /* Chrome, Opera and Firefox */
}

body {
	/*position: fixed;*/
	/*transform: translate(-50%, 0);*/
	left: 0%;
	/*color: #efefef;*/
	background: linear-gradient(to bottom, #1F2223 0px, #040405 1000px);
	/*background-color: var(--body-background-color);*/
	white-space:nowrap;
	padding-bottom:500px;
	width: fit-content;
	overflow: auto;
	/*height: var(--body-height);*/
	height: 100%;
	min-height: 100%;
	margin: var(--body-margin);
	font-family: 'Open Sans', sans-serif;
	font-weight: 100;
	pointer-events: fill;
}

.hotkeyText {
	color: blue;
}

#blanket-around-body {
	/*position: absolute;*/
	left: 0%;
	top: 0%;
	background-color: var(--body-background-color:);
	width: 500px;
	height: 100%;
	padding-bottom:300px;
}

#selection-explanation-text {
	position: fixed;
	padding-left: 4px;
	left: 0%;
	top: 99%;
	color: #7c7c7c;
	z-index: 100;
}

#selection-explanation-text b {
	color: var(--tooltiptext-background-color);
}

#selection-explanation-text span {
	color: black;
	background-color: grey;
	padding-left: 2px;
	padding-right: 2px;
	font-family: Menlo;
}

#selection-explanation-text img {
	display: inline;
	width: 16px;
	height: 16px;
	transform: translate(0, 2px);
	margin: 0;
	padding: 0;
}

.imgInSelectionExplanation {
	display: inline;
	width: 16px;
	height: 16px;
	transform: translate(0, 2px);
	margin: 0;
	padding: 0;
}

.highlightedText {
	color: blue;
}

#popup-message {
	position: relative;
	float: left;
	margin-right: 10px;
	color: #000010;
	top: 1px;
	font-size: 14px;
	border: 1px solid black;
	border-radius: var(--border-radius);
	background-color: var(--tooltiptext-background-color);
	padding-left: 4px;
	padding-right: 4px;
	padding-top: 4px;
	padding-bottom: 4px;
}

.fadeOutAnimation {
	animation: fadeOut 3s;
	animation-fill-mode: forwards;
	animation-play-state: paused;
}

@keyframes fadeOut 
{
	0%   {opacity: 0; transform: translate(0, -10px);}
	2% {opacity: 1; transform: none;}
	80%  {opacity: 1;}
	100% {opacity: 0;}
}

#hidden-text-div {
	position: absolute;
	left: 0;
	top: 0;
	width: 0;
	height: 0;
	background-color: red;
}

.tooltipText {
	visibility: hidden;
	position: absolute;
	z-index: 50;
	font-size: 14px;
	margin: auto;
	color: black;
	display: inline-block;
	background-color: var(--tooltiptext-background-color);
	border-radius: var(--button-border-radius);
	padding: 2px;
	top: 48px;
}

.tooltipText::after {
	content: "";
	position: absolute;
	bottom: 100%;
	left: 16px;
	margin-left: -5px;
	border-width: 5px;
	border-style: solid;
	border-color: transparent transparent var(--tooltiptext-background-color) transparent;
}

.table {
    vertical-align: top; 
	height: 5000;
}

.toolbarButton {
	height: 32px;
	width: 32px;
	padding: 0;
	margin: 0;
	outline: 0;
	margin-right: 2px;
	border-radius: 2px;
	font-family: 'Open Sans', sans-serif;
	float: left;
	cursor: pointer;
}
.toolbarButton:hover {
	outline: 1px solid var(--tooltiptext-background-color);
}

.toolbarButton:hover .tooltipText {
	visibility: visible;
}

#toolbar {
	position: relative;
	top:0;
	width: 380px;
	height: var(--toolbar-height);
	vertical-align: top;
	margin-bottom: 4px;
	cursor: default;
	border: 1px solid white;
	border-radius: var(--border-radius);
	background-color: var(--toolbar-background-color);
}

/* for toolbar icons */
.undoImg {
	background-image: url(img/undo.png);
	background-position: center;
	background-repeat: no-repeat;
}
.redoImg {
	background-image: url(img/redo.png);
	background-position: center;
	background-repeat: no-repeat;
}
.pencilImg {
	background-image: url(img/pencil.png);
	background-position: center;
	background-repeat: no-repeat;
}
.selectionImg {
	background-image: url(img/selection.png);
	background-position: center;
	background-repeat: no-repeat;
}
.fillImg {
	background-image: url(img/fill.png);
	background-position: center;
	background-repeat: no-repeat;
}
.eraserImg {
	background-image: url(img/eraserBig.png);
	background-position: center;
	background-repeat: no-repeat;
}
.colorpickerImg {
	background-image: url(img/colorpicker.png);
	background-position: center;
	background-repeat: no-repeat;
}

/* other toolbar buttons */
.gridImg {
	background-image: url(img/grid.png);
	background-position: center;
	background-repeat: no-repeat;
}
.saveImg {
	background-image: url(img/floppy.png);
	background-position: center;
	background-repeat: no-repeat;
}

#add-color-button {
	position: relative;
	outline: 1px solid black;
	cursor: pointer;
	margin-bottom: 4px;
	background-color: #d1d1d2;
	height: var(--palette-cell-height);
	width: var(--palette-cell-height);
}

#add-color-button:hover
{
	box-shadow: 0px 0px 10px aqua;
}

#add-color-button:active
{
	box-shadow: none;
}

#active-color-label {
	position: auto;
	top:0;
	float: top;
	//word-wrap: break-word;
	//overflow-wrap: break-word;
	//padding-top: 100%;
	line-height: var(--line-height-toolbar-text);
	margin-right: var(--palette-margin-right);
	font-family: Menlo;
}

#active-color-preview {
	position: auto;
	top:0;
	width: 44px;
	background-position: center;
	height: 30px;
	border: 1px solid #eef;
	border-radius: var(--border-radius);
	transform: translate(-2px, -1px);
}

#canvas-div {
	position: relative;
	vertical-align: top;
	width: var(--canvas-width);
	height: var(--canvas-width);
	margin-right: var(--palette-margin-right);
	float: left;
	border: double 5px #FFFFFF;
}

#palette-div {
	border: double 5px #A9A9A9;
	position: relative;
	width: var(--palette-width);
	float: left;
	cursor: default;
}

#secret-info {
	position: fixed;
	bottom: 0;
	display: none;
}

.paletteCell {
	position: relative;
	float: left;
	height: var(--palette-cell-height);
	width: var(--palette-cell-width);
	cursor: pointer;
}

.textInPaletteCell {
	position: relative;
	left: var(--palette-width);
	height: inherit;
	z-index: 1;
	outline: 1px dotted grey;
	visibility: hidden;
}

.canvasCell {
	width: var(--canvas-cell-width);
	height: var(--canvas-cell-width);
	pointer-events: auto;
	float: left;
}

#selection {
	position: absolute;
	z-index: 2;
	outline: 1px dashed #ff0000;
	pointer-events: none;
}

#output-div {
	position: relative;
	left: 40px;
	width: 200px;
	height: 640px;
	float: left;
	opacity: 1;
	overflow-y: scroll;
	background-color: #eee;
}
