@charset "UTF-8";
/* CSS Document */

/* ==========================================
                  HTML5 CSS Reset 
   ========================================== */

:root
{
	--bg: 0, 51, 102;
	--shadow: 0, 34, 68;
	
	--bg_rgb: rgb(var(--bg));
	--shadow_rgb: rgb(var(--shadow));
	
	--blue1: #0070e0;
	--blue2: #0063c7;
	--blue3: #0057ad;
	--blue4: #004a94;
	--blue5: #003d7a;
	--blue6: #003061;
	--lblue1: #e5f2ff;
	--lblue2: #cde6ff;
	--lblue3: #9acdff;
	--lblue4: #66b3ff;
	--lblue5: #3399ff;
	--lblue6: #0080ff;
	--grey1: #fafafa;
	--grey2: #f3f3f3;
	--grey3: #d9d9d9;
	--grey4: #ccc;
	--grey5: #bdbdbd;
	--grey6: #999;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, img, var, b, i, ol, ul, li, form, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, header, footer, nav, section
{
	margin: 0px;
	padding: 0px;
	border: 0px;
	outline: 0px;
}

article, aside, dialog, figure, footer, header, hgroup, nav, section { display: block; }

html { height: 100%; width: 100%; }

body
{
	height: 100%;
	width: 100%;
	background-color: rgb(var(--bg));
	color: #333;
	font-size: 20px;
	font-family: 'Noto Sans', sans-serif;
	text-align: center;
	line-height: 1.7;
}

a
{
	color: var(--blue1);
	text-decoration: none;
}

a:hover
{
	color: var(--blue3);
	text-decoration: underline;
}

a:active { color: var(--blue5); }

p { margin: 1.2em 0 0.9em 0; }

.emphasis { font-size: 2em; }

.heading
{
	text-align: center;
	font-size: 2.25em;
	margin: 1em auto .75em auto;
}

h1
{
	color: #333;
	text-align: center;
	display: block;
	font-size: 1.75em;
	font-weight: 600;
	margin: 1.5em 0 .5em 0;
}

h1.term
{
	font-size: 2.5em;
	margin: 0.7em 0 0.5em;
}

h1.question
{
	font-weight: 700;
	margin: 1.5em auto 1.25em auto;;
}

h2
{
	text-align: center;
	font-size: 1.25em;
	font-weight: 600;
	margin: 1em 0;
}

article h2
{
	font-size: .9em;
	color: #555;
	margin: 0 0 2em 0;
}

h3
{
	font-size: 1.4em;
	font-weight: 600;
	margin: .8em 0 .5em 0;
}

h3.sub
{
	text-align: center;
	margin: -1em 0 1.5em 0;
}

h4
{
	color: #555;
	font-size: 1.2em;
	font-weight: 500;
	margin: 0;
}

h5, th p
{
	display: block;
	text-align: left;
	font-weight: 300;
	font-size: 1.6em;
	width: 100%;
	margin-top: 0px;
	margin-bottom: 16px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--grey3);
}

h5 a, th p a { color: #333; }
h5	{ text-align: center; }

hr	{ width: 100%; height: 2px; background: rgba(var(--bg),0.2); border: 0; margin: 1em 0; }

img, video 
{
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}

header
{
	position: relative;
	max-width: 772px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 18px 0 0;
	margin: 0 auto 10px auto;
}

header a
{
	display: block;
	width: 100%;
	max-width: 250px;
	height: 75px;
	background: url(/img/main/pc-net.png) 0 0 no-repeat;
	background-size: 250px 160px;
}

header a:hover { background-position: 0 -75px; }

nav
{
	max-width: 860px;
	height: 31px;
	font-size: 17px;
	padding-top: 1px;
	margin: -16px auto 1px auto;
	border-radius: 10px;
	box-shadow: 0px 3px 9px var(--shadow_rgb);
	background-image: linear-gradient(rgb(150,150,150,.5), rgba(50,50,50,.75));
	background-blend-mode: luminosity;
	background-color: rgb(var(--bg));
}

nav ul { line-height: 0; }

nav ul li
{
	display: inline;
	list-style: none;
	margin: 0;
	position: relative;
	top: 14px;
}

nav ul li a:link,
nav ul li a:visited
{
	color: #efefef;
	text-decoration: none;
	padding: 3px 24px 7px 24px;
}

nav ul li a:hover
{
	color: #FFF;
	text-shadow: 0 0 10px rgba(245,245,255,.3);
	background: rgba(20,20,20,.5);
}

#menutoggle
{
	width: 4em;
	height: 4em;
	display: none;
	cursor: pointer;
	content: '';
	background: none;
	background-repeat: no-repeat;
	padding: 5px;
	border: 0;
	margin: 0 -2px 0 15px;
}

#menutoggle svg { width: 32px; height: 32px; }

#pcsearch {	position: relative;	top: 5px; }
#pcsearch input#term
{
	font-size: 0.8em;
	text-align: left;
	width: 250px;
	height: 30px;
	padding: 2px 26px 2px 8px;
	background-color: #f9f9f9;
	border: 2px solid rgb(0,20,40,.8);
	border-radius: 10px;
	margin-left: auto;
}
#pcsearch input#submit
{
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -7px;
	margin-right: 10px;
}

.browse { margin: -5px 0 0 15px; }

.fc-dialog-container #card {
	max-width: inherit;
	box-shadow: none;
}

