/*
@import url(http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,600);
*/

@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: normal;
  src: local('Source Sans Pro'), local('SourceSansPro-Regular'), url('assets/SourceSansPro-Regular.woff') format('woff');
}

@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: bold;
  src: local('Source Sans Pro Semibold'), local('SourceSansPro-Semibold'), url('assets/SourceSansPro-Semibold.woff') format('woff');
}

@font-face {
	font-family: 'Iosevka';
	src: url('assets/iosevka-light.woff2') format('woff2');
}


html, body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

body {
	overflow: hidden;
	background-color: #f8fdff;
	font: 14px/1.4 'Source Sans Pro', Arial, sans-serif;
	color: #444;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	cursor: default;
}

body.map-view {
	background-color: #fff;
}


.fade-out {
  animation: fadeOut ease forwards 0.6s;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}


.selectable,.selectable * {
	user-select: text;
	cursor: text;
}


/* --- Themed elements -------------- */

.page-header,
.dialog-btn,
.sidebar-btn {
	background-color: #1385B7;
}

.colored-text,
.save-menu-link,
.context-menu-item,
.save-menu-btn,
.add-field-btn,
.nav-menu-item,
.edit-data-btn {
	color: #10699b;
}

.dot-underline {
	border-color: #10699b;
}

.dot-underline {
	border-bottom: 1px dotted;
}

.dot-underline-black {
	border-bottom: 1px dotted black;
}

/*.nav-btn * {
	fill: #1385B7;
}*/

.nav-btn * {
	fill: #1385B7;
}

.alert-btn + .alert-btn {
	margin-left: 4px;
}

.dialog-btn {
	display: inline-block;
	margin-bottom: 1px;
	margin-top: 3px;
	font-size: 13px;
	color: white;
	min-width: 28px;
}

.dialog-btn:hover:not(.disabled),
.sidebar-btn:hover,
.btn.header-btn:hover,
.dialog-btn.default-btn,
.dialog-btn.selected-btn {
	background-color: #1A6A96;
}

.dialog-btn.disabled {
	opacity:  0.5;
}

.colored-text::selection {
	background-color: #e6f7ff;
}

.colored-text::-moz-selection {
	background-color: #e6f7ff;
}

.layer-item.active {
	background-color: #e6f7ff;
}

/* --- Page header --------------- */

.page-header {
	position: absolute;
	color: white;
	top: 0;
	left: 0;
	z-index: 40;
	width: 100%;
	height: 29px;
}

.mapshaper-logo {
	font-weight: bold;
	font-size: 17px;
	margin: 2px 0 0 11px;
}

.mapshaper-logo .logo-highlight {
	color: #ffa;
}

.page-header a {
	text-decoration: none;
}

#mode-buttons.page-header-buttons {
	display: none;

}

.page-header-buttons {
	z-index: 20;
	position: absolute;
	top: 0px;
	right: 0px;
	margin: 0 6px 3px 0;	
}

.btn.header-btn {
	color: #fff;
	border: none;
	margin-top: 0px;
	height: 29px;
	box-sizing: border-box;
	border-radius: 1px;
	font-size: 14px;
	font-weight: 700;
	padding: 7px 8px 0px 8px;
}

.page-header .header-btn.disabled,
.page-header .header-btn.disabled:hover {
	background-color: transparent;
	opacity: 0.5;
}

.page-header .btn.header-btn.active,
.btn.toggle-btn.active {
	background-color: black;
}
.separator {
	border-left: 1px solid white;
	height: 10px;
	margin: 0 2px 0 2px;
	display: none;
}

/* --- Selection tool dialog --------- */

.selection-tool-options {
	pointer-events: none;
}

.selection-tool-options .info-box {
	pointer-events: initial;
	text-align: center;
}

/* --- Box tool dialog --------- */
.box-tool-options {
	pointer-events: none;
}

.box-tool-options .btn,
.selection-tool-options .btn {
	pointer-events: initial;
}

.box-coords {
	margin-top: -23px;
	pointer-events: initial;
	position: absolute;
	z-index: -1;
	padding: 1px 25px;
	right: 55px;
}

/* --- Export dialog --------- */

