[lang=zh-hant] {
  font-family: 'PingFang TC', 'Noto Sans CJK TC', 'Heiti TC', 'Microsoft JhengHei', Helvetica, Segoe UI, Arial, sans-serif;
}

[lang=zh-hans] {
  font-family: 'PingFang SC', 'Noto Sans CJK SC', 'Heiti SC', 'DengXian', 'Microsoft YaHei', Helvetica, Segoe UI, Arial, sans-serif;
}

h2 {
  margin-top: 3em;
  margin-bottom: 0em;
}

.head h2,
#abstract h2,
#sotd h2 {
  margin-top: 0;
}

h3 {
  margin-top: 3em;
}

h4  {
  margin-top: 2em;
  font-size: 100%;
  font-weight: normal;
  color: #005a9c;
}

h5 {
  font-style: inherit !important;
}

.leadin {
  font-weight: bold;
}

ins {
  background-color: #99FF99;
  text-decoration: none;
}

del {
  display: inline;
  color: silver;
}

figure {
  margin-bottom: 2em;
  text-align: center;
  vertical-align: top;
}

figure img {
  vertical-align: middle;
}

figcaption {
  text-align: center;
  margin: 0.5em 2em;
  font-style: italic;
  font-size: 90%;
}

.figno:after {
  content: ':\00A0  ';
}

a.termref:link,
a.termref:hover,
a.termref:visited,
a.termref:active {
  text-decoration:none;
  border-bottom: 1px dotted #FC0;
  color:#C60;
}

.qterm:before, .qchar:before { content: "'"; }
.qterm:after, .qchar:after { content: "'"; }
.quote:before { content: '"'; }
.quote:after { content: '"'; }

code,
samp,
kbd {
  font-family: Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", monospace;
  font-size: 100%;
}

code { color: #A52A2A; }

.uname {
  text-transform: uppercase;
  font-size: 85%;
  letter-spacing:0.03em;
}

#langSwitch {
  position: fixed;
  /*
  top: 40px;
  right: 20px;
  width: 202px;
  text-align: right;
  */
  top: -14px;
  z-index: 10000;
}

#langSwitch button {
  background: #FFF none repeat scroll 0% 0%;
  border: 1px solid #CCC;
  border-radius: 5px;
}

.translateme {
  background-color: #F3F3C3;
  background-clip: content-box;
}
.checkme {
  background-color: #BBEFFC;
  background-clip: content-box;
}

.is-multilingual [data-lang^="zh"] {
  padding-left: .4em;
  border-left: 3px solid;
}
.is-multilingual [data-lang="zh-hant"] {
  border-color: rgba(64,196,64,.5);
}
.is-multilingual [data-lang="zh-hans"] {
  border-color: rgba(248,138,5,.5);
}

.is-multilingual h2[data-lang^="zh"],
.is-multilingual h3[data-lang^="zh"],
.is-multilingual h4[data-lang^="zh"],
.is-multilingual h5[data-lang^="zh"],
.is-multilingual h6[data-lang^="zh"],
.is-multilingual p[data-lang^="zh"],
.is-multilingual ol[data-lang^="zh"],
.is-multilingual ul[data-lang^="zh"] {
  margin-left: calc(-.4em - 2px);
}

.is-multilingual .secno ~ span[data-lang^="zh"] {
  display: inline-block;
  margin-left: .3em;
  padding-left: .3em;
}

.note h6 {
  margin-top: 1em;
  margin-bottom: 0;
  font-weight: bold;
}

table { border-collapse: collapse; }
table tr { border-bottom: 1px solid #ddd; }
table th { padding: .25em .25em .5em .25em; }
table th:last-child { padding-left: .5em; }
table th span { font-size: .815em; }

table td {
  padding: .75em .25em .75em .25em;
  vertical-align: top;
}

h2 + table,
table + table {
  margin-top: 1rem;
}

table thead span[data-lang] {
  display: block;
  margin-top: .1em;
  text-align: start;
}

table thead span[data-lang][hidden] { display: none; }
table thead span[data-lang='en']:first-child { margin-top: 0; }

.is-multilingual table thead span[data-lang='en'] {
  padding-left: calc(.4em + 3px);
}

/**
 * Table for character sizes
 */
table.charsize {
  display: inline-table;
  margin-right: 1em;
  margin-top: 0;
  font-size: 95%;
}

/**
 * Tables in appendix
 */
table.appendix td p { margin: .5em 0; }
table.appendix td p:first-child { margin-top: 0; }
table.appendix td p:last-child { margin-bottom: 0; }

table.appendix p[data-lang^='zh'],
table.appendix ol[data-lang^='zh'] { margin-left: .25em; }
table.appendix p[data-lang='en'] { margin-left: calc(.25em + .4em + 3px); }
table.appendix ol[data-lang='en'] { margin-left: .4em; }
table.appendix td small { display: block; }

.is-multilingual table.appendix ol,
.is-multilingual table.appendix ul { padding-left: 2em; }

/**
 * Tables of punctuation
 */
table.punctuation th.name { width: 5em; max-width: 5.5em; }
table.punctuation th.character { min-width: 2.5em; }
table.punctuation th.unicode { width: 5em; }
table.punctuation th.true-or-false { width: 10em; }
table.full.punctuation td:nth-child(4),
table.full.punctuation td:nth-child(5),
table.full.punctuation td:nth-child(6),
table.full.punctuation td:nth-child(7) {
  text-align: center;
  vertical-align: middle;
}

/**
 * Table of glossary
 */
table.glossary th.term { width: 6.25em; }
table.glossary th.term-pinyin { width: 5.25em; }
table.glossary th.term-en { width: 5.25em; }