article
{
	max-width: 820px;
	text-align: justify;
	margin: 0 auto 1em auto;
}
article ul, article ol
{
	padding-left: 30px;
	padding-right: 30px;
	margin-bottom: 0.9em;
}
article li { padding-left: 10px; margin-bottom: 0.8em; }
article.april1 { max-width: 745px; }

footer
{
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	min-height: 26px;
	background-image: linear-gradient(to bottom, rgba(30,30,30,.6), rgba(10,10,10,.9));
	background-repeat: repeat;
	font-size: 14px;
	font-weight: 300;
	color: #ddd;
	line-height: 1.5;
	text-align: center;
	padding-top: 2px;
	box-shadow: 0px -1px 5px rgba(20,20,20,.6);
}
footer a:link,
footer a:visited
{
	color: #efefef;
	padding: 0 5px;
}

footer a:hover
{
	text-decoration: none;
	color: #ddd;
}
footer button {
	background: none;
	font: inherit;
	color: #efefef;
	cursor: pointer;
	border: none;
}

#max
{
	position: relative; /* needed for footer positioning*/
	height: auto !important; /* real browsers */
	min-height: 100%; /* real browsers */
}

#top
{
	height: 100px;
	vertical-align: middle;
	background-image: linear-gradient(to bottom, #272727, #111);
	background-image: linear-gradient(to bottom, rgba(45,45,45,.6), rgba(15,15,15,.8));
	background-repeat: repeat;
	box-shadow: 0px 1px 8px #151515;
}

#card
{
	background-color: #fcfcfc;
	max-width: 1080px;
	padding: 30px;
	margin: 20px auto 30px auto;
	border-radius: 12px;
	box-shadow: 0px 7px 10px var(--shadow);
}

#main
{
	display: flex;
	box-sizing: border-box;
	width: 100%;
}
#main.emlist {
	background-color: #fff;
	margin: 0 auto;
}

#content
{
	flex: 1;
	vertical-align: top;
	text-align: left;
	padding-left: 5px;
}

#content h3:first-child { margin-top: 0; }

#sidebar
{
	width: 300px;
	vertical-align: top;
	padding-left: 30px;
}

#error
{
	flex: 1;
	min-height: 250px;
	padding-top: 35px;
	align-content: center;
}

#error img { max-width: 100px; }

.history { margin-top: 2em; }
.history img { display: block; max-width: 95%; margin: 30px auto; }
.history table { margin: 30px auto; }

.index, .index2
{
	max-width: 1060px;
	padding: 30px 40px;
}

.index #content table { margin-left: .5em; }

.index #content table td
{
	font-weight: normal;
	padding: 5px;
}

.index #content table td:first-child
{
	width: 170px;
	font-weight: 600;
	text-align: left;
}

.index h3
{
	font-size: 2em;
	font-weight: 600;
	margin: .5em 0 .3em 0;
}

.index2 h3 { font-size: 1.75em; }
.index2 ol { padding: 0 0 0 0.75em; }

#topnav
{
	display: flex;
	box-sizing: border-box;
	width: 100%;
	font-size: 16px;
	padding-bottom: 15px;
	border-bottom: 1px solid #ddd;
	margin: -11px auto 0 auto;
}

#topnav .left
{
	flex: 1;
	text-align: left;
	padding: 0 5px;
}

#topnav .right
{
	text-align: right;
	padding-right: 0 5px;
}

#botnav
{
	display: block;
	max-width: 820px;
	font-size: 17px;
	padding-top: 18px;
	margin: 40px auto -12px auto;
	border-top: 1px solid #ddd;
}

