html,
body,
svg {
	padding: 0;
	margin: 0;
	font-family: Liberation sans, sans-serif;
}

#board #drawingArea .formula {
	overflow: visible;
}

#board #drawingArea .title {
	overflow: visible;
}

#board #message {
	width: fit-content;
	margin-top: 100px;
	background-color: rgb(227, 234, 236);
	padding: 5px;
	padding-left: 10px;
	padding-right: 10px;
	position: fixed;
	margin-left: auto;
	margin-right: auto;
	left: 0;
	right: 0;
	text-align: center;
	z-index: 9999999;
}

#board #message:empty {
	display: none;
}

#canvas {
	transform-origin: 0 0;
}

#canvas foreignObject.title{
	text-align: center;
}
#canvas foreignObject.formula{
	text-align: center;
}


#loadingMessage {
	font-size: 1.5em;
	background: #eee linear-gradient(#eeeeee, #cccccc);
	padding: 20px;
	width: 40%;
	line-height: 50px;
	text-align: center;
	border-radius: 10px;
	position: fixed;
	top: 40%;
	left: 30%;
	z-index: 1;
	box-shadow: 0 0 2px #333333;
	transition: 1s;
}

#loadingMessage.hidden {
	display: none;
	opacity: 0;
	z-index: -1;
}

#loadingMessage::after {
	content: "...";
}

/* Hide scrollbar for Chrome, Safari and Opera */
#menu::-webkit-scrollbar {
	display: none;
}

#menu {
	-ms-overflow-style: none;
	scrollbar-width: none;
	font-size: 16px;
	border-radius: 0;
	position: fixed;
	margin-bottom: 30px;
	left: 0;
	top: 0;
	color: black;
	max-height: 100%;
	transition-duration: 1s;
	cursor: default;
	padding: 10px;
}

#menu.closed {
	border-radius: 3px;
	left: 10px;
	top: 10px;
	background-color: rgba(100, 200, 255, 0.7);
	width: 6vw;
	height: 2em;
	transition-duration: 1s;
}

#menu h2 {
	/*Menu title ("Menu")*/
	display: none;
	font-size: 4vh;
	text-align: center;
	letter-spacing: 0.5vw;
	text-shadow: 0px 0px 5px white;
	color: black;
	padding: 0;
	margin: 0;
}

#menu .tools {
	list-style-type: none;
	padding: 0;
}
#menu .main-tools {
	display: flex;
	position: fixed;
	bottom: 0;
	min-width: calc(100% - 100px);
	padding: 16px;
	margin: 0;
	justify-content: center;
}

#autoNavMore {
	overflow: auto !important;
}
#autoNavMoreList {
	position: absolute;
	right: -5px;
	bottom: 55px;
}
#more-tools-container {
	position: fixed;
	bottom: 78px;
	right: 10px;
	width: 95%;
	max-height: 75%;
	background-color: #fff;
	overflow-y: auto;
	border-radius: 10px;
	box-shadow: 0 3px 10px rgb(0 0 0 / 0.2);
	display: none;
	-webkit-overflow-scrolling: touch;
	z-index: 99999;
}
#more-tools-colors .colorPresets {
	display: flex;
	justify-content: space-around;
	background-color: #f6f6f6;
}
#more-tools {
	padding:60px 15px 35px;
}
#more-tools p {
	color: #f28334;
	margin-bottom: 8px;
	margin-top: 8px;
	z-index: 99;
}
#more-tools img {
	filter: invert(23%) sepia(52%) saturate(30%) hue-rotate(180deg) brightness(75%) contrast(118%);
	border: 1px solid #efeff329;
	margin: 3px;
}

@media (max-width: 768px) {
	#more-tools .input-tool img {
		width: 24px;
		margin: 0px;
	}
	#more-tools .input-tool input {
		height: 40px;
		width: 100%;
		border: 0px solid;
		box-shadow: 1px 0px 8px 7px rgb(0 0 0 / 5%);
		background-color: #fff;
	}
	#menu .main-tools {
		justify-content: flex-end;
		right: 0;
	}
	/* #more-tools-container {
		max-width: 380px;
		min-width: 300px;
	} */
}
@media (max-width: 414px) {
	#more-tools-container {
		width: 90%;
	}
}