.export-options .dialog-btn {
	min-width: 20px;
	padding: 4px 6px 5px 6px;
}

.export-options table {
	margin: 0;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}

.export-layer-list {
	max-height: 160px;
	overflow: hidden;
	overflow-y: auto;
	margin-right: -3px;
}

.export-layer-list > div {
	white-space: nowrap;
}

/* --- Main area ------------- */

.main-area {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: 29px 0 0 0;
}


/* --- Error message ---------- */

.alert-wrapper {
	z-index: 120;
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.alert-wrapper.non-blocking {
	pointer-events: none;
}

.non-blocking > div {
	pointer-events: auto;
}

.alert-wrapper p.alert-message {
	margin: 1px 0 0 0;
}

.alert-title {
	line-height: 1.1;
	font-weight: bold;
	margin-bottom: 7px;
}

div.alert-title, div.alert-message {
	font-size: 16px;
}

.alert-wrapper .alert-btn {
	margin-top: 8px;
}

div.alert-box {
	margin-top: 42px; /* 55px; */
	overflow: auto;
	max-height: 70%;
	max-width: 400px;
}



/* --- Splash screen -------------- */

.import-instructions {
	margin: 7px 0 0 0;
}

.mini-drop-area {
	border: 1.5px dashed #999;
	max-width: 245px;
	border-radius: 9px;
	font-size: 14px;
	line-height: 1.5;
	padding: 9px 11px 6px 11px;
	margin: 9px -1px 3px -1px;
	min-height: 120px;
	background: #f8fdff;
}

.catalog-mode .file-catalog {
	height: 32%;
}


#file-selection-btn.inline-btn {
	padding: 2px 4px 3px 3px;
}

/* --- File catalog --------------- */

.catalog-mode .file-catalog,
.catalog-mode .file-catalog-spacer {
	display: block;
}

.catalog-area {
	overflow: hidden;
	border: 1.5px solid #aaa;
	border-radius: 19px;
	background-color: #f8fdff;
}

.file-catalog table {
	margin: 0;
	border-collapse: collapse;
	height: 100%;
	width: 100%;
}

.file-catalog th {
	vertical-align: top;
	height: 40px;
}

.file-catalog,
.file-catalog-spacer {
	display: none;
}

.file-catalog td {
	margin: 0;
	cursor: pointer;
	vertical-align: top;
}

.file-catalog td:hover {
	background-color: #e2e2e2;
}

.file-catalog.downloading td.downloading {
	background-color: #d5d5d5;
	background-size: 0% 100%;
	background-repeat: no-repeat;
	background-position: top left;
	background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAMAAABFaP0WAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFt7e3AAAAgOo4JQAAAA5JREFUeNpiYAABgAADAAAGAAHgQhFOAAAAAElFTkSuQmCC);
}

/* --- Import screen -------------- */

.option-menu .text-input {
	width: 230px;
	background: rgba(255, 255, 255, 0.4);
	border: 1px solid #999;
	padding: 0 3px;
	height: 18px;
	font-size: 13px;
	margin: 0 0 5px 0;
}

::placeholder {
	color: #aaa;
	opacity: 1;
}


#mshp-not-supported {
	display: none;
	z-index: 100;
	text-align: center;
}

.dropped-file-list {
	margin-bottom: 4px;
	max-height: 300px;
	overflow-y: auto;
}

.dropped-file-list img.close-btn {
	position: absolute;
	cursor: pointer;
	width: 14px;
	height: 14px;
	padding: 0;
	top: 3px;
	right: 0px;
}

.dropped-file-list > div {
	position: relative;
}

.dropped-file-list span {
	margin-right: 16px;
}

#import-options .queued-file-section {
	display: none;
}

.queued-files #import-options .queued-file-section {
	margin-top: 10px;
	display: block;
}

.queued-files #import-options .import-instructions {
	display: none;
}


#import-options .dropped-file-list p {
	line-height: 1;
	margin-bottom: 5px;
	font-size: 14px;
	font-weight: bold;
}

.popup-dialog {
	display: none;
	z-index: 80;	
	text-align: center;
}

.info-box,.popup {
	border-radius: 9px;
	border: 1px solid #d5d5d5;
	box-shadow: 0 1px 7px rgba(0,0,0,0.18);
	background-color: #fff;
}

