/* (c) Amplify */
@charset "UTF-8";

.polypad {
	--canvas-bg: #fff;
	--canvas-fg: #181824
}[theme=dark] .polypad {
	--canvas-bg: #22212e;
	--canvas-fg: #e2e1e6
}

.polypad svg.overlay,x-polypad {
	stroke-linecap: round;
	stroke-linejoin: round;
	text-anchor: middle
}

.polypad {
	--tile-stroke: var(--canvas-bg);
	--stroke-adjustment: 1;
	--stroke-width-0: 1px;
	--stroke-width-1: 2px;
	--stroke-width-2: 4px;
	--stroke-width-3: 6px
}



.polypad .high-contrast {
	--tile-stroke: var(--canvas-fg);
	--stroke-width-0: 2px;
	--stroke-width-1: 2px;
	--stroke-width-2: 4px
}

.polypad {
	--ui-bg: #3a3645;
	--ui-fg: hsla(0,0%,100%,.6);
	--ui-fg-active: hsla(0,0%,100%,.9);
	--ui-fg-hover: #fff;
	--ui-fg-inactive: hsla(0,0%,100%,.35);
	--ui-fg-disabled: hsla(0,0%,100%,.25);
	--ui-button: hsla(0,0%,100%,.2);
	--ui-button-disabled: hsla(0,0%,100%,.1);
	--ui-border: none;
	--ui-shadow: 0 3px 8px rgba(0,0,0,.3);
	--ui-radius: 6px;
	--ui-hover: transparent;
	--sidebar-bg: #292735;
	--sidebar-fg: hsla(0,0%,100%,.8);
	--sidebar-border: 1px solid #716e79;
	--focus-color: #0f82f2
}

.polypad.large-ui {
	font-family: Quicksand,Helvetica,sans-serif;
	--ui-border: 2px solid #716e79;
	--ui-shadow: 0 6px 0 #716e79;
	--ui-radius: 14px;
	--ui-hover: #29548a;
	--sidebar-border: var(--ui-border)
}

.polypad.light-ui {
	--ui-bg: #ededed;
	--ui-fg: #5f5f5f;
	--ui-fg-active: #4c4c4c;
	--ui-fg-hover: #303030;
	--ui-fg-inactive: rgba(95,95,95,.35);
	--ui-fg-disabled: rgba(95,95,95,.25);
	--ui-shadow: 0 2px 6px rgba(0,0,0,.2),0 0 0 1px rgba(0,0,0,.1);
	--ui-button: rgba(95,95,95,.25);
	--ui-button-disabled: rgba(95,95,95,.1);
	--sidebar-bg: #ededed;
	--sidebar-fg: #5f5f5f;
	--sidebar-border: 1px solid #a6a6a6
}

.polypad.large-ui.light-ui {
	--ui-hover: #c1d8ee;
	--ui-border: 2px solid #a6a6a6;
	--ui-shadow: 0 6px 0 #a6a6a6;
	--sidebar-border: var(--ui-border)
}

#pp-sidebar {
	border-radius: var(--ui-radius);
	box-shadow: var(--ui-shadow);
	color: var(--sidebar-fg);
	height: 40px;
	left: 8px;
	position: absolute;
	top: 8px;
	transition: height .4s ease-out,width .4s ease-out;
	z-index: 7
}

#pp-sidebar.animating {
	overflow: hidden
}

#pp-sidebar.open {
	height: calc(100% - 16px)
}

.large-ui #pp-sidebar.open {
	height: calc(100% - 22px)
}

#pp-sidebar .tabs-header {
	display: flex;
	margin-bottom: 1px
}

#pp-sidebar .tabs-header button {
	background: var(--ui-bg);
	border-right: var(--ui-border);
	color: var(--ui-fg);
	cursor: pointer;
	display: block;
	flex-grow: 1;
	height: 40px;
	overflow: hidden;
	position: relative;
	transition: color .2s,background .2s,border .4s,flex-grow .4s
}

#pp-sidebar .tabs-header button:first-child {
	border-top-left-radius: var(--ui-radius)
}



#pp-sidebar .tabs-header button x-icon {
	display: block;
	margin: 0 12px
}