#settings {
	margin-bottom: 20px;
}
#undo-redo {
	position: fixed;
	bottom: 0;
	display: flex;
}
#menu .tool {
	position: relative;
	-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; /* Non-prefixed version, currently
                                  supported by Chrome, Opera and Firefox */
	pointer-events: auto;
	white-space: nowrap;
	list-style-position: inside;
	border: 1px solid #eeeeee;
	text-decoration: none;
	cursor: pointer;
	background: #ffffff;
	margin-top: 10px;
	height: 40px;
	line-height: 40px;
	border-radius: 0px;
	max-width: 60px;
	transition-duration: 0.2s;
	overflow: hidden;
	width: max-content;
	box-shadow: inset 0 0 3px #8fa2bc;
}
#menu .tools-list {
	pointer-events: auto;
	white-space: nowrap;
	list-style: none;
	text-decoration: none;
	cursor: pointer !important;
	margin: 10px;
	height: 45px;

	width: 45px;
	line-height: 40px;
	border-radius: 0px;
	transition-duration: 0.2s;
	overflow: hidden;
	box-shadow: 0 10px 10px 0 #0000000d;
	background-color: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 45px;
	min-height: 45px;
}
li#undo:hover {
	cursor: pointer !important;
	background: turquoise;
}
#undo-redo .tool-list {
	cursor: pointer !important;
}
#undo-redo .tool-list .do-btn {
	cursor: pointer !important;
}
#menu .tool:hover {
	max-width: 100%;
}
#menu .main-tools .tool-list .tool-icon-dimension {
	height: 24px;
	width: 24px t;
}
#menu .main-tools .tool-icon-dimension {
	height: 24px ;
	width: 24px ;
}
#menu .main-tools .sub-tools .tool-icon-dimension {
	height: 40px ;
	width: 40px ;
	padding: 5px;
	border: 1px solid #efeff329;
}
#menu .main-tools .tool-name {
	display: none;
}
#menu .main-tools .tool-icon.secondaryIcon {
	display: none !important;
}
.do-btn {
	border: none;
	outline: none;
	background: transparent;
}
@media (hover: none), (pointer: coarse) {
	#menu .tool:hover {
		max-width: 100%;
	}

	#menu .tool:focus {
		max-width: 100%;
	}

	#menu {
		pointer-events: auto;
	}

	#menu:focus-within {
		pointer-events: none;
	}
}

#menu .oneTouch:active {
	border-radius: 3px;
	background-color: #eeeeff;
}

#menu .tool:active {
	box-shadow: inset 0 0 1px #ddeeff;
	background-color: #eeeeff;
}

#menu .tool.curTool {
	box-shadow: 0 0 3px 2px #f28334;
	background: linear-gradient(#96e1ff, #36a2ff);
	overflow: unset;
}

#menu .tool-icon {
	display: inline-block;
	text-align: center;
	width: 24px;
	height: 24px;
	margin: 2.5px;
	font-family: mono, monospace;
	overflow: hidden;
}

#menu img.tool-icon {
	pointer-events: none;
}

#menu .tool-icon > * {
	display: block;
	margin: auto;
}

#menu .tool-name {
	text-align: center;
	font-size: 23px;
	margin-right: 20px;
	margin-left: 20px;
	margin-bottom: 2.5px;
	display: inline-block;
	vertical-align: text-bottom;
}

#menu .tool-menu {
	display: block;
	bottom: 60px;
	position: absolute;
}
#menu .tool.curTool .sub-tools {
	width: 352px;
	display: flex ;
	flex-wrap: wrap;
	background: #ffffff;

	box-shadow: 0 2px 14px 0 rgba(0, 0, 0, 0.15);
}
#menu .sub-tools span {
	line-height: 0 !important;
}

#menu .tool-menu #wolfram-input {
	border: 1px solid rgb(238, 238, 238);
	border-radius: 10px;
	box-shadow: rgba(0, 0, 0, 0.05) 0px 10px 10px 0px;
	outline: none;
	width: 95% !important;
}

#menu .tool-menu input {
	
    box-shadow: 1px 0px 8px 7px rgb(0 0 0 / 5%);
    background-color: #fff;
    border: 2px solid rgb(0 0 0 / 15%);
	border-radius: 5px;
}

#menu .tool-name.slider {
	display: inline-block;
	width: 150px;
	height: 30px;
	font-size: 0.9em;
	line-height: 15px;
	vertical-align: top;
	padding: 6px;
	margin: 0 10px;
}

#menu .tool.hasSecondary .tool-icon {
	margin-top: 0px;
	margin-left: 0px;
}

#menu .tool .tool-icon.secondaryIcon {
	display: none;
}