.contextmenu {
	position: absolute;
	border-radius: 6px;
	border: 1px solid #d5d5d5;
	box-shadow: 0 1px 7px rgba(0,0,0,0.18);
	background-color: #fff;
	font-size: 13px;
	z-index: 40;
	padding: 4px 0;
}

.contextmenu-item {
	padding: 6px;
}


.info-box {
	min-width: 230px;
	word-wrap: break-word;
	text-align: left;
	margin-top: 12px;
	margin-right: 20px;
	padding: 11px 16px 12px 18px;
	vertical-align: top;
	display: inline-block;
	/* border: 1px solid #aaa; */
}

.info-box label {
	cursor: pointer;
}

.sidebar-buttons {
	display: none;
	position: absolute;
	background-color: white;
	padding: 1px 3px;
	top: 207px;
	right: 0;
	z-index: 19;
}

.btn.sidebar-btn {
	display: block;
	margin-bottom: 2px;
	margin-top: 2px;
	font-size: 13px;
	color: white;
	min-width: 28px;
}

.info-box h3 {
	font-size: 19px;
	line-height: 1.1;
	padding: 0;
	margin: 0 0 0.3em 0;
	font-weight: normal;
}

.info-box h3.list-header {
	margin-bottom: 0.1em;
}

.info-box h4 {
	font-size: 1.085em;
	font-weight: normal;
	margin: 4px 0 2px 0;
}

.info-box p {
	white-space: pre-line;
	margin: 0 0 7px 0;
	line-height: 1.2;
	/* font-size: 90%; */
}



/*.option-menu input[type="radio"],
.option-menu input[type="checkbox"]  */
input[type="radio"],
input[type="checkbox"] 
{
	position: relative;
	top: 1px;
	width: 12px;
	height: 12px;
	cursor: pointer;
}

.info-box .tip-button {
	margin: 3px 2px 0 10px;

}

.info-box input[type="checkbox"] {
	margin: 3px 5px 0 1px;
}

.info-box input.radio {
	margin: 0 5px 0 0;
}

/* --- Progress bar --------------- */

.progress-message {
	position: absolute;
	width: 100%;
	z-index: 90;
	text-align: center;
	top: 52px;
}

.progress-message > div {
	display: inline-block;
	text-transform: uppercase;
	padding: 3px 6px;
	font-size: 15px;
	color: black;
	background-color: rgba(255, 255, 222, 0.85);
	border: 1px solid #333;
}

/* === Editing interface ========== */

#mshp-main-page {
	position: relative;
	height: 100%;
	width: 100%;
}


/* --- Console control ------------ */

.console-area {
	right: auto;
	width: 495px;
	max-width: 100%;
	font-size: 12px;
}

body.console-open .map-area {
	left: 495px;
}

/* responsive sizing, should be 78-80 chars per line */
@media screen and (max-width: 525px) {
	body.console-open .map-area {
		display: none;
	}
}

@media screen and (min-width: 1200px) {
	body.console-open .map-area {
		left: 535px;
	}

	.console-area {
		width: 535px;
		font-size: 13px;
	}
}

@media screen and (min-width: 1400px) {
	body.console-open .map-area {
		left: 575px;
	}

	.console-area {
		width: 575px;
		font-size: 14px;
	}
}


.console {
	z-index: 30;
	pointer-events: none;
	display: none;
}

.console-window {
	pointer-events: auto;
	background-color: black;
	position: absolute;
	text-align: center;
	overflow: auto;
	width: 100%;
	height: 100%;
}

.console-buffer {
	cursor: text;
	width: 100%;
	position: relative;
	color: white;
	font-family: Iosevka, monospace;
	line-height: 1.35;
	margin: 8px 0 20px 0;
	word-break: break-all;
	word-wrap: break-word;
	white-space: pre-wrap;
	 /* Removing this workaround: non-standard behavior fixed in recent Chrome
	white-space: pre; */
}

.console-buffer > div {
	text-align: left;
	/* max-width: 640px; */
	margin: 0 auto;
	padding: 0 10px 0 14px;
}

.console-error {
	color: #f93b00;
}

