@import "keyframes.css" layer(keyframes);

@font-face {
  font-family : mikachan;
  src : url('/ext/mikachan.ttf');
}


/* * Hide from both screenreaders and browsers: h5bp.com/u */
.hidden {
	display: none !important;
	visibility: hidden;
}

/* * Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* * Extends the .visuallyhidden class to allow the element to be focusable * when navigated to via the keyboard: h5bp.com/p */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
} /* * Hide visually and from screenreaders, but maintain layout */

.invisible {
	visibility: hidden;
}

.clearfix:before,
.clearfix:after {
	content: " "; /* 1 */
	display: table; /* 2 */
}

.clearfix:after {
	clear: both;
}
.noflick {
	perspective: 1000;
	backface-visibility: hidden;
	transform: translate3d(0,0,0);
}
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
#postit_board * {
	box-sizing: border-box;
}

#postit_board ::selection {
	background: #B3D4FC;
	text-shadow: none;
}
#postit_board a:focus {
	outline: none;
}
#postit_board ::-webkit-input-placeholder {
	color: rgba(0,0,0,.7);
}

#postit_board :placeholder {
	/* Firefox 18- */
	color: rgba(0,0,0,.7);
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

#postit_board {
	position: relative;
	top: 0px;
	padding: 30px 30px 30px;
	margin-top: 40px;
	overflow-y: visible;
	@extend .noflick;
}
.postit_note {
	float: left;
  position : absolute;
	display: block;
	padding: 1em;
	width: 300px;
	min-height: 300px;
	margin: 0 30px 30px 0;
	background: linear-gradient(top, rgba(0,0,0,.05), rgba(0,0,0,.25));
	background-color: #FFFD75;
	box-shadow: 5px 5px 10px -2px rgba(33,33,33,.3);
	transform: rotate(2deg);
	transform: skew(-1deg,1deg);
	transition: transform .15s;
	z-index: 1;
	@extend .noflick;

	&:hover {
		cursor: move;
	}
	&.ui-draggable-dragging:nth-child(n) {
		box-shadow: 5px 5px 15px 0 rgba(0,0,0,.3);
		transform: scale(1.125) !important;
		cursor: move;
		transition: transform .150s;
	}

	textarea, .postit_note_cnt div {
		background-color: transparent;
		border: none;
		resize: vertical;
		font-family: mikachan, "Gloria Hallelujah", cursive;
		width: 100%;
		padding: 5px;
		&:focus {
			outline: none;
			border: none;
			box-shadow: 0 0 5px 1px rgba(0,0,0,.2) inset;
		}
		&.postit_title {
			font-size: 24px;
			line-height: 1.2;
			color: #000000;
			height: 64px;
			margin-top: 20px;
		}
		&.postit_cnt {
			min-height: 200px;
		}
	}
  textarea:invalid:has(+ textarea:valid) {
    display: none;
    & + textarea { margin-top: 16px; }
  }
}
.postit_note.readonly {
	background-color: #FDFDE5;
}

/* Button style  */
.postit_button {
	font: bold 16px Helvetica, Arial, sans-serif;
	color: #FFFFFF;
	padding: 1em 2em;
	background: linear-gradient(top, rgba(0,0,0,.15), rgba(0,0,0,.3));
	background-color: #00CC00;
	border-radius: 3px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.3),inset 0 -1px 2px -1px rgba(0,0,0,.5), inset 0 1px 2px 1px rgba(255,255,255,.3);
	text-shadow: 0 -1px 0 rgba(0,0,0,.3), 0 1px 0 rgba(255,255,255,.3);
	text-decoration: none;
	transition: transform .150s, background .01s;
	@extend .noflick;

	&:hover {
		background-color: #00EE00;
		box-shadow: 
      0 0 0 0 rgba(0,0,0,.3),
      inset 0 -1px 2px -1px rgba(0,0,0,.5), 
      inset 0 1px 2px 1px rgba(255,255,255,.3);
	}

	&:active {
		background: linear-gradient(bottom, rgba(0,0,0,.15), rgba(0,0,0,.3));
		background-color: #00CC00;
		text-shadow: 0 1px 0 rgba(0,0,0,.3), 0 -1px 0 rgba(255,255,255,.3);
		box-shadow: inset 0 1px 2px rgba(0,0,0,.3), inset 0 -1px 2px rgba(255,255,255,.3);
		outline: none;
	}

	&.postit_remove {
		position: absolute;
		top: 5px; right: 5px;
		width: 36px; height: 36px;
		padding: 10px;
		background-color: #E01C12;
		border-color: #B30000;
		border-radius: 50%;

		&:hover {
			background-color: #EF0005;
		}
		&:after {
      content: url(closebutton.svg);
      position: absolute;
      left: 0; top: 0;
    }
	}
}

#postit_add_new {
	position: fixed;
	top: 20px;
	right: 20px;
	z-index: 100;
}