#menu .tool.hasSecondary .tool-icon.secondaryIcon {
	display: block;
	position: absolute;
	bottom: 0px;
	left: 26px;
	width: 12px;
	height: 12px;
}

input {
	font-size: 16px;
}

#chooseColor {
	/* width: 100%;
	height:100%; */
	border: 0;
	border-radius: 0;
	color: black;
	display: block;
	margin: 0;
	padding: 0;
}

.colorPresets {
	vertical-align: top;
	display: inline-block;
}

.colorPresetButton {
	width: 30px;
	height: 30px;
	border: 3px solid #fff;
	border-radius: 50%;
	display: inline-block;
	margin-right: 6px;
	padding: 0;
	vertical-align: middle;
	box-shadow: 0 10px 10px 0 #0000000d;
	margin: 10px 0;
}

.rangeChooser {
	display: block;
	border: 0;
	width: 100%;
	margin: 0;
	background: transparent;
}

line {
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

path {
	fill: none;
	stroke-linecap: round;
	stroke-linejoin: round;
}

symbol path {
	fill: unset
}

text {
	font-family: "Arial", "Helvetica", sans-serif;
	user-select: none;
	-moz-user-select: none;
}

circle.opcursor {
	pointer-events: none;
	transition: 0.1s;
}

#cursor-me {
	transition: 0s;
}

/* Internet Explorer specific CSS */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	#chooseColor {
		color: transparent;
	}
	label.tool-name[for="chooseColor"] {
		line-height: 10px;
	}
}
#menu .tool.curTool {
	box-shadow: 0 0 5px #f28334;
	background: #f28334;
	overflow: unset;
}
#menu .tool.curTool:focus {
	outline: 0 !important;
}
#menu .tool.oneTouch:active {
	box-shadow: 0 0 5px #f28334;
	border-radius: 50%;
	background: #f28334;
}
#menu .tool.oneTouch:focus {
	box-shadow: 0 0 5px #f28334;
	background: #f28334;
}
#settings-color {
	position: fixed;
	right: 20px;
	top: 60px;
}
#settings-color .color-list {
	height: 100%;
	position: relative;
	border: none !important;
	box-shadow: none !important;
	background: none;
}
#settings-color .color-list:active,
#settings-color .color-list:focus,
#settings-color .color-list:hover {
	border: none !important;
	box-shadow: none !important;
	background-color: transparent !important;
}
#settings-color .color-list .tick-icon {
	position: absolute;
	top: 0px;
	left: 3px;
}
#settings-color .color-list .current-color {
	width: 32px;
	height: 32px;
	border-radius: 50%;
}
#settings-color .color-list .current-color,
#settings-color .color-list .color-name {
	display: block !important;
}
#settings-color .color-list .colorSelect,
#settings-color .color-list .colorSelect .colorSelectBtn {
	display: block !important;
}
li.curTool .tool-icon {
	filter: invert(0%) sepia(70%) saturate(14%) hue-rotate(180deg) brightness(130%) contrast(133%);
}
li.curTool .tool-menu .tool-icon.tool-icon-dimension {
	filter: invert(23%) sepia(52%) saturate(30%) hue-rotate(180deg) brightness(75%) contrast(118%);
}
li#toolID-Grid:focus img {
	filter: invert(0%) sepia(70%) saturate(14%) hue-rotate(180deg) brightness(130%) contrast(133%);
}
li#toolID-Download:focus img {
	filter: invert(0%) sepia(70%) saturate(14%) hue-rotate(180deg) brightness(130%) contrast(133%);
}
.search-icon {
	position: relative;
	top: 8px;
	left: -30px;
	height: 14px;
}
#settings-size {
	position: fixed;
	top: 100px;
}
#settings-size .slider-list {
	display: flex;
	height: 50px;
	box-shadow: none;
	border: 0;
}
#settings-size .slider-list .tool-name.slider {
	display: none;
}
#settings-size .slider-list:active .tool-name.slider,
#settings-size .slider-list:focus .tool-name.slider,
#settings-size .slider-list:hover .tool-name.slider {
	display: block;
}
.range-icons-span {
	align-items: center;
	display: flex;
	justify-content: center;
	width: 45px;
	height: 45px;
	box-shadow: 0 10px 10px 0 #0000000d;
	border-radius: 50%;
}
#settings-size .slider-list:active .range-icons-span,
#settings-size .slider-list:focus .range-icons-span,
#settings-size .slider-list:hover .range-icons-span {
	background-color: #f28334;
}
.range-icons-span {
	background-color: white;
}
#settings-size .slider-list:active .range-icons-span img,
#settings-size .slider-list:focus .range-icons-span img,
#settings-size .slider-list:hover .range-icons-span img {
	filter: invert(0%) sepia(70%) saturate(0%) hue-rotate(180deg) brightness(110%) contrast(115%);
}
#settings-size .slider-list:active .range-icons-span svg,
#settings-size .slider-list:focus .range-icons-span svg,
#settings-size .slider-list:hover .range-icons-span svg {
	filter: invert(0%) sepia(70%) saturate(0%) hue-rotate(180deg) brightness(110%) contrast(115%);
}
/* custom range slider */
input[type="range"] {
	height: 10px;
	width: 100%;
	-webkit-appearance: none;
	background-color: #cccccc;
}