.console-message {
	color: #eddd98;
}

.console-example {
	color: #b9dffc;
}

.input-field {
	outline: none;
	min-width: 100px;
}

/* --- Layer menu ----------- */

.layer-control-btn {
	top: 0;
	width: 100%;
	position: absolute;
	text-align: center;
	z-index: 30;
	display: none;
	pointer-events: none;
}

.layer-control-btn.active {
	display: block;
}

.layer-control-btn > .btn.header-btn {
	white-space: nowrap;
	position: relative;
	background-color: #1A6A96;
	padding-left: 12px;
	padding-right: 12px;
	pointer-events: auto;
	margin-right: 20px;
}

.layer-control-btn > .btn.header-btn:hover {
	background-color: #094B70;
}

body.simplify .layer-control-btn {
	display: none;
}

.layer-control .info-box {
	padding: 0;
	pointer-events: none;
	background-color: transparent;
}

.layer-control div.info-box-scrolled {
	position: relative;
	z-index: -1;
	background-color: white;
	max-height: 500px;
	overflow: hidden;
	overflow-y: auto;
	padding: 8px 14px 9px 14px;
	pointer-events: auto;
	border-radius: 9px;
}

.layer-control .info-box {
	/* (Chrome fix) raise layer menu above container to catch events */ 
	position: relative;
	z-index: 90;
}

.layer-control .no-layer-note {
	color: #777;
	margin: 4px 0 6px 0;
}

.layer-menu .layer-list {
	margin: 6px 0 7px 0;
}

.layer-menu .layer-item {
	position: relative;
	margin-left: -14px;
	margin-right: 6px;
	padding: 6px 14px;
	width: 100%;
}

.layer-menu .layer-list .layer-item {
	cursor: pointer;
}

.layer-menu .file-list {
	padding-bottom: 4px;
}

.layer-menu .file-list .layer-item {
	padding: 0px 14px 2px 14px;
}


.pin-all img,
.layer-item img
{
	position: absolute;
	width: 16px;
	height: 16px;
	padding: 2px;
	right: 6px;
}

img.close-btn {
	opacity: 0.2;
}

.close2-btn {
	display: inline-block;
	background-color: #e5e5e5;
	background-image: url("images/close2.png");
	background-size: cover;
	float: right;
	height:  18px;
	width:  18px;
	/* margin-top: 1px; */
	margin-right: -3px;
	cursor: pointer;
	border-radius: 4px;
}

.close2-btn:hover {
	background-color: #d5d5d5;
}

.pin-all img {
	top: 11px;
	cursor: pointer;
}

.layer-item img.eye-btn {
	top: 4px;
}

.layer-item img.close-btn {
	/* top: 29px; */
	bottom: 5px;
}

/* hide close button when not hovering */
.layer-item:not(:hover) img.close-btn,
.layer-item.dragging img.close-btn {
	display: none;
}

img.eye-btn {
	opacity: 0;
}

.pinnable:not(.pinned):not(.active) img.black-eye,
.pinnable.active.invisible img.black-eye {
	opacity: 0.2;
}

.pinnable:not(.pinned) img.black-eye:hover {
	opacity: 0.3;
}

/*.pinnable.pinned.active img.black-eye {
	opacity: 0;
}*/

img.close-btn:hover,
.pinnable.active:not(.pinned):not(.invisible) img.black-eye,
.pinnable.pinned:not(.active) img.green-eye,
.pinnable.active.pinned:not(.invisible) img.black-eye {
	opacity: 1
}

.pinnable img.black-eye {
	z-index: 1;
}

.layer-item .row {
	line-height: 17px;
	margin-bottom: 1px;
	white-space: nowrap;
}

.layer-item .layer-name {
	display: inline-block;
	min-height: 14px; /* For FF when content is empty */
	min-width: 2px;
	outline: none;
}

.layer-item .row.layer-problems {
	color: #f93b00;
}

.layer-item .layer-name.editing {
	border-bottom: 1px solid transparent;
}

.layer-item .layer-name::selection {
	background: black;
	color: white;
	text-decoration: none;
}

.layer-item .layer-name::-moz-selection {
	background: black;
	color: white;
	text-decoration: none;
}

