: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;
}
.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;
}
@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: 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;
}
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;
}
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.regex, tt.replace, tt.match, tt.string {
	white-space: nowrap;
	border-top: solid;
	border-bottom: solid;
	border-width: var(--hairline);
	padding-top: var(--hairline);
	padding-bottom: var(--hairline);
}
tt.regex {
	border-color: #FF6600;
	background-color: #FFF4E8;
}
tt.replace {
	border-color: #A0A000;
	background-color: #FFFFA0;
}
tt.match {
	border-color: #0066FF;
	background-color: #E8F4FF;
}
tt.string {
	border-color: #00A000;
	background-color: #E0FFE0;
}
.dark tt.regex {
	background-color: #B30;
	border-color: #E98;
}
.dark tt.replace {
	background-color: #772;
	border-color: #CC9;
}
.dark tt.match {
	background-color: #04C;
	border-color: #8AE;
}
.dark tt.string {
	background-color: #262;
	border-color: #9B9;
}
tt.code {
	white-space: nowrap;
}
ul.buddy {
	padding-left: 0;
}
ul.left {
	padding-left: 0;
	list-style-position: inside;
}
li.char { background-image: url(https://www.regexbuddy.com/manual/btn/char.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.string { background-image: url(https://www.regexbuddy.com/manual/btn/string.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.escaped { background-image: url(https://www.regexbuddy.com/manual/btn/escaped.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.special { background-image: url(https://www.regexbuddy.com/manual/btn/special.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.meta { background-image: url(https://www.regexbuddy.com/manual/btn/meta.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.option { background-image: url(https://www.regexbuddy.com/manual/btn/option.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.optiongroup { background-image: url(https://www.regexbuddy.com/manual/btn/optiongroup.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.anchor { background-image: url(https://www.regexbuddy.com/manual/btn/anchor.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.repeat { background-image: url(https://www.regexbuddy.com/manual/btn/repeat.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.backreference { background-image: url(https://www.regexbuddy.com/manual/btn/backreference.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.call { background-image: url(https://www.regexbuddy.com/manual/btn/call.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.void { background-image: url(https://www.regexbuddy.com/manual/btn/void.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.fail { background-image: url(https://www.regexbuddy.com/manual/btn/fail.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.group { background-image: url(https://www.regexbuddy.com/manual/btn/group.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.capture { background-image: url(https://www.regexbuddy.com/manual/btn/capture.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.atomic { background-image: url(https://www.regexbuddy.com/manual/btn/atomic.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.lookaround { background-image: url(https://www.regexbuddy.com/manual/btn/lookaround.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.conditional { background-image: url(https://www.regexbuddy.com/manual/btn/conditional.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.alternate { background-image: url(https://www.regexbuddy.com/manual/btn/alternate.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.error { background-image: url(https://www.regexbuddy.com/manual/btn/error.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.comment { background-image: url(https://www.regexbuddy.com/manual/btn/comment.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.tip { background-image: url(https://www.regexbuddy.com/manual/btn/tip.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.comparesame { background-image: url(https://www.regexbuddy.com/manual/btn/comparesame.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.comparediff { background-image: url(https://www.regexbuddy.com/manual/btn/comparediff.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.cc { background-image: url(https://www.regexbuddy.com/manual/btn/cc.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccchar { background-image: url(https://www.regexbuddy.com/manual/btn/ccchar.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccstring { background-image: url(https://www.regexbuddy.com/manual/btn/ccstring.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccspecial { background-image: url(https://www.regexbuddy.com/manual/btn/ccspecial.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccrange { background-image: url(https://www.regexbuddy.com/manual/btn/ccrange.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccintersect { background-image: url(https://www.regexbuddy.com/manual/btn/ccintersect.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccvoid { background-image: url(https://www.regexbuddy.com/manual/btn/ccvoid.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.ccfail { background-image: url(https://www.regexbuddy.com/manual/btn/ccfail.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.lb { background-image: url(https://www.regexbuddy.com/manual/btn/lb.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
li.cclb { background-image: url(https://www.regexbuddy.com/manual/btn/cclb.png); list-style-type: none; padding-left: 24px; background-size: 16px; background-repeat: no-repeat; }
@media screen and (min-resolution: 1.5dppx) {
	li.char { background-image: url(https://www.regexbuddy.com/manual/btn150/char.png); }
	li.string { background-image: url(https://www.regexbuddy.com/manual/btn150/string.png); }
	li.escaped { background-image: url(https://www.regexbuddy.com/manual/btn150/escaped.png); }
	li.special { background-image: url(https://www.regexbuddy.com/manual/btn150/special.png); }
	li.meta { background-image: url(https://www.regexbuddy.com/manual/btn150/meta.png); }
	li.option { background-image: url(https://www.regexbuddy.com/manual/btn150/option.png); }
	li.optiongroup { background-image: url(https://www.regexbuddy.com/manual/btn150/optiongroup.png); }
	li.anchor { background-image: url(https://www.regexbuddy.com/manual/btn150/anchor.png); }
	li.repeat { background-image: url(https://www.regexbuddy.com/manual/btn150/repeat.png); }
	li.backreference { background-image: url(https://www.regexbuddy.com/manual/btn150/backreference.png); }
	li.call { background-image: url(https://www.regexbuddy.com/manual/btn150/call.png); }
	li.void { background-image: url(https://www.regexbuddy.com/manual/btn150/void.png); }
	li.fail { background-image: url(https://www.regexbuddy.com/manual/btn150/fail.png); }
	li.group { background-image: url(https://www.regexbuddy.com/manual/btn150/group.png); }
	li.capture { background-image: url(https://www.regexbuddy.com/manual/btn150/capture.png); }
	li.atomic { background-image: url(https://www.regexbuddy.com/manual/btn150/atomic.png); }
	li.lookaround { background-image: url(https://www.regexbuddy.com/manual/btn150/lookaround.png); }
	li.conditional { background-image: url(https://www.regexbuddy.com/manual/btn150/conditional.png); }
	li.alternate { background-image: url(https://www.regexbuddy.com/manual/btn150/alternate.png); }
	li.error { background-image: url(https://www.regexbuddy.com/manual/btn150/error.png); }
	li.comment { background-image: url(https://www.regexbuddy.com/manual/btn150/comment.png); }
	li.tip { background-image: url(https://www.regexbuddy.com/manual/btn150/tip.png); }
	li.comparesame { background-image: url(https://www.regexbuddy.com/manual/btn150/comparesame.png); }
	li.comparediff { background-image: url(https://www.regexbuddy.com/manual/btn150/comparediff.png); }
	li.cc { background-image: url(https://www.regexbuddy.com/manual/btn150/cc.png); }
	li.ccchar { background-image: url(https://www.regexbuddy.com/manual/btn150/ccchar.png); }
	li.ccstring { background-image: url(https://www.regexbuddy.com/manual/btn150/ccstring.png); }
	li.ccspecial { background-image: url(https://www.regexbuddy.com/manual/btn150/ccspecial.png); }
	li.ccrange { background-image: url(https://www.regexbuddy.com/manual/btn150/ccrange.png); }
	li.ccintersect { background-image: url(https://www.regexbuddy.com/manual/btn150/ccintersect.png); }
	li.ccvoid { background-image: url(https://www.regexbuddy.com/manual/btn150/ccvoid.png); }
	li.ccfail { background-image: url(https://www.regexbuddy.com/manual/btn150/ccfail.png); }
	li.lb { background-image: url(https://www.regexbuddy.com/manual/btn150/lb.png); }
	li.cclb { background-image: url(https://www.regexbuddy.com/manual/btn150/cclb.png); }
}