input[type="range"]::-webkit-slider-runnable-track {
	height: 10px;
	-webkit-appearance: none;
	color: #686c80;
	overflow: hidden;
	position: relative;
}

input[type="range"]::-webkit-slider-thumb {
	width: 10px;
	-webkit-appearance: none;
	height: 10px;
	background: #f28334;
	box-shadow: -80px 0 0 80px #686c80;
	border-radius: 50%;
	position: relative;
	z-index: 9999999;
	left: 2px;
}
/** FF*/
input[type="range"]::-moz-range-progress {
	background-color: #686c80;
}
input[type="range"]::-moz-range-track {
	background-color: #cccccc;
}
/* IE*/
input[type="range"]::-ms-fill-lower {
	background-color: #686c80;
}
input[type="range"]::-ms-fill-upper {
	background-color: #cccccc;
}
.sub-tool-container,.screen-tool-container {
	display: flex;
	flex-direction: column;
	width: 33.3%;
	margin: auto 0;
	margin-top: 5px;
}
@media (max-width: 768px) {
	#menu .tools-list {
		max-width: 40px !important;
		min-height: 40px !important;
		margin: 5px;
	}
	#menu .tool.curTool .sub-tools {
		position: fixed;
		bottom: 80px;
		width: 370px;
		padding: 0 10px;
		right: 1rem;
	}
	#menu .tool-menu input {
		width: 230px;
	}
	#menu .main-tools .sub-tool-container .tool-icon-dimension,
	#menu .main-tools .screen-tool-container .tool-icon-dimension {
		width: 75px ;
		height: 75px ;
	}
	.sub-tool-container,.screen-tool-container{
		display: inline-flex;
		pointer-events: auto;
		cursor: pointer;
		word-wrap: break-word;
		text-align: center;
	}
	.sub-tool-container .sub-tool-name,
 .sub-tool-container .sub-tool-subtitle,
  .sub-tool-container .sub-tool-formula,
  .screen-tool-container .sub-tool-name,
 .screen-tool-container .sub-tool-subtitle,
  .screen-tool-container .sub-tool-formula
	{
		text-align: center;
		font-size: 12px !important;
		white-space: initial;
		word-wrap: break-word;
		line-height: 21px;
		margin-bottom: 10px;
	}
	.katex{
		font: normal 1em KaTeX_Main,Times New Roman,serif;
	}
	.sub-tool-container .tool-icon-dimension,
	.screen-tool-container .tool-icon-dimension{
		height: 75px;
		width: 75px;
	}
	#menu .tool-menu input {
    	width: 95%;
	}
	#more-tools-colors{
		position: fixed;
    width: 90%;
    z-index: 999999999;
	}
}

#menu .main-tools .sub-tool-container span,
#menu .main-tools .screen-tool-container span{
	margin: 2px 0;
}
#menu .main-tools .sub-tool-container .toolSpan,
#menu .main-tools .screen-tool-container .toolSpan {
	margin-bottom: 10px;
}