.layer-list .layer-item:hover:not(.active):not(.dragging) {
	background-color: #f7f7f7;
}

.layer-item .row > div {
	display: inline-block;
}

.layer-item .col1 {
	width: 84px;
}

.layer-item .row1 .col2 {
	margin-right: 19px; /* room for buttons */
}


.layer-item.drag-target:not(.active) {
	background-color: #f7f7f7;
}

.layer-item.drag-target * {
	/* opacity: 0.3; */
}

.layer-item.drag-target.active {
	/* background-color: #BDE2F4; */
}

.layer-item.insert-above:not(.drag-target) {
	border-top: 1px solid black;
}

.layer-item.insert-below:not(.drag-target) {
	border-bottom: 1px solid black;
}

/* --- Intersection control ----------*/

.intersection-display {
	cursor: default;
	visibility: visible;
	display: none;
	position: absolute;
	z-index: 20;
	top: 10px;
	left: 13px;
}

.intersection-check {
	display: none;
}

.intersection-count .icon {
	background-color: #F24400;
	display: inline-block;
	width: 5px;
	height: 5px;
	margin: 0 5px 2px 0;
}

.intersection-count .icon.black {
	background-color: black;
}

.intersection-display .close-btn {
	width: 16px;
	height: 16px;
	cursor: pointer;
	position: relative;
	top: 4px;
	margin-left: 1px;
}

/*.intersection-display .text-btn.disabled {
	visibility: hidden;
}*/


/* --- Popup -------------------- */

.popup {
	font-size: 13px;
	box-sizing: border-box;
	position: absolute;
	z-index: 40;
	top: 12px;
	left: 12px;
	padding: 5px 0;
}

.popup div.popup-tab {
	position: absolute;
	pointer-events: none;
	right: -81px;
	width: 80px;
	top: 6px;
}

.popup-tab .popup-nav {
	display: inline-block;
	pointer-events: auto;
	background-color: rgba(234,234,234,0.85);
	padding: 3px 5px 3px 4px;
	white-space: nowrap;
}

.popup-nav .popup-nav-arrow {
	cursor: pointer;
	padding: 0 1px;
}

.popup > div.popup-content {
	box-sizing: border-box;
	overflow: hidden;
	overflow-y: auto;
	padding: 4px 12px 3px;
	line-height: 1.2;
}

.popup table {
	border-spacing: 0px;
}

.popup table td {
	vertical-align: top;
	/* padding: 2px 0; */
	min-width: 80px;
	max-width: 180px;
	color: black;
	height: 17px; /* functions like min-height on <td> */
}

.popup td.field-name {
	color: #aaa;
	padding-right: 7px;
	font-weight: normal;
	min-width: 60px;
	max-width: 260px;
}

.popup .value {
	outline: none;
	word-wrap: break-word;
}

.popup .num-field {
	font-style: italic;
}

.popup .empty, .popup .null-value {
	min-width: 4px;
	display: inline-block;
	min-height: 13px;
}

.popup .null-value {
	color: #aaa;
}

.popup .note {
	font-style: italic;
	min-height: 16px;
}

.popup .editable-cell .value.editing {
	color: black;
	border-bottom: none;
}

.popup .editable-cell .value::selection {
	color: white;
	background: black;
}

.popup .editable-cell .value::-moz-selection {
	color: white;
	background: black;
}


/* --- Map ---------------------- */

.map-layers {
	z-index: 0;
	position: relative;
	height: 100%;
}

.basemap-options {
	pointer-events: none;
}

.basemap-options .info-box {
	width:  min-content;
	pointer-events: initial;
}