#pp-sidebar .tabs-header button span {
	left: 44px;
	opacity: 0;
	position: absolute;
	top: 7px;
	transition: opacity .2s;
	white-space: nowrap
}

#pp-sidebar .tabs-header button.active,#pp-sidebar .tabs-header button:focus,#pp-sidebar .tabs-header button:hover {
	background: var(--sidebar-bg);
	color: var(--ui-fg-hover)
}

#pp-sidebar .tabs-header button.active span {
	opacity: 1
}

#pp-sidebar .tabs-header button.active:hover .close {
	opacity: .5;
	transition-delay: .6s
}

#pp-sidebar .tabs-header button .badge {
	background: #cd0e66;
	border-radius: 100%;
	height: 12px;
	position: absolute;
	right: 6px;
	top: 6px;
	width: 12px
}

#pp-sidebar.open .tabs-header button {
	border-right: var(--sidebar-border);
	flex-grow: 0
}

.light-ui #pp-sidebar.open .tabs-header button:not(.active) {
	background: var(--ui-fg-inactive)
}

#pp-sidebar.open .tabs-header button.active {
	flex-grow: 1000
}

#pp-sidebar .tabs-body {
	background: var(--sidebar-bg);
	border-radius: 0 0 var(--ui-radius) var(--ui-radius);
	border-top: var(--sidebar-border);
	bottom: 0;
	position: absolute;
	top: 40px;
	width: 100%
}

#pp-sidebar .tabs-panel {
	height: 100%;
	left: 0;
	overflow: auto;
	position: absolute;
	top: 0;
	width: 100%;
	-webkit-overflow-scrolling: touch;
	display: none;
	overscroll-behavior: contain;
	transition: transform .4s ease-out
}

#pp-sidebar .tabs-panel.left {
	transform: translateX(-100%)
}

#pp-sidebar .tabs-panel.right {
	transform: translateX(100%)
}

#pp-sidebar h2,#pp-sidebar h3 {
	border-top: var(--sidebar-border);
	font-weight: 600;
	margin: 0;
	padding: 2px 16px
}

#pp-sidebar h2 {
	font-size: 18px;
	line-height: 36px
}

#pp-sidebar h2:first-child {
	border: none;
	margin-top: 6px
}

#pp-sidebar h3 {
	font-size: 16px;
	letter-spacing: .01em;
	line-height: 30px;
	padding-left: 9px
}

#pp-sidebar h2 x-icon {
	background: currentColor;
	fill: #fff;
	border-radius: 100%;
	margin: 0 8px -6px -6px;
	padding: 3px
}

#pp-sidebar h2.m-red span {
	color: #e00f70
}

#pp-sidebar h2.m-purple span {
	color: #865bcc
}

#pp-sidebar .warn {
	margin: 20px 16px;
	text-align: center
}

#pp-sidebar .warn>x-icon {
	display: block;
	margin: 0 auto 6px
}

#pp-sidebar .warn p {
	line-height: 1.6;
	margin: 0
}

#pp-sidebar .warn .s-btn-row {
	margin-top: 12px
}

#pp-sidebar .section-block {
	margin: 0 16px 16px 42px
}

#pp-sidebar .form-row input,#pp-sidebar .form-row select,#pp-sidebar .s-btn {
	height: 28px;
	line-height: 28px;
	transition: background .2s,color .2s
}

#pp-sidebar .title-options {
	display: flex;
	margin-top: -36px;
	position: absolute;
	right: 10px
}

#pp-sidebar .title-options a,#pp-sidebar .title-options button,#pp-sidebar .title-options x-icon {
	display: block
}

#pp-sidebar .title-options a,#pp-sidebar .title-options button {
	border-radius: 4px;
	color: hsla(0,0%,100%,.7);
	cursor: pointer;
	margin: 0 2px;
	padding: 4px;
	transition: color .2s,background .2s
}

#pp-sidebar .title-options a:focus,#pp-sidebar .title-options a:hover,#pp-sidebar .title-options button:focus,#pp-sidebar .title-options button:hover {
	background: hsla(0,0%,100%,.25);
	color: #fff
}