#menu .main-tools .sub-tool-container .sub-tool-name,
#menu .main-tools .sub-tool-container .sub-tool-subtitle,
#menu .main-tools .sub-tool-container .sub-tool-formula,
#menu .main-tools .screen-tool-container .sub-tool-name,
#menu .main-tools .screen-tool-container .sub-tool-subtitle,
#menu .main-tools .screen-tool-container .sub-tool-formula
{
	text-align: center;
	font-size: 13px;
	white-space: initial;
	word-wrap: break-word;
	line-height: 21px;
}
#menu .main-tools .sub-tools.shape-tool {
	overflow-y: auto;
	height: initial;
	max-height: 65vh;
	padding: 31px 21px 20px 23px;
}
#menu .main-tools .sub-tools:empty {
	height: 0;
}
#menu .tool-menu .sub-tool-category,
#menu .tool-menu .screen-tool-category {
	width: 100%;
}
#menu .main-tools .sub-tools .sub-tool-category,
#menu .main-tools .sub-tools .screen-tool-category  {
	font-size: 16px;
	font-weight: 500;
	font-family: Montserrat;
	color: #f28334;
	font-weight: 700;
	margin: 0;
	position: relative;
}
#menu span.tool-menu.sub-tools.input-tool {
	overflow: hidden;
    height: 60px !important;
}
#menu span.tool-menu.sub-tools.zoom-tool{
	height: 52vh;
	overflow-y: auto;
	padding: 10px
}
@media  (min-width:768px) {
	#menu .main-tools .sub-tool-container .tool-icon-dimension,
	#menu .main-tools .screen-tool-container .tool-icon-dimension  {
		width: 97px ;
		height: 96px ;
	}
	#menu .tool-menu #wolfram-input{
		position: relative;
		top: 5px;
		margin: 0 5px;
		padding-left: 5px;
		height: 46px;
	}
	

}
/* Toggle btn */
.shape-toggle-btn{
	display: flex;
	align-items: center;
	width: 100%;
}
#shape-text{
	margin: 0;
	margin-left: 5px;
	font-size: 12px;
	color: #686c80;
}
.toggle-shape-title {
	position: relative;
	display: inline-block;
	width: 50px;
	height: 20px;
  }

.toggle-shape-title #showShapeName {
	display:none;
}

.slider-shape{
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ca2222;
	-webkit-transition: .4s;
	transition: .4s;
}

.slider-shape.round {
	border-radius: 34px;
}

.slider-shape.round:before {
	border-radius: 50%;
}

.slider-shape:before {
	position: absolute;
	content: "";
	height: 15px;
	width: 15px;
	left: 4px;
	bottom: 2.5px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
}

#showShapeName:checked + .slider-shape {
	background-color: #2ab934;
}

#showShapeName:focus + .slider-shape {
	box-shadow: 0 0 1px #2196F3;
}

#showShapeName:checked + .slider-shape:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26x);
	transform: translateX(26px);
}

.on{
	display: none;
}
.on{
	left: 38%;
}
.off{
	left: 68%;
}
.on, .off {
	color: white;
	position: absolute;
	transform: translate(-50%,-50%);
	top: 50%;
	font-size: 12px;
	font-family: Verdana, sans-serif;
}

#showShapeName:checked+ .slider-shape .on{
	display: block;
}

#showShapeName:checked + .slider-shape .off{
	display: none;
}
#showShapeName:checked + #shape-text{
	display: none;
}
/*  */
.search-shape-container{
	width: 95%;
	position: relative;
	margin: 10px 0;
	z-index: 99999 ;
}
.search-shape-container #searchInput{
	width: 100% !important;
	border: 1px solid rgb(238, 238, 238);
	padding: 0 10px;
    height: 46px;
}
.search-shape-container .searchIcon{
	position: absolute;
	height: 10px;
    top: 21px;
    right: 0;
	right: -12px;
    background: white;
}
@media (max-width:434px) {
	.search-shape-container .searchIcon{
		top: 10px;
		height: 10px;
    width: 24px;
    right: -8px;
	background: none;
	filter: unset !important;
	}
	.search-shape-container #searchInput{
		height: 40px;
		border: 0px solid;
		box-shadow: 1px 0px 8px 7px rgb(0 0 0 / 5%);
		background-color: #fff;
	}
	

}
#toolID-Wolfram{
	width: 100%;
}
@media (max-width:528px) {
	#more-tools span#toolID-Wolfram{
		display: flex;
		width: 100%;
		position: relative;
	}
	#more-tools span#toolID-Wolfram .search-icon{
		position: absolute;
		right: 10px;
		left: unset;
		top: 13px;
			filter: unset !important;
			height: 10px;
		
	}
	.no-shape-found{
		text-align:center;
		padding: 10px 0;
	}
}
.no-shape-found{
	display: none;
	width: 100%;
	text-align: center;
}
.search-results-panel ::-webkit-scrollbar {
    -webkit-appearance: none;
    width: 7px;
}
.search-results-panel ::-webkit-scrollbar-thumb {
    border-radius: 4px;
    background-color: rgba(0,0,0,.5);
    -webkit-box-shadow: 0 0 1px hsl(0deg 0% 100% / 50%);
}