.t { display: inline; color: #999; font-size: 0.8em; }

.visuallyhidden	
{ 
	position: absolute; 
	width: 1px; 
	height: 1px; 
	clip: rect(0 0 0 0); 
	padding: 0; 
	border: 0; 
	margin: -1px; 
	overflow: hidden; 
}

.buttons { margin: -10px auto 30px auto; }

.buttons a
{
	display: inline-block;
	width: 94px;
	font-size: 0.9em;
	text-align: center;
	background: rgba(var(--bg),0.05);
	padding: 5px;
	border: 2px rgba(var(--bg),0.2) solid;
	border-radius: 5px;
	margin: 10px 2px;
}

.buttons a:hover
{
	background: rgba(var(--bg),0.1);
	text-decoration: none;
	border-color: rgba(var(--bg),.25);
}

.buttons a:active
{
	background: rgba(var(--bg),0.15);
	text-decoration: none;
	border-color: rgba(var(--bg),0.3);
}

a.button
{
	display: inline-block;
	text-align: center;
	color: #efefef;
	background: var(--blue1);
	padding: 6px 24px;
	border: 2px var(--blue3) solid;
	border-radius: 5px;
}

a.button.copy
{
	padding: 3px 12px;
}

a.button:hover
{
	text-decoration: none;
	background: var(--blue2);
	border-color: var(--blue4);
}

a.button:active
{
	text-decoration: none;
	background: var(--blue3);
	border-color: var(--blue5);
}

.prevnext {
	max-width: 820px;
	display: flex;
	justify-content: space-between;
	margin: 50px auto 40px auto;
}

.prevnext a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	flex: 1;
	color: #fff;
	background: var(--blue2);
	padding: 15px 40px 15px 20px;
	border: 2px solid var(--blue4);
	border-radius: 10px;
	margin-left: 20px;
}

.prevnext a:first-child {
	padding: 15px 20px 15px 40px;
	margin-left: 0;
	margin-right: 20px;
}

.prevnext a svg {
	position: absolute;
	right: 15px;
	top: calc(50% - 12px);
	height: 24px;
	width: 10px;
	fill: #fff;
}

.prevnext a:first-child svg {
	left: 15px;
	right: auto;
}

.prevnext a:hover {
	background: var(--blue3);
	color: #fff;
	text-decoration: none;
	border-color: var(--blue5);
}

.prevnext a:active {
	background: var(--blue4);
	color: #fff;
	border-color: var(--blue6);
}

.prevnext a:hover svg {
	fill: #FFF;
	background: none;
}

.prevnext a:active svg {
	border-color: #666;
	fill: #FFF;
}

.top
{
	border-bottom: 2px solid rgba(var(--bg),0.75);
	margin: -0.25px 0 1.25em 0;
}

.top h1
{
	font-size: 2.5em;
	text-shadow: 2px 2px 4px #ddd;
	padding: 0;
	margin: 0;
}

.top h2
{
	font-size: 1.25em;
	font-weight: 400;
	margin: .2em 0 1.2em 0;
}

.home h1
{
	font-size: 3em;
	color: #333;
	margin: -0.2em 0 -0.1em 0;
}

.home h2
{
	font-size: 1.5em;
	margin-bottom: 1em;
}

