/* latin */
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	src: local('Roboto'), local('Roboto-Regular'), url(/static/fonts/roboto-latin.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin */
@font-face {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 700;
	src: local('Roboto Bold'), local('Roboto-Bold'), url(/static/fonts/roboto-latin-bold.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


:root {
	--background_color: #fff;
	--text_color: #3d3d3d;
	--outline_color: rgba(34,36,38,.15);
	--border_color: rgba(34,36,38,.20);

	/*Global purple menu styles */
	--menu-border: #534c68;
	--menu-background: #221f2b;
}

html {
	scrollbar-width: none;
}

div.ui.basic.segment.no-fluf-segment {
		margin-top: 0px;
	}

/* OVERWRITE DEFAULT SEMANTIC STYLES FOR CUSTOM/NIGHT MODES*/
body {
	color: var(--text_color);
	background-color: var(--background_color);
	font-family: 'Roboto', 'Helvetica Neue', Arial, Helvetica, sans-serif;
}

.ui.form input:not([type]), 
.ui.form input:not([type]):focus,
.ui.form textarea:not([type]), 
.ui.form textarea:not([type]):focus {
	color: var(--text_color);
	background-color: var(--background_color);
	border-color: var(--border_color);
}
.ui.basic.label, .ui.header, .ui.header div.sub.header {
	color: var(--text_color);
	background-color: var(--background_color);
	border-color: var(--border_color);
}
div.ui.basic.green.label {
	background-color: var(--background_color) !important;
}
.ui.basic.button, .ui.basic.buttons .button {
	background-color: var(--background_color) !important;
	color: var(--text_color) !important;
	border: 1px solid;
	border-color: var(--border_color) !important;
	box-shadow: none;
}
.ui.basic.button:focus, .ui.basic.button:hover {
	background-color: var(--background_color) !important;
	color: var(--text_color) !important;
	box-shadow: none;
}
.ui.tabular.menu .item {
	background-color: var(--background_color) !important;
	color: var(--text_color) !important;
}
.ui.tabular.menu .item.active {
	background-color: var(--background_color) !important;
	color: var(--text_color) !important;
	border-color: var(--border_color) !important;
}
/* OVERWRITE DEFAULT SEMANTIC STYLES FOR CUSTOM/NIGHT MODES*/

/* Styles for public display pages */
.fun {
	color: rgba(0, 0, 0, 0.87);
	color: var(--text_color);
}
.fun h1 {
	font-size: 2em;
}
.fun h2 {
	font-size: 1.9em;
}
.fun h3 {
	font-size: 1.7em;
}
.fun p {
	/*font-size: 1.5em;*/
}
.fun blockquote {
	border-left: 5px solid cornflowerblue;
	padding-left: 25px;
	margin-left: 5px;
}
/* Styles for public display pages */

a:hover {
	text-decoration: underline;
}

/*//
//	Purple Global Menu
//*/
.note-menu {
	width: 100%;
	/*display: block;*/
	display: inline-table;
	background: var(--menu-background);
	color: white;
	/*overflow: hidden;*/
	border: 1px solid var(--menu-border);
	/*height: 50px;*/
}
.note-menu > .nm-button {
	padding: 10px 15px;
	cursor: pointer;
	text-align: center;
	box-sizing: border-box;
	font-size: 1.2em;
	vertical-align: middle;
	/*height: 40px;*/
	display: table-cell;
	position: relative;
}
.nm-button i.icon {
	margin: 0;
}
.nm-button span {
	font-size: 0.9em;
}
.nm-button.right {
	float: right;
	border-left: 1px solid var(--menu-border);
}
.nm-button:hover {
	background-color: #534c68;
	color: white;
}
.nm-button + .nm-button {
	border-left: 1px solid #534c68;
}
/*.shrink-icons-on-mobile.note-menu span {
	display: none;
}*/

/* Shrink button text for mobile */
@media only screen and (max-width: 740px) {
	.note-menu .nm-button span {
		font-size: 0.7em;
		line-height: 0.4em;
		margin-left: 0;
	}
	.nm-button i.icon {
		width: 100%;
	}
	/*prevents buttons from being jammed into corners of round phones*/
	.shrink-icons-on-mobile.note-menu {
		padding: 0 20px;
	}
	.shrink-icons-on-mobile .nm-button {
		padding: 2px 3px;
	}
	.shrink-icons-on-mobile .nm-button i.icon {
		font-size: 0.7em;
	}
}

/*//
// Purple Global Menu 
//*/

.note-status-indicator {
	position: absolute;
	width: 100px;
	padding: 16px 0;
	box-sizing: border-box;
	text-align: center;
	color: var(--text_color);
	bottom: -13px;
	right: -7px;
	z-index: 100;
	cursor: pointer;
}

/* squire text styles */
	.squire-box {
		border: none;
		height: calc(100% - 69px);
		box-sizing: border-box;
		padding: 10px 15px 10px;
		background: transparent;
		overflow-x: scroll; 
		/*color: var(--text_color);*/
		font-size: 1.2em;
		line-height: 1.5em;
		word-wrap: break-word;
		/*border-bottom: 1px solid #ccc;*/
		scrollbar-width: none;
	}
	/*Makes the first line real big */
	.squire-box p:first-child {
		font-size: 1.4em;
		line-height: 1.7em;
	}
	.squire-box:focus {
		outline: none;
	}
	.squire-box span.size {
		line-height: 1.3em;
	}
	.squire-box a {
		cursor: pointer;
	}
	.note-card-text i,
	.squire-box i {
		padding: 0.5em 0.99em;
		border: 1px solid #CCC;
		margin: 1px;
		border-radius: 9px;
		display: inline-block;
	}
	.squire-box p {
		margin-bottom: 0;
	}
	.squire-box blockquote {
		margin: 0;
		padding: 0.8em;
		border-left: 2px solid blue;
	}
	.note-card-text img {
		max-width:100%;
		height: auto;
		max-height: 200px;
	}
	.squire-box img {
		max-width:100%;
		height: auto;
	}
	.note-card-text li > p,
	.squire-box p,
	.squire-box li > p {
		margin-bottom: 0;
	}

	.note-card-text ul > li,
	.squire-box ul > li {
		position: relative;
		list-style-type: none;
	}
	.note-card-text ul > li:before,
	.squire-box ul > li:before {

		content: "\f111";
		font-family: 'Icons';
		backface-visibility: hidden;
		font-style: normal;
		font-weight: normal;
		text-decoration: inherit;
		text-align: center;
		line-height: 1.4em;
		font-size: 0.75em;

		height: 17px;
		width: 17px;
		display: inline-block;
		position: absolute;

		left: -30px;
		/*border: 2px solid #444;*/
		/*border-radius: 4px;*/
		bottom: 0;
		top: 4px;
		cursor: pointer;
		opacity: 0.7;
	}
	ul > li.active:before {

		font-family: 'Icons';
		content: "\f058";
		color: #21BA45;
		opacity: 1;
	}
	/* adjust checkboxes for mobile. Make them a little bigger, easier to click */
	@media only screen and (max-width: 740px) {

		.note-card-text ul > li,
		.squire-box ul > li {
			min-height: 30px;
		}

		.note-card-text ul > li:before,
		.squire-box ul > li:before {

			content: "\f111";
			font-family: outline-icons;

			height: 24px;
			width: 24px;

			left: -40px;
			bottom: 0;
			top: 0px;
			cursor: pointer;

			line-height: 0.9em;
			font-size: 1.4em;
		}
		ul > li.active:before {

			font-family: 'Icons';
			content: "\f058";
			color: #21BA45;
			opacity: 1;
		}
	}


.clickable {
	cursor: pointer;
}
.relative {
	position: relative;
}
.float-right {
	float: right;
}

.textarea-height {
	height: calc(100% - 90px);
}
.mobile-textarea-height {
	height: 100%;
}

.ui.white.button {
	background: #FFF;
}
.input-floating-button {
	position: absolute;
	top: 19px;
	transform: translateY(-50%);
	right: 1px;
}

.fade-in-fwd {
	animation: fade-in-fwd 0.8s both;
}

/**
 * ----------------------------------------
 * animation fade-in-fwd
 * ----------------------------------------
 */
@keyframes fade-in-fwd {
	0% {
		transform: translateZ(-80px);
		opacity: 0;
	}
	100% {
		transform: translateZ(0);
		opacity: 1;
	}
}