:root {
        --hairline: 1px;
        --gap: 40px;
        --slab: #FFFFFFB0;
        --body: #FFF;
	--caption: #206000;
	--menu: #FFB040;
	--menu-border: #805820;
        --menu-highlight: #FFD8A0;
	--table-color: #D0FFC0;
	--table-focus: #B6E0A8;
        --ref-border: #000;
	--regexbuddyhighlight-color: #FF0;
        --regexbuddyhighlight-text: #000;
}
.dark {
        --slab: #1C1C1CB0;
        --body: #1C1C1C;
	--caption: #90E060;
	--menu: #A60;
	--menu-border: #FB4;
        --menu-highlight: #941;
	--table-color: #406020;
	--table-focus: #608050;
        --ref-border: #FFF;
	--regexbuddyhighlight-color: #880;
        --regexbuddyhighlight-text: #FFF;
}
@media (resolution: 1.25dppx) { :root { --hairline: 0.8px; } }
@media (resolution: 1.5dppx)  { :root { --hairline: calc(1px / 1.5); } }
@media (resolution: 1.75dppx) { :root { --hairline: calc(2px / 1.75); } }
@media (resolution: 2.25dppx) { :root { --hairline: calc(2px / 2.25); } }
@media (resolution: 2.5dppx)  { :root { --hairline: calc(2px / 2.5); } }
@media (resolution: 3.5dppx)  { :root { --hairline: calc(3px / 3.5); } }
body {
	background-color: #406020;
	color: black;
	margin: 0;
	padding: 0;
	font-family: Segoe UI, Arial, Helvetica, sans-serif;
	font-size: 14px;
	line-height: 19px;
	font-weight: normal;
}
.dark body {
	background-color: #203010;
	color: white;
}
p, ol, ul {
	margin: 0 0 19px;
}
p.error {
	color: red;
	font-weight: bold;
}
#wait {
	padding-left: 14px;
}
ul ul {
	margin-bottom: 0;
}
ol ol {
	margin-bottom: 0;
}
.small {
	font-size: 11px;
	line-height: 15px;
}
.last {
	margin-bottom: 0;
}
.noindent {
	margin-left: 0;
	padding-left: 19px;
}
h1 {
	font-size: 32px;
	font-weight: bold;
	font-variant: normal;
	line-height: 40px;
	color: var(--caption);
	border-bottom: solid var(--caption) 3px;
	padding-bottom: 3px;
	margin: 0 0 19px;
	width: fit-content;
}
h2, h3 {
	font-size: 28px;
	font-weight: bold;
	font-variant: normal;
	line-height: 36px;
	color: var(--caption);
	border-bottom: solid var(--caption) 3px;
	padding-bottom: 3px;
	margin: 38px 0 19px;
	width: fit-content;
}
h4 {
	font-size: 21px;
	font-weight: bold;
	font-variant: normal;
	line-height: 27px;
	color: var(--caption);
	border-bottom: solid var(--caption) 2px;
	padding-bottom: 2px;
	margin: 19px 0;
	width: fit-content;
}
video {
	max-width: 100%;
	height: auto;
}
img {
	border: 0;
}
img.screen {
	max-width: 100%;
	height: auto;
}
img.right {
	margin-left: 19px;
}
img.btnlst {
	align: left;
	margin: 1pt 4pt 1pt 0;
	width: 16px;
	height: 16px;
	vertical-align: middle;
}
img.btntext {
	vertical-align: middle;
}
img.btnlstblank {
	align: left;
	margin: 1pt 4pt 1pt 16px;
	vertical-align: middle;
}
h2 img, h3 img {
	align: left;
	margin: 1pt 6pt 0 0;
	width: 27px;
	height: 27px;
}
a:link {
	color: #0000FF;
}
a:visited {
	color: #000080;
}
a:hover {
	color: #FFF;
	background: #0000FF;
}
a:active {
	color: #FFF;
	background: #FF0000;
}
.dark a:link {
	color: #60C0FF;
}
.dark a:visited {
	color: #C0E0FF;
}
.dark a:hover {
	color: #000;
	background: #60C0FF;
}
.dark a:active {
	color: #FFF;
	background: #FF0000;
}
a.img:hover, a.img:active {
	background: none;
}
div.testimonial {
	background: var(--table-color);
	border: solid var(--caption) 2px;
	padding-left: 10px;
	padding-top: 9px;
	padding-bottom: 10px;
	padding-right: 10px;
	margin-bottom: 19px;
}
div.coupon {
	background: #FFE0A0;
	border: solid #B06000 2px;
	padding-left: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
}
.dark div.coupon {
	background: #B06000;
	border-color: #FFE0A0;
}
form.buynow {
	background: #FFD080;
	border: solid #805800 2px;
	text-align: center;
	padding-left: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	padding-right: 10px;
}
.dark form.buynow {
	background: #907040;
	border-color: #FFD080;
}
table.reference {
	border-collapse: collapse;
  	border: 2px solid var(--ref-border);
}
td.yes {
	background-color: #E0FFE0;
}
td.fail {
	background-color: #FFF4E8;
}
.dark td.yes {
	background-color: #141;
}
.dark td.fail {
	background-color: #551911;
}
table.reference th, table.reference td {
	border-right: var(--hairline) solid var(--ref-border);
	border-bottom: var(--hairline) solid var(--ref-border);
	padding: 4px;
}
table.download {
	background-color: var(--table-color);
	border: 10px solid var(--table-focus);
	padding: 10px;
	margin-bottom: 19px;
}
table.quicktable {
	background-color: var(--table-color);
	margin-bottom: 19px;
}
table.quicktable tr:nth-child(even) {
	background-color: var(--table-focus);
}
td.price, th.price {
	padding-left: 20px;
	text-align: right;
}
.strikeprice {
	position: relative;
}
.strikeprice:before {
	position: absolute;
	content: "";
	left: 0;
	top: 50%;
	right: 0;
	border-top: 1.5px solid;
	border-color: inherit;
	-webkit-transform:rotate(-5deg);
	-moz-transform:rotate(-5deg);
	-ms-transform:rotate(-5deg);
	-o-transform:rotate(-5deg);
	transform:rotate(-5deg);
}
td.left {
	padding-right: 20px;
	vertical-align: top;
}
td.right {
	padding-left: 20px;
	width: 320px;
	vertical-align: top;
}
td.half {
	padding-left: 20px;
	width: 460px;
	vertical-align: top;
}
tr.line {
	background-color: var(--table-color);
}
tr.focus {
	background-color: var(--table-focus);
}
.menunoscript {
	margin: 0 20px 0 24px;
}
.submenunoscript {
	margin: 0 20px 24px 24px;
	font-size: 11px;
	line-height: 15px;
}
.menu {
	display: flex;
	flex-wrap: wrap;
	border-left: var(--hairline) solid var(--menu-border);
	margin: 0 28px 14px 28px;
	white-space: nowrap;
}
.menu div {
	background-color: var(--menu);
}
.menu div a div {
	padding-left: 8px;
	padding-right: 8px;
	padding-top: 4px;
	padding-bottom: 4px;
	background: none;
	border-right: var(--hairline) solid var(--menu-border);
	border-top: var(--hairline) solid var(--menu-border);
	border-bottom: var(--hairline) solid var(--menu-border);
}
.menu div a div:hover {
	background-color: var(--menu-highlight);
}
.menu table {
	background-color: var(--menu);
	border-collapse: collapse;
	box-shadow: 4px 4px 6px 0 #0006;
}
.dark .menu table {
	box-shadow: 5px 5px 5px 0 #000;
}
.menu table td {
	border: var(--hairline) solid var(--menu-border);
}
.menu td a div {
	border: none;
}
.menu a {
	color: #000;
	background: none;
	text-decoration: none;
}
.dark .menu a {
	color: #FFF;
}
.menu img {
	margin-right: 7px;
	vertical-align: -4px;
}
.bulb {
	position: absolute;
	top: 10px;
	right: 14px;
	padding: 4px;
	background-color: var(--menu);
	border: var(--hairline) solid var(--menu-border);
}
.bulb:hover {
	background-color: var(--menu-highlight);
}
#background {
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: -1;
}
#label {
	margin-left: 18px;
}
#label.tail {
	margin-top: 18px;
}
#label.middle {
	margin-top: 9px;
}
#icon {
	margin: 20px;
	vertical-align: top;
}
#icon96 {
	margin: 0 0 0 20px;
	vertical-align: top;
	width: 96px;
	height: 96px;
}
#icon108 {
	margin: 0 0 1px 24px;
	vertical-align: top;
	width: 108px;
	height: 108px;
}
div.right {
	width: 960px;
	display: grid;
	grid-template-columns: 1fr 320px;
	grid-gap: var(--gap);
}
div.half {
	width: 960px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: var(--gap);
}
#manual {
	width: 960px;
	display: grid;
	grid-template-columns: 270px 1fr;
	grid-gap: var(--gap);
}
#toc {
	text-align: left; /*not needed*/
}
#menutoc {
	display: none;
	margin-left: 0;
}
#toc div, #idx div {
	margin: 0 0 0 20px;
	display: none;
}
#idx {
	text-align: left; /*not needed*/
	display: none;
}
#topic h2 {
	margin-top: 5px !important;
}
td#topic { /*not needed*/
	padding-left: 20px;
	width: 650px;
	vertical-align: top;
}
#loading {
	color: white;
	background-color: red;
	font-weight: bold;
	padding: 4px;
	margin: 0;
	position: absolute;
}
#slab {
	position: relative;
	width: 974px;
	background-color: var(--slab);
	box-shadow: 0 0 7px 7px var(--slab);
}
#body {
	width: 960px;
	padding: 7px;
	box-shadow: 0 0 7px 7px var(--body);
	background-color: var(--body);
	margin-top: 28px !important;
}
#copyright {
	margin: 0 auto;
	padding: 14px 7px;
	font-size: 11px;
	line-height: 15px;
}
@media (max-width: 673px) {
	div.right {
		display: block;
	}
	div.half {
		display: block;
	}
	#manual {
		display: block;
	}
	#side {
		display: none;
	}
	#menutoc {
		display: flex;
	}
}
@media (max-width: 973px) {
	:root {
	        --gap: 32px;
	}
	div.right, div.half, #manual {
		width: 100%;
	}
	#slab {
		width: 100%;
	}
	#body {
		width: 100%;
		box-sizing: border-box;
	}
}
@media (max-width: 800px) {
	:root {
	        --gap: 20px;
	}
}
@media (min-width: 988px) {
	#slab {
		width: 988px;
	}
	#body {
		padding: 14px;
	}
}
@media (min-width: 1016px) {
	#body {
		margin: 14px;
	}
	#slab {
		width: 1016px;
		margin: 10px auto;
		padding: 5px;
	}
}
@media screen and (min-width: 988px) {
	#background { background-image: url(imgsite/mosaic.png); background-size: 540px 540px; }
	.dark #background { background-image: url(imgsitedark/mosaic.png); }
}
@media screen and (min-width: 988px) and (min-resolution: 1.25dppx) {
	#background { background-image: url(imgsite125/mosaic.png); background-size: 528px 528px; }
	.dark #background { background-image: url(imgsitedark125/mosaic.png); background-size: 528px 528px; }
}
@media screen and (min-width: 988px) and (min-resolution: 1.5dppx) {
	#background { background-image: url(imgsite150/mosaic.png); background-size: 540px 540px; }
	.dark #background { background-image: url(imgsitedark150/mosaic.png); background-size: 540px 540px; }
}
@media screen and (min-width: 988px) and (min-resolution: 1.75dppx) {
	#background { background-image: url(imgsite175/mosaic.png); background-size: 548.6px 548.6px; }
	.dark #background { background-image: url(imgsitedark175/mosaic.png); background-size: 548.6px 548.6px; }
}
@media screen and (min-width: 988px) and (min-resolution: 2.0dppx) {
	#background { background-image: url(imgsite200/mosaic.png); background-size: 540px 540px; }
	.dark #background { background-image: url(imgsitedark200/mosaic.png); background-size: 540px 540px; }
}
@media screen and (min-width: 988px) and (min-resolution: 2.25dppx) {
	#background { background-image: url(imgsite225/mosaic.png); background-size: 533.4px 533.4px; }
	.dark #background { background-image: url(imgsitedark225/mosaic.png); background-size: 533.4px 533.4px; }
}
@media screen and (min-width: 988px) and (min-resolution: 2.50dppx) {
	#background { background-image: url(imgsite250/mosaic.png); background-size: 540px 540px; }
	.dark #background { background-image: url(imgsitedark250/mosaic.png); background-size: 540px 540px; }
}
@media screen and (min-width: 988px) and (min-resolution: 3.00dppx) {
	#background { background-image: url(imgsite300/mosaic.png); }
	.dark #background { background-image: url(imgsitedark300/mosaic.png); }
}
.dark input[type=text], .dark select {
	border: 1px solid white;
	border-radius: 2px;
	outline: none;
	background-color: black;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	color: white;
	padding: 2px;
}
.dark input[type=text]:focus, .dark select:focus {
	border-color: var(--menu-border);
	outline: none;
}
.dark input[type=submit] {
	border: 1px solid #CCC;
	border-radius: 2px;
	background-color: #555;
	color: white;
	padding: 3px 9px;
}
.dark input[type=submit]:hover {
	background-color: #888;
}
.dark input[type=submit]:active {
	background-color: #222;
}
tt {
	font-family: 'Andale Mono', 'Lucida Console', monospace;
}
tt.match, tt.string {
	padding-top: var(--hairline);
	padding-bottom: var(--hairline);
}
tt.regex:not(:has(span)) {
	background-color: #FC6;
	padding-top: var(--hairline);
	padding-bottom: var(--hairline);
}
tt.replace:not(:has(span)) {
	background-color: #6CF;
	padding-top: var(--hairline);
	padding-bottom: var(--hairline);
}
.dark tt.regex:not(:has(span)) {
	background-color: #B70;
}
.dark tt.replace:not(:has(span)) {
	background-color: #07B;
}
tt.match {
	background-color: #EE5;
}
tt.string {
	background-color: #AF6;
}
.dark tt.match {
	background-color: #707000;
}
.dark tt.string {
	background-color: #373;
}
tt.match, tt.string, tt.syntax span {
	white-space: break-spaces;
}
tt.syntax {
	overflow-wrap: break-word;
}
tt span {
	padding-top: var(--hairline);
	padding-bottom: var(--hairline);
}
pre {
	font-family: 'Andale Mono', 'Lucida Console', monospace;
	font-size: 14px;
	line-height: 19px;
	font-weight: normal;
	margin: 10px 0;
	white-space: pre-wrap;
}
ul.left {
	padding-left: 0;
	list-style-position: inside;
}
.syntax { color: #000; background-color: #DDD; }
span.regexanchor { background-color: #B8B8F0; }
span.regexcapture1 { background-color: #B0E0B0; font-weight: bold; }
span.regexcapture2 { background-color: #C0E0A0; font-weight: bold; }
span.regexcapture3 { background-color: #A0E0C0; font-weight: bold; }
span.regexcccharesc { color: #1810FF; background-color: #E0D090; }
span.regexcclit { color: #181000; background-color: #E0D090; }
span.regexcclitesc { color: #1810FF; background-color: #E0D090; }
span.regexccopen { color: #181000; background-color: #F0E0A0; font-weight: bold; }
span.regexccrange { color: #181000; background-color: #E8D898; font-weight: bold; }
span.regexccrangecharesc { color: #1810FF; background-color: #E8D898; }
span.regexccrangelit { color: #181000; background-color: #E8D898; }
span.regexccspecial { color: #181000; background-color: #F0E0A0; }
span.regexcharesc { color: #00F; }
span.regexcomment { color: #8820A0; font-weight: bold; font-style: italic; }
span.regexerr { color: #F00; }
span.regexlitesc { color: #00F; }
span.regexlook1 { background-color: #B8B8F0; }
span.regexlook2 { background-color: #B8B8F0; }
span.regexlook3 { background-color: #B8B8F0; }
span.regexmeta { background-color: #D0B0F0; }
span.regexnest1 { background-color: #B0E0B0; }
span.regexnest2 { background-color: #C0E0A0; }
span.regexnest3 { background-color: #A0E0C0; }
span.regexquant { background-color: #B0D0F0; }
span.regexref { background-color: #B0D0F0; font-weight: bold; }
span.regexspecial { background-color: #B0D0F0; }
.dark .syntax { color: #FFF; background-color: #555; }
.dark span.regexanchor { color: #E8E8FF; background-color: #383880; }
.dark span.regexcapture1 { color: #E8FFE8; background-color: #307030; font-weight: bold; }
.dark span.regexcapture2 { color: #E8FFE8; background-color: #486818; font-weight: bold; }
.dark span.regexcapture3 { color: #E8FFE8; background-color: #186848; font-weight: bold; }
.dark span.regexcccharesc { color: #80D0FF; background-color: #684818; }
.dark span.regexcclit { color: #FFF0E0; background-color: #684818; }
.dark span.regexcclitesc { color: #80D0FF; background-color: #684818; }
.dark span.regexccopen { color: #FFF0E0; background-color: #886838; font-weight: bold; }
.dark span.regexccrange { color: #FFF0E0; background-color: #785828; font-weight: bold; }
.dark span.regexccrangecharesc { color: #80D0FF; background-color: #785828; }
.dark span.regexccrangelit { color: #FFF0E0; background-color: #785828; }
.dark span.regexccspecial { color: #FFF0E0; background-color: #886838; }
.dark span.regexcharesc { color: #80D0FF; }
.dark span.regexcomment { color: #D080FF; font-weight: bold; font-style: italic; }
.dark span.regexerr { color: #FFF038; }
.dark span.regexlitesc { color: #80D0FF; }
.dark span.regexlook1 { color: #E8E8FF; background-color: #383880; }
.dark span.regexlook2 { color: #E8E8FF; background-color: #383880; }
.dark span.regexlook3 { color: #E8E8FF; background-color: #383880; }
.dark span.regexmeta { color: #F0E0FF; background-color: #502870; }
.dark span.regexnest1 { color: #E8FFE8; background-color: #307030; }
.dark span.regexnest2 { color: #E8FFE8; background-color: #486818; }
.dark span.regexnest3 { color: #E8FFE8; background-color: #186848; }
.dark span.regexquant { color: #E0F0FF; background-color: #205070; }
.dark span.regexref { color: #E0F0FF; background-color: #205070; font-weight: bold; }
.dark span.regexspecial { color: #E0F0FF; background-color: #205070; }
ul.buddy { padding-left: 0; }
ul.buddy ul { padding-left: 0; }
ul.buddy li { list-style-type: none; padding-left: 24px; background-size: 18px; background-repeat: no-repeat; }
li.regexchar { background-image: url(https://www.regexbuddy.com/manual/btn/RegexLitChar.png); }
li.regexccchar { background-image: url(https://www.regexbuddy.com/manual/btn/RegexCCChar.png); }
li.regexstring { background-image: url(https://www.regexbuddy.com/manual/btn/RegexLitString.png); }
li.regexccrange { background-image: url(https://www.regexbuddy.com/manual/btn/RegexCCRange.png); }
li.regexcc { background-image: url(https://www.regexbuddy.com/manual/btn/RegexCC.png); }
li.regexescaped { background-image: url(https://www.regexbuddy.com/manual/btn/RegexLitEscaped.png); }
li.regexspecial { background-image: url(https://www.regexbuddy.com/manual/btn/RegexSpecial.png); }
li.regexanchor { background-image: url(https://www.regexbuddy.com/manual/btn/RegexAnchor.png); }
li.regexrepeat { background-image: url(https://www.regexbuddy.com/manual/btn/RegexRepeat.png); }
li.regexalternate { background-image: url(https://www.regexbuddy.com/manual/btn/RegexAlternate.png); }
li.regexcapture { background-image: url(https://www.regexbuddy.com/manual/btn/RegexCapture.png); }
@media screen and (min-resolution: 1.5dppx) {
	li.regexchar { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexLitChar.png); }
	li.regexccchar { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexCCChar.png); }
	li.regexstring { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexLitString.png); }
	li.regexccrange { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexCCRange.png); }
	li.regexcc { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexCC.png); }
	li.regexescaped { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexLitEscaped.png); }
	li.regexspecial { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexSpecial.png); }
	li.regexanchor { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexAnchor.png); }
	li.regexrepeat { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexRepeat.png); }
	li.regexalternate { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexAlternate.png); }
	li.regexcapture { background-image: url(https://www.regexbuddy.com/manual/btn150/RegexCapture.png); }
}
@media screen and (min-resolution: 2.0dppx) {
	li.regexchar { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexLitChar.png); }
	li.regexccchar { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexCCChar.png); }
	li.regexstring { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexLitString.png); }
	li.regexccrange { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexCCRange.png); }
	li.regexcc { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexCC.png); }
	li.regexescaped { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexLitEscaped.png); }
	li.regexspecial { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexSpecial.png); }
	li.regexanchor { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexAnchor.png); }
	li.regexrepeat { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexRepeat.png); }
	li.regexalternate { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexAlternate.png); }
	li.regexcapture { background-image: url(https://www.regexbuddy.com/manual/btn200/RegexCapture.png); }
}
@media screen and (min-resolution: 3.0dppx) {
	li.regexchar { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexLitChar.png); }
	li.regexccchar { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexCCChar.png); }
	li.regexstring { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexLitString.png); }
	li.regexccrange { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexCCRange.png); }
	li.regexcc { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexCC.png); }
	li.regexescaped { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexLitEscaped.png); }
	li.regexspecial { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexSpecial.png); }
	li.regexanchor { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexAnchor.png); }
	li.regexrepeat { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexRepeat.png); }
	li.regexalternate { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexAlternate.png); }
	li.regexcapture { background-image: url(https://www.regexbuddy.com/manual/btn300/RegexCapture.png); }
}