.a2a_kit { margin-top: -5px; float: right; }
.a2a_dd svg { background-color: #333; background-position: left; }

.center { text-align: center; }

.daily { padding: 5px 0; }
.daily h4 { color: #333; padding: 10px 0 5px 0; }
.daily p { padding-bottom: 0.75em; }
.dailyterm { display: inline-block; font-size: 2.5em; font-weight: bold; margin-bottom: -0.2em; }
.dailyquestion { font-size: 1.25em;	font-weight: bold; }
.questionbox { padding: .2em 2em 0 2em; }

.leader1
{
	display: flex;
	height: 100px;
	padding: 20px 10px 0 10px;
	justify-content: center;
	align-items: center;
}

.leader2
{
	display: block;
	height: 100px;
	text-align: center;
	margin: 1.5em auto 0 auto;
}

.sky
{
	display: block;
	position: sticky;
	top: 30px;
	width: 300px;
	padding-bottom: 10px;
	margin: 0 auto 10px auto;
	overflow: hidden;
}

.ad
{
	width: 100%;
	vertical-align: top;
	text-align: center;
}

.sidebox
{
	font-size: 0.9em;
	background: rgba(var(--bg),0.02);
	padding: 15px 30px;
	border: 2px solid rgba(var(--bg),0.3);
	border-radius: 10px;
	margin: 15px auto 30px auto;
}

.sidebox h4
{
	padding-bottom: 0.5em;
	border-bottom: 1px solid rgba(var(--bg),0.25);
	margin-bottom: 0.6em;
}

.sidebox ul
{
	text-align: left;
	text-indent: 33px;
	list-style-position: inside;
}

.sidebox li { padding: 5px 0; }

.infobox
{
	min-width: 50%;
	padding: 20px;
	border: 1px solid #999;
	border-radius: 5px;
	margin: 30px auto;
}
.infobox td { text-align: left;	padding: 5px; }
.infobox td:first-child { padding-right: 10px; font-weight: 600; }

.example {text-align: center; font-size: 0.9em;	margin: 1em 0; }

.date {	font-size: 0.9em; color: #999; }

.update
{
	font-size: 0.9em;
	padding: 0 0 5px 0;
	margin: 0 0 0 -0.2em;
}

.anchors
{
	text-align: center;
	font-size: 0.9em;
	margin: -1em auto 2em auto;
}

.ip4, .ip6
{
	font-size: 3.5em;
	word-break: break-word;
	overflow-wrap: break-word;
	margin: 10px auto 30px auto;
}

.ip6 { font-size: 1.75em; }

#content ul, #content ol
{
	padding-top: 5px;
	padding-bottom: 5px;
	margin-left: 32px;
	margin-bottom: 12px;
}

#content ul li, #content ol li { margin-bottom: 0.75em; }

.floatleft { display: inline; float: left; }
.floatright { display: inline; float: right; }

.photo { width: 150px; float: left; padding: 10px; border: 1px solid #999; margin: 0 1.5em 0.5em 0; }

p.links
{
	font-weight: 500;
	margin: 1.6em auto 1em auto;
}

.cal
{
	width: 32px;
	margin: 0 7px -10px 0;
}

.browse table
{
	border-collapse: collapse;
	border-width: 0px;
	text-align: left;
	margin-top: -5px;
	margin-bottom: -5px;
}

table.ss { margin: 20px auto; }

table.ss td { padding: 10px 15px; }

table.list { border-collapse: collapse; }

table.list tr td { padding: 15px 5px; }
table.list tr:last-child td { border: none; }
table.list td.term
{
	max-width: 130px;
	font-weight: bold;
	padding-right: 10px;
}
table.list td.ext
{
	width: 110px;
	font-weight: bold;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 10px;
	padding-right: 5px;
}
table.list td.num
{
	width: 30px;
	padding: 5px;
}
table.list td.smiley
{
	width: 150px;
	font-family: "Courier New", Courier, monospace;
	font-weight: bold;
	text-align: center;
	padding: 10px;
}
table.list td.pop {	padding: 10px; }

.list.sortable {
	width: 100%;
	max-width: 900px;
	border-collapse: separate;
	border: 1px solid #aaa;
	border-radius: 10px;
	margin: 20px auto;
}

.list.sortable th {	cursor: pointer; }
.list.sortable th, .list.sortable td.meaning { padding: 10px; }
.list.sortable th .thwrap {	display: flex; align-items: center; }
.list.sortable th:first-child .thwrap {	justify-content: center; }

.sortable th svg { margin-right: 5px; }
.sortable th .uparrow, .sortable th .downarrow { fill: rgba(0,0,0, 0.5); }

th[data-order="asc"] .uparrow, th[data-order="desc"] .downarrow { fill: #333; }

table.display
{
	width: 820px;
	max-width: 820px;
	font-size: 0.9em;
	background-color: var(--grey2);
	border: 1px solid var(--grey4);
	border-spacing: 0;
	border-collapse: separate;
	border-radius: 10px;
	text-align: left;
	margin: 30px auto 10px auto;
}

table.display tr:last-child td
{
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}

table.display tr:nth-child(even)
{
	background-color: var(--grey1);
}

table.display.leet td:first-child
{
	font-size: 2em;
	font-weight: 500;
	padding-left: 30px;
}

table.display th
{
	font-size: 1.2em;
	text-align: left;
	padding: 0.75em;
}

table.display th.left
{
	max-width: 130px;
	font-weight: bold;
}

table.display th.right
{
	width: auto;
	font-size: 1.2em;
}

table.display th.filetype
{
	width: auto;
	font-size: 1.2em;
}

table.display td
{
	padding: 10px 15px;
}

table.display .comments p:first-child { margin-top: 0; }
table.display .comments p:last-child { margin-bottom: 0; }

table.display td p
{
	margin: 1em 0 1.2em 0;
}

table.display td.left
{
	max-width: 130px;
	font-weight: bold;
}

table.display td.bottom
{
	border-top: 1px solid #ddd;
}

table.display td.desc
{
	display: block;
	width: auto;
}

table.display td.apps p
{
	font-size: 0.9em;
	margin: 5px;
}

table.display td.desc p:first-child { margin-top: 2px; }

table.display td.desc p:last-child { margin-bottom: 2px; }

table.display td.desc ul,
table.display td.desc ol
{
	margin-left: 32px;
	margin-bottom: 12px;
}

table.display td.left2
{
	width: 90px;
	font-weight: bold;
	vertical-align: middle;
}

table.display td.emoticon
{
	width: 50%;
	background-color: #fcfcfc;
	font-family: "Courier New", Courier, monospace;
	font-size: 3em;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid #ddd;
	border-top-left-radius: 10px;
	white-space: nowrap;
}

td.emoticon.emote-long
{
	font-size: 16px;
}

.about
{
	display: block;
	max-width: 526px;
	text-shadow: none;
	font-size: 0.8em;
	margin-top: 10px;
	margin-bottom: 18px;
	padding: 10px 10px 4px 10px;
	background-color: #efefef;
	border: 1px solid #ddd;
}

.aboutpage li p { margin: 0.2em 0 0.8em 0; }

.platform
{
	width: 88px;
	font-weight: bold;
}

.programs
{
	display: block;
	margin: 10px 0;
	padding: 5px;
	border-collapse: collapse;
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	text-align: left;
}

.topics
{
	width: 800px;
	height: 30px;
	background-image: url(/img/main/navbar.png);
	margin-left: auto;
	margin-right: auto;
	border-radius: 12px;
	box-shadow: 0px 5px 5px #111;
	font-size: 12pt;
}

ul.topics
{
	line-height: 0;
	margin-bottom: 30px;
}

ul.topics li
{
	display: inline;
	list-style: none;
	margin: 0px 8px 0px 8px;
	position: relative;
	top: 14px;
}

ul.listing
{
	line-height: 2;
	margin-top: 6px;
	margin-bottom: 16px;
}

ul.listing li
{
	list-style: decimal;
	margin: 0px 0px 0px 10px;
}

.middle
{
	text-align: center;
	vertical-align: middle;
}

.icon1 { width: 16px; height: 16px; margin: 0px 3px -1px 0; }
.icon2 { width: 20px; height: 20px; vertical-align: middle; margin: -4px 0 0 0; }
.icon3 { width: 16px; height: 16px; margin: 0 7px -2px 0; }
.icon4 { width: 13px; height: 13px; margin: 0 7px 0 0; }

.fileicon
{
	margin-left: -2px;
	margin-right: 10px;
	margin-bottom: -10px;
	padding-top: 2px;
	border: 0px;
}

.appicon
{
	vertical-align: middle;
	margin: 5px 15px 5px 0;
	border: 0px;
}

.cursive
{
	font-family: cursive;
	font-size: 2em;
}

.widetext
{
	word-spacing: 12px;
}

.headline
{
	display: block;
	text-align: left;
	font-size: 1.25em;
	font-weight: 700;
	margin: .5em 0;
}

.headline a
{
	color: #333;
	font-weight: 700;
}

.headline a:hover { color: #154; }

.icon { margin-bottom: -1px; }

.pad { padding: 10px; }

.special
{
	position: relative;
	top: -8px;
	float: right;
}

.directory
{
	color: #565;
	font-family: "Courier New", Courier, Monaco;
}

.menu { color: #615; }

.filename {	font-weight: bold; }

.command { font-family: "Courier New", Courier, Monaco; }

.summary
{
	display: block;
	text-align: left;
	max-width: 728px;
	background-color: #F9F9F9;
	word-break: break-word;
	overflow-wrap: break-word;
	padding: 15px;
	border: solid 1px #999;
	border-radius: 5px;
	margin: 1.8em auto 1.6em auto;
}

.keycap
{
	display: inline-block;
	vertical-align: middle;
	color: var(--blue5);
	font-size: 0.8em;
	font-weight: 600;
	line-height: 1em;
	padding: 2px 5px;
	background: var(--grey2);
	border: 2px solid var(--grey4);
	border-radius: 5px;
	margin-top: -5px;
}

img.dbimage, img.dbimagenoborder
{
	display: block;
	max-width: 800px;
	max-height: 800px;
	margin: 1.8em auto 2em auto;
}

img.dbimagenoborder { padding: 0; border: none; }

img.dbimageleft
{
	float: left;
	width: 300px;
	max-width: 40%;
	padding: 5px 15px 5px 1px;
	border: 0;
	margin: 0 10px 5px 0;
}

img.glossary
{
	float: left;
	width: 220px;
	max-width: 40%;
	margin: 0.75em 2em 1em 0;
}

.newsfeed .dbimageleft {
    width: 200px;
}

.tip img
{
	width: 200px;
	max-width: 40%;
}

.dbimageright
{
	float: right;
	padding: 5px 1px 5px 5px;
	border: 0;
	margin-left: 10px;
	margin-bottom: 10px;
}

.img300 { max-width: 300px; max-height: 300px; }

.hidden { display: none; }

.termsearch
{
    max-width: 640px;
    position: relative;
    font-size: .9em;
    margin: -0.5em auto 2em auto;
}

.termsearch input {
    display: block;
    width: 100%;
    box-sizing: border-box;
    font-size: 1em;
    padding: 1em 1em 1em 2.75em;
    border: 3px solid rgba(var(--bg),0.4);
    border-radius: 10px;
    background: #fff;
    outline: none;
}

.termsearch button {
    background: none;
    border: none;
    font-size: 1em;
    cursor: pointer;
    margin: 0;
    padding: 0;
}

.termsearch input:focus {
    background: #ffffe9;
    border-color: rgba(var(--bg),0.75);
}

.termsearch .mglass {
    position: absolute;
    left: 1em;
    top: calc(50% - 12px);
    z-index: 2;
}

.termsearch .clear {
    position: absolute;
    right: 1em;
    top: calc(50% - 10px);
    z-index: 2;
}

.termsearch .clear.hidden { display: none; }

.termgroup.active li { display: none; }
.termgroup.active li.match { display: list-item; }
.termgroup.active .entry { display: none; }
.termgroup.active .entry.match { display: flex; }
.help .termgroup.active .entry.match { display: list-item; }

.termlist { margin-bottom: 20px; }
.termlist .entry { display: flex; margin-bottom: 12px; }
.termlist .term { min-width: 130px; }
.termlist .meaning { min-width: 100px; font-size: 1em; padding: 0 10px 10px 30px; }
.termlist .term.emoticon { min-width: 200px; text-align: right; font-size: 1.25em; margin: -6px 10px 10px 0; }
.emoticons .termlist { max-width: 450px; margin: 0 auto 20px auto; }

.noresults { font-size: 1.25em; margin: 5px 0 30px 0; }

#disqus_thread
{
	display: block;
	max-width: 708px;
	margin-top: 4px;
	margin-bottom: 4px;
	margin-left: auto;
	margin-right: auto;
	padding: 10px;
	text-align: justify;
}

#disqus_thread h3
{
	font-size: 1.2em;
	font-weight: normal;
	text-shadow: 1px 1px 3px #ccc;
	line-height: 1.2;
	margin-bottom: 0px;
}

#disqus_thread a
{
	color: #777;
	font-size: 0.8em;
	text-decoration: none;
}

#disqus_thread a:hover
{
	text-decoration: underline;
}

img.comment
{
	width: 22px;
	height: 22px;
	padding: 0;
	border: 0;
	vertical-align: middle;
	margin: -2px 7px 0 0;
}

.articlelinks
{
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 1em;
	border-bottom: 1px solid #ccc;
	clear: both;
	margin: 1em 0 2em 0;
}

.viewmore {
	margin: 0 0 10px 0;
}

.viewmore a {
	display: inline-block;
	padding: 5px 2px;
	margin-top: -5px;
}

.articlelinks .viewmore {
	flex: 1;
}

.clearfloat { clear: both; }

/* Autocomplete */

.autocomplete-suggestions 
{ 
	background: #f9f9f9; 
	color: #444; 
	font-size: 1.1em; 
	line-height: 1.5; 
	border: 1px solid #999; 
	border-radius: 5px; 
	overflow: auto; 
}

.autocomplete-suggestion 
{ 
	text-align: left; 
	cursor: pointer; 
	padding: 0 8px; 
	white-space: nowrap; 
	overflow: hidden;
	text-overflow: ellipsis;
}

.autocomplete-selected 
{ 
	background: #cef; 
}

#reference
{
	display: none;
}

#comparison
{
	display: flex;
	background-color: #F9F9F9;
	padding: 12px 22px;
	border: 1px solid #999;
	border-radius: 3px;
	margin: 18px 0;
}

#comparison > .comparison-column:first-of-type
{
	margin-right: 12px;
	width: 100%;
}

#comparison > .comparison-column:last-of-type
{
	width: 100%;
}

#comparison h3 
{
	text-shadow: none;
}

#comparison h4
{
	font-weight: bold;
	margin-left: 0;
}

#comparison ul
{
	list-style-type: none;
	padding-top: 0;
	padding-bottom: 0;
	margin-left: 0;
	margin-bottom: 0.9em;
}

#comparison li
{
	display: flex;
	align-items: center;
	margin-bottom: 12px;
	text-align: left;
}

#comparison .comparison-column li
{
	flex-shrink: 0;
	background-size: 18px;
	background-position: left 2px;
	background-repeat: no-repeat;
	padding-left: 28px;
	margin-right: 8px;
}

#comparison .comparison-column:first-of-type li
{
	background-image: url('/img/main/comparison-pro.svg');
}

#comparison .comparison-column:last-of-type li
{
	background-image: url('/img/main/comparison-con.svg');
}

#comparison li:last-child
{
	margin: 0;
}

.rating
{
	display: inline-block;
	background-color: #F9F9F9;
	padding: 0 45px;
	border: 1px solid #999;
	border-radius: 3px;
	margin-bottom: 30px;
}

.rating > h4
{
	margin: 0 18px 0 0;
}

.rating p
{
	line-height: normal;
	text-align: center;
}

.rating p:first-child
{
	font-size: 34px;
	margin: 2px 0 0;
}

.rating span
{
	font-size: 14px;
}

.rating p:last-child
{
	margin: 2px 0 8px;
	text-transform: uppercase;
}

.iconheading {
	display: flex;
	align-items: center;
}

.iconheading img {
	width: 2em;
	height: 2em;
	margin-right: 5px;
}

.tablewrap {
	max-width: calc(100%);
	overflow: auto;
}

.contact h1 { margin-top: .5em; }

#contact
{
	display: block;
	background: var(--grey2);
	max-width: 718px;
	padding: 10px;
	border: 2px solid var(--grey5);
	border-radius: 10px;
	margin: 20px auto 30px auto;
}

#contact table
{
	width: 540px;
	margin: 10px auto 30px auto;
}

#contact td.text
{
	padding: 10px;
	text-align: left;
}

#contact td.field
{
	width: 60%;
	text-align: left;
	padding-left: 20px;
}

#contact td.message
{
	font-weight: bold;
	padding: 20px 0 10px 0;
	text-align: center;
}

#mail input
{
	font-size: 1em;
	background-color: var(--grey1);
	width: 250px;
	padding: 5px 10px;
	border: 2px solid var(--grey3);
	border-radius: 6px;
}

#mail input.submit
{
	width: 200px;
	color: #efefef;
	background-color: var(--blue1);
	padding: 10px;
	border: 1px solid var(--blue3);
	border-radius: 10px;
}

#mail input.submit:hover
{
	color: #efefef;
	background-color: var(--blue2);
	border-color: var(--blue4);
}

#mail input.submit:active
{
	color: #fff;
	background-color: var(--blue3);
	border-color: var(--blue5);
}

#mail input.cfieldhid
{
	display: none !important;
}

#mail select
{
	display: block;
	font-size: 0.9em;
	color: #036;
	background: var(--grey1);
	width: 200px;
	margin: -6px 0 2px 0;
	border: 1px solid #aaa;
}

#mail textarea
{
	font-size: 12pt;
	color: #333;
	background-color: var(--grey1);
	width: 90%;
	max-width: 500px;
	padding: 8px;
	margin: 0px auto;
	border: 2px solid var(--grey3);
	border-radius: 6px;
}

p.error
{
	color: #c00;
	font-size: 0.9em;
	font-weight: bold;
}

p.errortext
{
	font-weight: bold;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}

@media screen and (max-width: 970px) 
{
	article { max-width: none; }
	#main { display: block;	padding: 0;	}
	#content { display: block; width: 100%;	border: none; padding: 0; }
	#sidebar { width: 100%; display: block; clear: both; padding: 10px 0 0 0; border: 0; }
	.sky { display: none; }
	table.display { width: auto; }
}

@media screen and (max-width: 800px)
{	
	header a { background-size: 225px 144px; max-width: 225px; margin: -5px 0 0 -5px; }
	header a:hover { background-position: 0 -67.5px; }
	#top { height: auto; }
	#menutoggle { display: inline-block; }

	#pcsearch { top: -1px; margin-left: auto;}
	
	nav 
	{
		width: 100%;
		height: auto;
		max-height: 0;
		visibility: hidden;
		background: #333;
		border-radius: 0;
		overflow: hidden;
		margin: 0;
	}

	nav ul { margin-top: -100%; }

	nav.open 
	{
		max-height: 1000px;
		visibility: visible;
		background: rgba(30,30,30,0.4);
		padding-bottom: 14px;
		margin: -10px 0 15px 0;
	}

	nav.open ul { margin-top: -15px; }
	nav ul li { display: block;	border-bottom: 1px solid rgba(0,0,0,0.2); }
	nav ul li a:link { display: block; line-height: 1; padding: 0.75em; }
	
	#navbar 
	{
		height: auto;
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		background-image: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.3));
		margin-left: 10px;
		margin-right: 10px;
	}

	#navbar a,
	#navbar a:link,
	#navbar a:visited 
	{
		display: block;
		position: static;
		line-height: 2em;
		margin: 0;
	}

	#card { border-radius: 0; }

	img, video,	img.dbimage, img.dbimagenoborder { max-width: 90%; }
	
	table.display {	width: auto; }
	table.ss td, table.pad td {	display: block;	}

	h1 { margin: 0.75em 0 0.25em 0; }
	h1.term { font-size: 2.25em; margin: 0.5em auto 0 auto;	}
	h1.question { margin: 1em 0 0.75em 0; }
	.index2 h3 { font-size: 1.5em; }
	.index #content table { margin-left: 0; }
	.index #content table td:first-child { width: auto; max-width: 150px; padding-right: 10px; }

	.browse { margin: 0; }

	.top h1 { font-size: 2em; margin: 0 auto; }
	.top h2 { font-size: 1.25em; }
	.dailyterm { font-size: 2em; }

	.sky { max-width: 100%; }

	table.programs { box-sizing: border-box; }
	table.programs td {	display: block;	}

	td.emoticon	{ font-size: 30px; }
	td.emoticon.emote-long { font-size: 12px; }

	#content ul, #content ol { margin-left: 15px; }
	#content ul li, #content ol li { margin-bottom: 0.25em; }
	#content ul li a, #content ol li a { vertical-align: middle; }
	
	#comparison ul { margin-left: 0; }
	#comparison ul li { margin-bottom: 12px; }

	#contact table { width: auto !important; }
	
	.leader1 { padding: 10px 0 0 0; }
	
	img.glossary { float: left; width: 200px; max-width: 40%; margin: 1.75em 1.5em 0.5em 0; }
}

@media screen and (max-width: 600px) 
{
	body { font-size: 18px; }

	#top { background-size: 100% 58px; }
	
	header { position: relative; padding-right: 8px; }
	header a { height: 56px; max-width: 175px; background-size: 175px 112px; }
	header a:hover { background-position: 0 -52.5px; }
	
	footer { height: auto; line-height: 1.8; }
	
	#topnav { padding-bottom: 8px; margin-top: -12px; }
	#topnav .left { padding-left: 0; }
	#topnav .right { padding-right: 0; }
	#botnav { padding-top: 10px; }
	
	#menutoggle { margin: 0 0 -1px 8px; }
	#menutoggle svg { width: 24px; height: 24px; }
	
	#card { padding: 20px 15px; }
	
	.heading { font-size: 2em; margin-top: 0.25em; }
	.top h2	{ font-size: 1.1em; margin: 0.3em 0 1em 0; }
	.large { font-size: 40px; }

	#pcsearch {	width: calc(100% - 196px); max-width: 200px; }

	#pcsearch input#term
	{
		width: 100%;
		height: 32px;
		box-sizing: border-box;
		border-width: 1px;
		border-radius: 7px;
	}
	
	.termsearch { margin-top: 1em; }

	article .floatright { display: block; float: none; margin-bottom: 10px; }

	table.display th { padding: 10px 15px; }
	table.list td.smiley { width: auto; max-width: 170px; overflow: hidden; }

	.extension table.display th,
	.extension table.display td
	{
		display: block;
		box-sizing: border-box;
	}

	table.programs { margin-top: 0;	}
	
	.apps p { display: flex; }
	.apps .appicon { display: block; margin-right: 20px; }

	footer { font-size: 12px; }

	#comparison { flex-direction: column; }
	#comparison h3 { margin-bottom: 4px; }
	#comparison li { margin-bottom: 4px; }

	.prevnext {	display: block;	}
	.prevnext a { width: calc(100% - 60px);	margin: 0; }
	.prevnext a:first-child { margin-bottom: 10px; }

	.termlist .term { min-width: 75px; padding-right: 10px; }

	.leader1
	{
		min-height: 100px;
		padding: 0;
		margin: -2px auto -10px auto;
	}
}

@media screen and (max-width: 467px)
{
	body { font-size: 16px; line-height: 1.6; }
	
	.top h1 { font-size: 2em; }
	.index2 h3 { font-size: 1.25em; }
	.icon1 { margin-bottom: -2px; }
	.icon2 { margin-bottom: -1px; }
	.icon3 { margin-bottom: -3px; }
	.icon4 { margin: 0 5px -1px 0; }
	
	#topnav { font-size: 0.9em; padding-top: 1px; }
	#botnav { font-size: 0.9em; padding-bottom: 2px; }
	
	.photo { display: block; float: none; margin: 0 auto 15px auto;	}
	.pop { display: none; }
	
	#mail input, #mail select {	width: 100%; box-sizing: border-box; }
	#contact td.text, #contact td.field { display: block; width: 100%; padding-left: 0;	}
	#contact td.message { text-align: left;	padding-left: 15px;	}
	#mail textarea { width: 100%; box-sizing: border-box; }
}

@media print {
	body, #card { background: #fff !important; }

	#pcsearch, #menutoggle, nav, footer, .leader1, .leader2, .topnav, .botnav, .prevnext,
	#disqus_thread, h3.links, h3.links+p, #sidebar, #navbar, .leader2+p,
	p.shortcuts, #content > p.center, p.anchors, .anchors2, .leader1, .leader1 + h1 + h3,
	table#main > tbody > tr > td > h2 + h3
	{
		display: none;
	}

	#top 
	{
		height: auto;
		background: none;
		padding-top: 0.3in;
		padding-bottom: 0.2in;
		box-shadow: none;
	}

	header
	{
		width: 6.5in;
		max-width: none;
		display: block;
		padding: 0;
	}

	header > a
	{
		background: none;
		margin: 0 auto;
	}

	header > a .visuallyhidden
	{
		width: auto;
		height: auto;
		color: black;
		font-size: 30px;
		position: relative;
		clip: unset;
		margin: 0;
	}

	h2
	{
		font-size: 18pt;
		font-weight: bold;
		margin-top: -0.1in;
		margin-bottom: 0.2in;
		text-align: center;
	}

	h3
	{
		font-size: 12pt;
		font-weight: bold;
		text-shadow: none;
		margin-top: 0 !important;
	}

	#card, #main, #content
	{
		max-width: none;
		padding: 0;
		margin: 0;
	}

	#main { border: none; }

	#card { box-shadow: none !important; }

	a, .browse a:link, .list a:link, .quicklinks a:link, .browse a:visited, list a:visited, .quicklinks a:visited
	{
		color: #000;
	}

	table.list { border: 0;	}

	#reference { display: block; }
}