#pp-sidebar .input-field {
	box-sizing: border-box;
	height: 30px;
	line-height: 28px
}

#pp-sidebar .s-btn {
	background: hsla(0,0%,100%,.25);
	color: hsla(0,0%,100%,.9);
	font-size: 15px;
	font-weight: 600;
	padding: 0 10px;
	transition: background .2s,color .2s
}

#pp-sidebar .s-btn x-icon {
	margin: 0 2px -4px -1px
}

#pp-sidebar .s-btn:first-child {
	border-radius: 20px 0 0 20px;
	padding-left: 12px
}

#pp-sidebar .s-btn:last-child {
	border-bottom-right-radius: 20px;
	border-top-right-radius: 20px;
	padding-right: 12px
}

#pp-sidebar .s-btn:focus,#pp-sidebar .s-btn:hover {
	background: hsla(0,0%,100%,.4);
	color: #fff
}

#pp-sidebar .s-btn.delete:focus,#pp-sidebar .s-btn.delete:hover {
	background: rgba(205,14,102,.8)
}

#pp-sidebar .s-btn.save {
	background: rgba(34,171,36,.8)
}

#pp-sidebar .s-btn.save:focus,#pp-sidebar .s-btn.save:hover {
	background: #22ab24
}

#pp-sidebar .s-btn.blue {
	background: rgba(15,130,242,.8)
}

#pp-sidebar .s-btn.blue:focus,#pp-sidebar .s-btn.blue:hover {
	background: #0f82f2
}

#pp-sidebar .s-btn-row .s-btn {
	margin-right: 1px
}

#pp-sidebar .s-btn-row .s-btn:last-child {
	margin: 0
}

#pp-sidebar .s-btn-row.loading {
	background: url(/images/loading-white.gif) 50% no-repeat;
	background-size: 20px 20px
}

#pp-sidebar .s-btn-row.loading .s-btn {
	visibility: hidden
}

#pp-sidebar .form-row {
	align-items: center;
	display: flex;
	font-size: 15px;
	margin-bottom: 2px;
	padding: 2px 0
}

#pp-sidebar .form-row>x-icon {
	margin-right: 6px
}

#pp-sidebar .form-row span {
	display: block;
	flex-grow: 1;
	font-weight: 600
}

#pp-sidebar .form-row .input-field {
	width: 140px
}

#pp-sidebar .form-row .input-pair {
	border-radius: 4px 0 0 4px;
	width: 70px
}

#pp-sidebar .form-row .input-pair+.input-pair {
	border-left: none;
	border-radius: 0 4px 4px 0
}

#pp-sidebar .form-row .s-btn x-icon {
	margin: 0 -3px -4px
}



#pp-sidebar {
	--canvas-bg: #fff;
	--canvas-fg: #181824
}

#pp-sidebar svg {
	stroke-linecap: round;
	stroke-linejoin: round;
	text-anchor: middle
}

#pp-sidebar text {
	pointer-events: none
}

#pp-sidebar .source-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
	margin: 0 auto;
	padding-right: 6px
}

#pp-sidebar .source-wrap:first-child {
	margin-top: 4px
}

#pp-sidebar .source-wrap:last-child {
	margin-bottom: 12px
}

#pp-sidebar .source-wrap>.source,#pp-sidebar .source-wrap>svg {
	margin: 3px 0
}

#pp-sidebar .source-wrap>.source.tight {
	margin: 0
}

#pp-sidebar .source-wrap .source {
	cursor: grab;
	touch-action: none
}

#pp-sidebar .source-wrap+.source-wrap {
	border-top: var(--sidebar-border);
	margin-top: 10px;
	padding-top: 6px
}

#pp-sidebar .caption,#pp-sidebar .source:after,#pp-sidebar .subtitle {
	color: var(--ui-fg);
	display: block;
	font-size: 14px;
	line-height: 1.2;
	text-align: center;
	width: 100%
}

#pp-sidebar .source:after {
	content: attr(data-caption);
	font-size: 12px
}

#pp-sidebar .caption {
	box-sizing: border-box;
	margin: 0;
	padding: 0 16px
}