.basemap-container {
	z-index: -1;
	position:  absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.basemap {
	display: none;
	position: relative;
	height: 100%;
}

.basemap-styles {
	margin: 0 -2px;
	white-space: nowrap;
}

.basemap-warning {
	color: #cc0000;
}

.basemap-prompt {
	width: 100%;
	text-align:  center;
	z-index:  -2;
	bottom: 8px;
	font-size: 22px;
	color: #aaa;
	position: absolute;
}

.basemap-styles > div {
	display: inline-block;
	margin-bottom:  6px;
}

.basemap-styles > div:nth-child(even) {
	position: relative;
	margin-left: 10px;
}

.basemap-style-btn {
	position:  relative;
	border-width: 2px;
	border-color: #98cde2;
	border-color: #bbddea;
	border-style: solid;
	border-radius: 6px;
}

.basemap-style-btn img {
	display: block;
	width:  108px;
}

div.basemap-style-btn.active {
	border-color: #e8ba52;
}

.basemap-buttons:not(.disabled) .basemap-style-btn:hover {
	cursor: pointer;
	border-color: #f7e286;
}

.basemap-style-label {
	margin-left: 2px;
}

.basemap-overlay-buttons {
	z-index: 20;
	position: absolute;
	top: 6px;
	right: 36px;
	padding: 4px;
	background: white;
	border-radius: 7px;
	line-height: 0px;
	display: none;
}

.basemap-style-btn.basemap-overlay-btn {
	width: 40px;
	height: 40px;
	margin: 3px;
	overflow: hidden;
	display: inline-block;
	/*border-width: 1px;*/
}

.basemap-overlay-buttons.disabled > div {
	opacity: 0.5;
}

.basemap-overlay-btn img {
	margin-left: -31px;
	margin-top: -5px;
	width: 90px;
}

.mapbox-improve-map {
	display: none;
}

.mshp-main-map {
	/* background-color: #fff; */
}

.map-layers.symbol-hit {
	cursor: pointer;
}

.map-layers.symbol-hit.dragging {
	cursor: default;
}

.map-layers.add-points,
.map-layers.draw-tool {
	cursor: crosshair;
}

.map-layers.draw-tool.dragging {
	cursor: default;
}

body.pan .map-layers:not(.drawing) {
	cursor: grab;
}

body.pan.panning .map-layers:not(.drawing) {
	cursor: grabbing;
}
.map-layers canvas {
	pointer-events: none;
	position: absolute;
}

.map-layers canvas.retina {
	transform-origin: top left;
	-webkit-transform-origin: top left;
	transform: scale3D(0.5, 0.5, 1);
	-webkit-transform: scale3D(0.5, 0.5, 1);
}

.map-layers > svg {
	position: absolute;
}

.map-layers > svg text.selected {
	stroke: #FFC3FF;
	stroke-width: 4;
	paint-order: stroke;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.map-layers > svg.dragging,
.map-layers > svg text.selected {
	cursor: pointer;
}

.map-layers > svg text.active-label {
	stroke: #fac0ff; /* #efacf4; */
	paint-order: stroke fill;
	stroke-width: 4px;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* ---  MAP BUTTONS --- */

/*.pointer-btn {
	z-index: 2;
}*/

.nav-buttons {
	z-index: 20;
	position: absolute;
	text-align: center;
	top: 6px;
	right: 0;
	padding: 3px; 
	background-color: rgba(255, 255, 255, 1);
	border-radius: 7px;
}

.nav-btn-wrapper {
	position: relative;
}

.nav-sub-btn {
	position: absolute;
	display: none;
	cursor: pointer;
	top: 4px;
	padding: 4px;
	right: 20px;
	z-index: -2;
}

.nav-sub-btn svg * {
	fill: black !important;
}


.inline-checkbox {
	margin-left: 5px;
}

#save-preference {
	/* display: none; */
}

.nav-sub-menu {
	position: absolute;
	z-index: -1;
	display: none;
	pointer-events: none;
	padding: 5px 0px;
	background-color: white;
	top: 0px;
	right: 24px;
	text-align: right;
	white-space: nowrap;
	border-radius: 6px;
	border: 1px solid #ddd;
	box-shadow: 0 1px 7px rgba(0,0,0,0.12);
}

.pointer-btn .nav-sub-menu {
	top: -3px;
}

.nav-btn.open .nav-sub-menu {
	display: block;
	pointer-events: inherit;
}


.nav-btn {
	position: relative;
	cursor:pointer;
	/* padding: 3px 3px 5px 3px; */
	padding: 4px;
	line-height: 1;
}

.nav-btn.menu-btn {
	padding-top:  3px;
}

.nav-btn.selected {
	background-color: black;
	border-radius: 5px;
}

.nav-btn:hover:not(.disabled) svg *,
.nav-btn.hover.menu-btn:not(.disabled) svg * {
	fill: #166689;
}

.nav-btn.menu-btn.selected:not(.disabled) svg * {
	fill: white;
}

.nav-menu-item,
.contextmenu-item {
	background-color: #fff;
	white-space: nowrap;
	padding: 3px 10px 4px 10px;
	cursor: pointer;
	font-size: 13px;
	line-height: 13px;
}

.contextmenu-label {
	color: #999;
	white-space: nowrap;
	padding: 4px 10px 1px 10px;
	font-size: 12px;
	line-height: 12px;
	margin-top: -2px;
}

.nav-menu-item:hover,
.contextmenu-item:hover,
.nav-btn:hover .nav-sub-menu:not(.active):not(:hover) .nav-menu-item[data-name=info] {
	color: black;
	background: #e6f7ff;
}

.nav-menu-item.selected {
	color: black;
}

/* bullets https://www.w3schools.com/charsets/ref_utf_geometric.asp */
.nav-sub-menu.active .nav-menu-item.selected:before {
	content: "\25B8";
	position: relative;
	margin-left: -7px;
	left: -2px;
	top: 1px;
}

.save-menu {
	text-align: right;
	padding-bottom: 5px;
}

.save-menu-entry {
	line-height: 11px;
	padding: 4px 7px 5px 7px;
	background: white;
}

.save-menu-btn {
	display: inline-block;
	border-radius: 4px;
	border: 1px solid #aaa;
	font-size: 12px;
	margin-left: 2px;
	padding: 1px 2px 3px 2px;
}

.add-field-btn,
.edit-data-btn {
	display: inline-block;
	font-size: 12px;
	margin-top: 3px;
}

.save-menu-btn:hover,
.add-field-btn:hover,
.edit-data-btn:hover {
	color: black;
}

.save-menu-link,
.save-menu-btn,
.add-field-btn,
.edit-data-btn {
	cursor: pointer;
}



.save-menu-link:hover {
	color: black;
}

.save-item-label {
	font-weight: bold;
}

.save-item-size {
	/*color: #999;*/
	font-weight: bold;
	font-size: 11px;
	letter-spacing: 0.5;
}

.save-menu-item {
	position: relative;
	right: 0;
	text-align: right;
	background-color: #fff;
	white-space: nowrap;
	padding: 2px 7px 0px 7px;
	line-height: 11px;
	cursor: pointer;
}

.nav-btn.disabled {
	opacity: 0.4;
	cursor: default;
}

.zoom-box {
	position: absolute;
	border: 1px solid #cc6acc;
	z-index: 15;
	pointer-events: none;
}

.zoom-box.rectangles {
	border: none;
	cursor: default;
}

.zoom-box .handle {
	position: absolute;
	z-index: 16;
	/* cursor: pointer; */
	background: #cc6acc;
	pointer-events: all;
}

/* Simplification control ------------ */

@media (max-width: 765px) {
	body.simplify  .simplify-control-wrapper {
		top: 26px;
	}

	body.simplify .page-header {
		height: 55px;
	}

	body.simplify .main-area {
		margin-top: 55px;
	}
}

.simplify-control-wrapper {
	display: none;
	position: absolute;
	width: 100%;
	overflow: hidden;
	margin: 0 auto 0 auto;
	top: 0px;
}

.simplify-control {
	text-align: center;
	white-space: nowrap;
	padding: 0 90px 0 12px;
}

.simplify-control .slider {
	margin: 15px 5px 0 3px;
	position: relative;
	vertical-align: top;
	display: inline-block;
}

.simplify-control .track {
	border-radius: 2px;
	width: 340px;
	background-color: #fff;
	height: 2px;
}

.simplify-control .handle {
	position: absolute;
	top: -3px;
}

.simplify-control .handle img {
	width: 20px;
	height: 20px;
	margin-left: -10px;
	margin-top: -10px;
}

.simplify-control .clicktext {
	width: 56px;
	background: rgba(255, 255, 255, 0.5);
	text-align: center;
	border: 1px solid rgba(0,0,0,0);
	font-size: 13px;
}

.simplify-control .clicktext:focus {
	background: #fff;
}