#pp-sidebar .subtitle {
	border-top: var(--sidebar-border);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: .3px;
	margin: 16px 0 4px;
	padding-top: 12px
}

#pp-sidebar .subtitle:first-child {
	border: 0;
	margin-top: 6px;
	padding: 0
}

#pp-sidebar .polypad-library .caption {
	margin-bottom: 16px
}

#pp-sidebar .primes {
	align-items: center;
	display: flex;
	flex-grow: 1;
	justify-content: center;
	margin: 8px 20px 6px
}

#pp-sidebar .primes input {
	margin-right: 12px;
	width: 64px
}

.light-ui #pp-sidebar {
	--canvas-bg: #3a3645;
	--canvas-fg: var(--ui-bg)
}

.light-ui #pp-sidebar .ui-light-invert {
	--canvas-bg: var(--ui-bg);
	--canvas-fg: #3a3645
}

.light-ui #pp-sidebar img.ui-light-invert {
	filter: invert(.5)
}

#pp-file .canvas-title {
	border-bottom: 1px solid transparent;
	box-sizing: border-box;
	cursor: text;
	width: 240px
}

#pp-file .canvas-title:focus,#pp-file .canvas-title:hover {
	background: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22rgba(255%2C%20255%2C%20255%2C%200.8)%22%20d%3D%22m3%2017.46v3.04c0%20.28.22.5.5.5h3.04c.13%200%20.26-.05.35-.15l10.92-10.91-3.75-3.75-10.91%2010.91c-.1.1-.15.22-.15.36zm17.71-10.42c.39-.39.39-1.02%200-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41%200l-1.83%201.83%203.75%203.75z%22%2F%3E%3C%2Fsvg%3E") no-repeat top 2px right 0 /20px 20px;
	border-bottom: 1px solid #65636d;
	padding-right: 20px
}

#pp-file .form-row input:first-child {
	border-radius: 5px 0 0 5px;
	border-right: none;
	cursor: pointer;
	flex-grow: 1
}

#pp-file .form-row .s-btn:last-child {
	border-radius: 0 4px 4px 0
}

#pp-file .recover {
	color: var(--ui-fg);
	display: block;
	font-size: 14px;
	margin-top: -6px
}

#pp-file h2 label {
	float: right;
	margin-top: 12px
}

#pp-file h2 .s-btn {
	float: right
}

#share .warn {
	background: rgba(205,14,102,.2);
	border-radius: 6px;
	padding: 6px;
	text-align: center
}

#share pre {
	cursor: text;
	font-size: 14px;
	margin: 24px 0 0;
	padding: 8px 10px;
	-webkit-user-select: all;
	-moz-user-select: all;
	user-select: all;
	white-space: normal;
	word-break: break-word
}

#pp-customise .form-row span {
	font-weight: 400
}

#pp-customise .form-row.control {
	margin-top: 6px
}

#pp-customise .form-row .input-field {
	width: 100px
}

#pp-customise .form-row .input-pair {
	width: 50px
}

#pp-customise h4 {
	border-top: var(--sidebar-border);
	color: var(--ui-fg);
	font-size: 12px;
	margin: 10px 0 6px;
	padding-top: 10px;
	text-transform: uppercase
}

#pp-customise p.bg-warn {
	color: hsla(0,0%,100%,.5);
	font-size: 13px;
	line-height: 1.4;
	margin: 2px 0 8px
}

#pp-customise p.caption {
	font-size: 13px;
	line-height: 1.35;
	padding: 0 0 0 23px;
	text-align: left
}

#pp-customise p.caption a,#pp-customise p.caption button {
	color: #0f82f2;
	margin: 0 1px
}

#pp-customise p.caption a:focus,#pp-customise p.caption a:hover,#pp-customise p.caption button:focus,#pp-customise p.caption button:hover {
	text-decoration: underline
}

#pp-customise .form-row.color {
	position: relative
}

#pp-customise .form-row.color input {
	height: 26px;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 2px;
	width: 64px;
	z-index: -1
}

#pp-customise .form-row.color .swatch {
	border: 1px solid hsla(0,0%,60%,.5);
	border-radius: 4px;
	flex-grow: 0;
	height: 26px;
	width: 98px
}

#pp-customise .form-row.color input:focus+.swatch {
	border-color: #0f82f2;
	box-shadow: 0 0 0 3px rgba(15,130,242,.5);
	outline: none
}

#pp-sidebar .top-nav {
	background: var(--sidebar-bg);
	border-bottom: var(--sidebar-border);
	padding: 10px 10px 10px 16px;
	position: sticky;
	top: 0;
	z-index: 1
}

#pp-sidebar .top-nav .input-field {
	flex-grow: 1;
	margin-right: 6px;
	padding: 0 8px;
	text-align: left
}

#pp-sidebar .top-nav .tooltip {
	left: auto;
	right: 0;
	top: 34px;
	transform: none
}

#pp-sidebar .file {
	align-items: center;
	cursor: pointer;
	display: flex;
	padding: 4px 8px 4px 16px;
	transition: background .2s
}

#pp-sidebar .file.moving,#pp-sidebar .file:focus,#pp-sidebar .file:focus-within,#pp-sidebar .file:hover {
	background: var(--ui-button)
}

#pp-sidebar .folder-children {
	overflow: hidden;
	padding-left: 24px
}

#pp-sidebar .folder-icon {
	margin-right: 8px;
	stroke: var(--ui-fg-active);
	fill: var(--ui-fg-inactive);
	opacity: .7
}

#pp-sidebar .folder-arrow {
	margin: 0 2px 0 -4px;
	transition: transform .3s
}

#pp-sidebar .folder-arrow.open {
	transform: rotate(90deg)
}

#pp-sidebar .folder-overlay {
	margin: 2px 17px 0 -31px
}

#pp-sidebar .selected {
	background: rgba(15,130,242,.5)
}

#pp-sidebar .thumb {
	background: #fff 50%;
	background-size: contain;
	border-radius: 4px;
	flex-shrink: 0;
	height: 32px;
	margin-right: 8px;
	width: 48px
}

#pp-sidebar .title {
	flex: 1 1;
	line-height: 1;
	width: 50px
}

#pp-sidebar .title input {
	font-size: 16px;
	width: 100%
}

#pp-sidebar .title input[disabled] {
	pointer-events: none
}

#pp-sidebar .title input:focus {
	border-bottom: var(--sidebar-border)
}

#pp-sidebar .title .meta {
	font-size: 11px;
	opacity: .4
}

#pp-sidebar .actions {
	display: flex;
	margin-left: 4px
}

#pp-sidebar .actions x-icon {
	display: block
}

#pp-sidebar .actions a,#pp-sidebar .actions button {
	border-radius: 4px;
	margin-left: 2px;
	padding: 3px;
	position: relative;
	transition: background .2s
}

#pp-sidebar .actions a:focus,#pp-sidebar .actions a:hover,#pp-sidebar .actions button:focus,#pp-sidebar .actions button:hover {
	background: var(--ui-button)
}

#pp-sidebar .file.moving {
	background: var(--sidebar-bg);
	border: 2px solid #0f82f2;
	box-shadow: 4px 4px 18px rgba(0,0,0,.5);
	margin: -2px;
	position: absolute;
	width: 276px;
	z-index: 10
}

#pp-sidebar .file .actions {
	display: none
}

#pp-sidebar .file:focus .actions,#pp-sidebar .file:focus-within .actions {
	display: flex
}

.polypad {
	background: var(--canvas-bg);
	bottom: 0;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 54px;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none
}

.polypad.embed {
	top: 0
}

#x-drag {
    background: var(--ui-fg);
    border-radius: 4px;
    display: block;
    height: 8px;
    margin: 12px 0;
    position: relative;
}
#x-drag {
    background: var(--ui-fg);
    border-radius: 4px;
    display: block;
    height: 8px;
    margin: 12px 0;
    position: relative;
}

#x-drag .handle {
    background: var(--ui-fg-hover);
    border-radius: 100%;
    color: var(--ui-bg);
    cursor: grab;
    font-size: 14px;
    height: 20px;
    left: 0;
    line-height: 20px;
    margin: -6px 0;
    position: absolute;
    text-align: center;
    touch-action: none;
    width: 20px;
}
#x-drag .handle {
    background: var(--ui-fg-hover);
    border-radius: 100%;
    color: var(--ui-bg);
    cursor: grab;
    font-size: 14px;
    height: 20px;
    left: 0;
    line-height: 20px;
    margin: -6px 0;
    position: absolute;
    text-align: center;
    touch-action: none;
    width: 20px;
}

@media print {
	header,pp-actionbar,pp-settings,#pp-sidebar,pp-toolbar {
		display: none!important
	}

	.polypad {
		top: 0
	}
}

#pp-help {
	font-size: 15px;
	line-height: 1.4;
	-webkit-user-select: text;
	-moz-user-select: text;
	user-select: text
}

#pp-help .top-nav select.input-field {
	background-position: top 9px right 5px;
	font-size: 18px;
	font-weight: 600;
	height: 36px;
	line-height: 36px;
	padding: 0 20px 0 8px;
	text-overflow: ellipsis
}

#pp-help button.back {
	position: relative
}

#pp-help button.back x-icon {
	display: block;
	margin-right: 6px
}

#pp-help button.back:disabled {
	cursor: default;
	opacity: .5
}

#pp-help button.back .tooltip {
	left: 0;
	right: auto
}

#pp-help button.next {
	border-radius: 4px;
	float: right;
	margin: -8px -4px 0 0;
	padding: 4px 6px 6px 12px;
	transition: background .2s,color .2s;
	width: -moz-fit-content;
	width: fit-content
}

#pp-help button.next x-icon {
	margin: 0 0 -6px 2px
}

#pp-help button.next:focus,#pp-help button.next:hover {
	background: hsla(0,0%,100%,.2);
	color: #fff
}

#pp-help .help-block {
	padding: 18px
}

#pp-help .help-block:after {
	clear: both;
	content: "";
	display: block
}

#pp-help hr {
	background: var(--ui-border);
	margin-top: 2em
}

#pp-help h3 {
	border: none;
	font-size: 18px;
	line-height: 1.2;
	margin: 22px 0 10px;
	padding: 0
}

#pp-help h3:first-child {
	margin-top: 0
}

#pp-help ol,#pp-help p,#pp-help ul {
	color: var(--ui-fg);
	margin-bottom: .8em
}

#pp-help ul {
	margin-left: 1em
}

#pp-help li:last-child {
	margin: 0
}

#pp-help h3,#pp-help strong {
	color: var(--ui-fg-active)
}

#pp-help li x-icon,#pp-help p x-icon {
	margin: 0 -1px -2px 1px
}

#pp-help button[data-to] {
	background: var(--ui-button);
	border-radius: 20px;
	color: var(--ui-fg-active);
	margin: 0 1px;
	padding: 0 8px;
	white-space: nowrap
}

#pp-help button[data-to]:focus,#pp-help button[data-to]:hover {
	background: var(--ui-fg-inactive)
}

#pp-help button[data-to] x-icon {
	margin-left: 0
}

#pp-help a.panel {
	align-items: center;
	background: var(--ui-button);
	border-radius: 6px;
	display: flex;
	min-height: 40px;
	transition: background .2s
}

#pp-help a.panel span:first-child {
	align-self: stretch;
	background: #fff 50%/cover no-repeat;
	border-radius: 6px 0 0 6px;
	flex: 0 0 72px
}

#pp-help a.panel span:last-child {
	color: #fff;
	flex-grow: 1;
	padding: 8px 10px
}

#pp-help a.panel:focus,#pp-help a.panel:hover {
	background: var(--ui-fg-inactive);
	color: #fff;
	text-decoration: none
}

#pp-help code {
	background: var(--ui-button);
	border: 1.5px solid var(--ui-fg-inactive);
	border-radius: 4px;
	color: var(--ui-fg-active);
	font-family: inherit;
	font-size: 90%;
	font-weight: 600;
	line-height: 1;
	margin: 0 2px;
	padding: 0 3px
}
#pp-sidebar .tabs-header button:last-child {
	border-right: 0!important;
	border-top-right-radius: var(--ui-radius)
}