/*
Color definitions:
separated block caption: #9094af
separation bar: #ccd0e8
separated block bg: #f6f9ff
internal link bg: #e4f8ff;
rounded corners: 0.5em;
border width: 0.4em;
*/

/****** General font styles ******/

/* Make headings more visible. */
h1 {
  font-weight: bold;
  font-variant: small-caps;
  margin-bottom: 0.2em;
}
h1#on-homepage {
  font-size: 400%;
}
h2, h3, h4, h5, h6 {
  font-weight: bold;
  margin-top: 2em;
}
/* Use serif fonts. */
html {
  font-family: serif;
}
/* Space between list items. */
li {
  margin-bottom: 0.5em;
}
/* Lists of alternating official and secret meanings. */
p.dual-list-intro + ul > li:nth-child(2n-1) {
  list-style-type: circle;
  margin-bottom: 0.2em;
}
p.dual-list-intro + ul > li:nth-child(2n) {
  list-style-type: disc;
  margin-bottom: 1em;
}
/* Space between list items and sub-lists. */
li > ol, ul {
  margin-top: 0.5em;
}
/* Mark first link in list item as bold. */
/*
li > a:first-child {
  font-weight: bold;
}
*/
/* No cursive definitions, please. */
dfn {
  font-style: normal;
}
/* Bold definitions in summary only. */
summary dfn {
  font-weight: bold;
}
/* No cursive citations, please. */
cite {
  font-style: normal;
}
/* No underlined links, please. */
a, a:visited, a:focus {
  text-decoration: none;
}
a:hover, a:active {
  text-decoration: underline;
}
.nobr {
  white-space: nowrap;
}


/****** Hugo table of contents ******/

/* This adds nested numbering to the ToC entries. */
nav#TableOfContents {
  background: #f6f9ff;
  margin-top: 2em;
  padding: 0.2em 1em 0.2em 1em;
  border-radius: 0.5em;
  border-left: 0.4em solid #ccd0e8;
  display: inline-block;
  font-size: 90%;
}
nav#TableOfContents ol {
  counter-reset: item;
}
nav#TableOfContents ol > li > ol {
  margin-left: 1em;
}
nav#TableOfContents  li {
  list-style: none;
  margin-left: -2em;
}
nav#TableOfContents  li:before {
  content: counters(item, ".") " \00a0\00a0 ";
  counter-increment: item;
  font-size: 80%;
}
nav#TableOfContents  a {
  font-weight: normal;
}
nav#TableOfContents h4 {
  color: #9094af;
  margin: 1em 0 0 1em;
}


/****** Figure styles ******/

/* Figures and figure captions centered. */
figure  {
  text-align: center;
  margin-top: 2em;
  margin-bottom: 2em;
}
/* Boder for figure image. */
figure img {
  padding: 0.5em;
  border: 0.1em solid #ccd0e8;
  border-radius: 1em;
}
/* Newline for figcaption. */
figure figcaption {
  display: block;
}
/* Captions in smaller, italic font with margins. */
figure figcaption p {
  display: inline-block;
  text-align: center;
  font-style: italic;
  border: 0.1em solid #ccd0e8;
  border-radius: 0.5em;
  padding: 0.5em;
  /* font-size: 90%; */
}
/* Caption closer to image. */
figure p {
  margin: 0.2em 0.5em 0.2em 0.5em;
}


/****** Text like a figure, for glyphs ******/

/* Text centered and bordered. */
.glyphfigure {
  width: 20%;
  margin: 2em auto 2em auto;
  text-align: center;
  padding: 2em;
  border: 0.1em solid #ccd0e8;
  border-radius: 1em;
}
.glyphfigure span {
  font-size: 300%;
}


/****** Link styles ******/

/* Internal link. */
a.internal {
  background: #e4f8ff;
  border-radius: 0.3em;
  /* padding: 0 0.1em 0 0.1em; */
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone;
}
/* Link to Miles Mathis' site. */
a.miles-mathis {
  background: #ffffb0;
  border-radius: 0.3em;
  /* padding: 0 0.1em 0 0.1em; */
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone;
}


/****** Dictionary entry styles ******/

/* Transliteration. */
.tlit {
  /* letter-spacing: 0.05em;
  font-size: 120%;
  line-height: 80%; */
  font-weight: bold;
}
/* Transcription. */
.tscr {
  font-style: italic;
  font-weight: bold;
}
/* Transcription after transliteration gets some extra spacing. */
.tlit + .tscr {
  margin-left: 0.2em;
}

/* Bold transcriptions in dictionary entry. */
.dict-entry .tscr {
  font-weight: bold;
}
/** Style dictionary entries as list items. */
.dict-entry {
  display: list-item;
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1.5em;
  text-indent: -1.5em;
}
/* Language code shown in dictionary entry. */
.dict-lang {
  font-size: 90%;
  /*
  font-family: monospace;
  color: #666666;
  padding: 0 0.2em 0 0.2em;
  margin-left: 0.4em;
  border-radius: 0.4px;
  border: 1px solid #aaaaaa;
  position: relative;
  top: -0.1em;
  */
}
/* Large glyphs in dictionary entry, removed from transcriptions. */
.dict-glyph {
  font-size: 120%;
}
/* Egyptian glyphs need to be even larger, or they're unreadable. */
.dict-glyph.egy {
  font-size: 240%;
}
/* Spacing between the elements. */
.dict-glyph + .dict-glyph {
  margin-left: 0.3em;
}
.dict-glyph + .tlit {
  margin-left: 0.4em;
}
.dict-glyph + .tscr {
  margin-left: 0.4em;
}
.dict-entry .tlit + .tscr {
  margin-left: 0.3em;
}
.dict-def {
  margin-left: 0.2em;
  margin-right: 0.4em;
}
/* Small font for link to referenced dictionary. */
.dict-ref {
  font-size: 80%;
  color: #555555;
  font-size: 90%;
}
/*
.dict-ref::before {
  content: "\00a0 \2014 \00a0";
}
*/

/* Text highlighting. */
.hilite {
  background: #aaffff !important;
}
.hilite2 {
  background: #ffffaa !important;
}

/* Stacking of hieroglyphs for a cheap glyph layout. */
.stack1of2 {
  word-wrap: normal;
  overflow-wrap: normal;
  display: inline-block;
  position: relative;
  top: -0.5em;
  width: 0;
}
.stack2of2 {
  word-wrap: normal;
  overflow-wrap: normal;
  display: inline-block;
  position: relative;
  top: +0.3em;
}
.stack1of3 {
  word-wrap: normal;
  overflow-wrap: normal;
  display: inline-block;
  position: relative;
  top: -0.5em;
  width: 0;
}
.stack2of3 {
  word-wrap: normal;
  overflow-wrap: normal;
  display: inline-block;
  position: relative;
  top: -0.1em;
  width: 0;
}
.stack3of3 {
  word-wrap: normal;
  overflow-wrap: normal;
  display: inline-block;
  position: relative;
  top: +0.3em;
}

/** Smaller font to denote glyphs missing in Unicode font. */
.missingglyph {
  font-size: 40%;
  font-family: monospace;
  border: 0.1em solid #ccd0e8;
  border-radius: 0.7em;
  padding: 0.2em;
}
.glyphcode {
  font-family: monospace;
}

/** Larger cartouche characters to enclose glyphs. */
.cartouche {
  font-size: 200%;
  position: relative;
  top: 0.1em;
  /* Don't increase line height, should already be large enough to allow stacking and cartouches. */
  line-height: 50%;
}

/** Larger font size for text blocks with glyphs. */
.egy.glyphsblock {
  font-size: 240%;
  line-height: 180%;
}
/** Vertical stacking of Egyptian glyphs. */
.glyphstack {
  display: inline-table;
  vertical-align: middle;
}
.glyphstack > span {
  display: table-row;
  text-align: center;
  vertical-align: middle;
}

/*
table.glyphstable, table.glyphstable td {
  text-align: center;
  border-spacing: 0px;
  border-collapse: collapse;
  border-spacing: 0px;
  border-style: none;
  margin: 0px;
  padding: 0px;
}
*/

/*
@font-face {
  font-family: "Aegyptus-subset";
  src: url("fonts/AegyptusR.ttf") format("truetype");
  src: url("fonts/Aegyptus-subset.woff") format("woff");
}
*/
@font-face {
  font-family: "AegyptusB-subset";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/AegyptusB-subset.woff") format("woff");
}
@font-face {
  font-family: "Akkadian-subset";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/Akkadian-subset.woff") format("woff");
}
@font-face {
  font-family: "CuneiformNA-subset";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/CuneiformNA-subset.woff") format("woff");
}
@font-face {
  font-family: "icon-font";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/icons.woff") format("woff");
}

/* Standard fonts for Egyptian hieroglyphs. */
.egy {
  font-family: Aegyptus, "Segoe UI Historic", "AegyptusB-subset";
  font-weight: bold;
}
/* Make inline hieroglyphs more visible (overridden by more specific rules). */
.egy {
  font-size: 140%;
  line-height: 75%;
}
/* Neo-Assyrian uses same character codes as Sumerian, but requires different font. */
.akk {
  font-family: CuneiformNAOutline, Assurbanipal, Assyrian, "Segoe UI Historic", "CuneiformNA-subset";
}
/* Standard fonts for Coptic. */
.cop {
  font-family: Nilus, "Segoe UI Historic";
}
/* Standard fonts for Sumerian. */
.sux {
  font-family: CuneiformNAOutline, Assurbanipal, Assyrian, "Segoe UI Historic", "CuneiformNA-subset";
  /* font-family: Akkadian, "Segoe UI Historic", "Akkadian-subset"; */
}
/* Standard fonts for Hebrew & Aramaic, to enable serifs when installed. */
.heb, .hbo, .arc {
  font-family: David, FrankRuehl, "Times New Roman";
}


.thumbnail {
  margin: 1em 0em 1em 0em;
  padding: 0 0.8em 0 0.4em; /* Right padding needed for stretch?!? */
  border: 0.14em solid #ccd0e8;
  border-radius: 0.5em;
  /* text-indent: 50% hanging; */
  /* Hanging interferes with pun search results. */
}
.thumbnail h2, .thumbnail h4 {
  display: inline;
  padding: 0;
  line-height: 1.3em;
  background: #e4f8ff;
  border: 0.1em solid #e4f8ff;
  border-radius: 0.3em;
}
/* Teaser line after heading. */
.thumbnail .teaser {
  display: inline;
  text-indent: 2em;
  line-height: 1.5em;
}
.thumbnail p.metadata {
  margin: 0;
  line-height: 1em;
}
.thumbnail p.search-snippet {
  margin: 1em 0 0 0;
}
/* Link to the actual article, stretched for increased clickability. */
.thumb-link, .thumb-link:hover, .thumb-link:active {
  padding: 0.4em 0.4em 0.4em 0.4em; /* Right padding needed for stretch?!? */
  width: 100%;
  display: inline-block;
}
.thumbnail .metadata {
  padding: 0 1em 0.6em 1em;
}
/* Different sizes according to word count. */
.thumbnail h2 {
  font-size: 1.6em;
}
/*
.thumbnail.size0 h2 {
  font-size: 1.0em;
}
.thumbnail.size1 h2 {
  font-size: 1.2em;
}
.thumbnail.size2 h2 {
  font-size: 1.4em;
}
.thumbnail.size3 h2 {
  font-size: 1.6em;
}
.thumbnail.size4 h2 {
  font-size: 1.8em;
}
*/

.content {
  margin: 0 auto 0 auto;
  padding: 1em 2em 1em 2em;
  max-width: 1024px;
  box-sizing: border-box;
}
@media (max-width : 600px) {
  .content {
    margin: 0;
    padding: 0.5em;
  }
}

.metadata {
  font-size: 80%;
  color: #666666;
  padding: 0.5em 0 0.5em 0;
}
.icon {
  font-family: "icon-font";
  font-weight: normal;
}
/* Link to a tag. */
.tag a {
  color: #666666;
}
.tag + .tag:before {
  content: "  \00B7  ";
}
.recommended-link + .recommended-link:before {
  content: "  \00B7  ";
}
.recommended-star {
  margin: 0 1em 0 0.2em;
  font-size: 150%;
  font-weight: bold;
}
.recommended-star > span:nth-child(1) {
  color: orange;
  position: absolute;
}
.recommended-star > span:nth-child(2) {
  color: #a0a080;
  position: absolute;
}

.text-body {
  margin-top: 2em;
  margin-bottom: 2em;
}
summary {
  display: block;
  background: #f6f9ff;
  padding: 0em 0.5em 0em 0.5em;
  border-top: 0.4em solid #ccd0e8;
  border-bottom: 0.4em solid #ccd0e8;
  border-radius: 0.5em;
}
.text-body blockquote {
  background: #fafaff;
  padding: 0.2em 1em 0.2em 1em;
  border-left: 0.4em solid #ccd0e8;
  border-radius: 0.5em;
}
.text-body blockquote > p.tlit {
  font-weight: normal;
  font-size: 90%;
}
.text-body blockquote > p.heb {
  direction: rtl;
  text-align: left
}
.text-body blockquote cite {
  font-size: 80%;
}

.formula-panel {
  background: #f6f9ff;
  margin: 1em;
  padding: 0.2em 1em 0.2em 1em;
  border-top: 0.2em solid #ccd0e8;
  border-bottom: 0.2em solid #ccd0e8;
  border-radius: 0.3em;
}

/* Language section. */
div.language-section {
  background: #f6f9ff;
  padding: 0.5em;
  margin-bottom: 2em;
  border-top: 0.2em solid #ccd0e8;
  border-bottom: 0.4em solid #ccd0e8;
  border-bottom-left-radius: 0.5em;
  border-bottom-right-radius: 0.5em;
}
h4.language-section  {
  border-top: 0.4em solid #ccd0e8;
  padding: 0.6em;
  background: #f6f9ff;
  color: #9094af;
  margin-bottom: 0;
  padding-top: 0.1em;
  padding-bottom: 0.1em;
  border-top-left-radius: 0.5em;
  border-top-right-radius: 0.5em;
}
/* Topic for language section. */
h4.language-section > span.topic {
  margin-left: 0.4em;
  font-weight: normal;
}

/* Summary and expandable details for interlinear analysis. */
/*
summary.summary-interlinear {
  display: inline;
  list-style: none;
  border: none;
  cursor: pointer;
}
summary.summary-interlinear::-webkit-details-marker {
  display: none;
}
details.details-interlinear > summary.summary-interlinear::before { 
  content: "⊕ ";
  font-family: sans-serif;
  font-size: 200%;
  line-height: 50%;
  position: relative;
  bottom: -0.1em;
  color: #9094af;
}
details[open].details-interlinear > summary.summary-interlinear::before { 
  content: "⊖ ";
}
details.details-interlinear > summary.summary-interlinear::after {
  content: "…";
  display: inline;
  font-size: 400%;
  line-height: 25%;
  position: relative;
  bottom: -0.7em;
  color: #9094af;
}
details.details-interlinear[open] > summary.summary-interlinear::after {
  content: "";
}
*/

/* Mini-tables of stacked spans inside text. */
.mini-table {
  display: inline-table;
}
.mini-table > * {
  display: table;
}

/* Pun-verse, marked up to compare official translation, and pun-translation. */
.pun-verse {
  margin-left: 0;
  margin-right: 0;
}
.pun-verse cite {
  margin-left: 0.4em;
}
/*
.pun-verse > p > span {
  background: #f0f0ff;
}
*/
.pun-verse .mini-table-block .mini-table {
  border: 0.2em solid #ccd0e8;
  border-radius: 0.7em;
}
.pun-verse .mini-table {
  border-radius: 0.5em;
}
.pun-verse > p .tlat {
  font-size: 80%;
}
.pun-verse .mini-table {
  margin: 0.4em 0.4em 0.4em 0.4em;
}
/* Pun vocabulary. */
.pun {
  color: red;
}
/* Translated pun meaning. */
.pun-txt {
  background: #ffdbdb;
}
.pun-verse .mini-table > .pun-txt {
  width: 100%;
  padding: 0.2em 0 0.2em 0;
  border-radius: 0.5em 0.5em 0 0;
}
/*
.pun-verse .mini-table > .pun-dfn {
  background: #fafaff;
  width: 100%;
  border-bottom: 0.1em solid #ccd0e8;
}
.pun-verse .mini-table > .off-dfn {
  background: #fafaff;
  width: 100%;
  border-top: 0.1em solid #ccd0e8;
}
* */
.pun-verse .mini-table > .src {
  font-size: 120%;
  color: #9094af;
  padding: 0.2em 0 0.2em 0;
  background: #ccd0e8;
  width: 100%;
}
.pun-verse .mini-table > .src > span {
  background: #ffffe4;
  padding: 0 0.2em 0 0.2em;
  border-radius: 0.2em;
}
/* Translated offical meaning. */
.off-txt {
  background: #d0ffe0;
}
/* .pun-verse .mini-table > .off-tlat { background: #f0fbf2; width: 100%; } */
.pun-verse .mini-table > .off-txt {
  width: 100%;
  padding: 0.2em 0 0.2em 0;
  border-radius: 0 0 0.5em 0.5em;
}
.pun-sum {
  background: #ffdbdb;
  border-radius: 0.5em;
}
.off-sum {
  background: #d0ffe0;
  border-radius: 0.5em;
}
.pun-verse .mini-table .egy {
  font-size: 200%;
  line-height: 100%;
}
.pun-verse .mini-table .sux {
  font-size: 120%;
}

/* Configuration widgets for pun-verses. */
#cfg-overlay {
  line-height: 1.5em;
  background: #f6f9ff;
  padding: 0.4em 0.6em 0.4em 0.6em;
  border-left: 0.2em solid #ccd0e8;
  border-right: 0.2em solid #ccd0e8;
  border-top: 0.4em solid #ccd0e8;
  border-bottom: 0.4em solid #ccd0e8;
  border-radius: 0.5em;
}
@media print {
  #cfg-overlay {
    display: none !important;
  }
}
#cfg-toggle-menu {
  font-size: 140%;
  font-weight: bold;
  color: #9094af;
}
label {
  cursor: pointer;
}
label.inline-label {
  background: #f6f9ff;
  font-weight: bold;
  color: #7074af;
  border-radius: 0.3em;
}

#cfg-toggle-menu:before {
  content: "⚙ ";
  color: #9094af;
}
#chk-toggle-menu:not(:checked) ~ #cfg-overlay #cfg-choices {
  display: none;
}
#cfg-minimal:before,
#cfg-beginner:before,
#cfg-intermediate:before,
#cfg-expert:before {
  content: "⚪ "; /* white-circle */
}
#chk-minimal:checked ~ #cfg-overlay #cfg-minimal:before,
#chk-beginner:checked ~ #cfg-overlay #cfg-beginner:before,
#chk-intermediate:checked ~ #cfg-overlay #cfg-intermediate:before,
#chk-expert:checked ~ #cfg-overlay #cfg-expert:before {
  content: "🔘 "; /* radio-button */
}
/* Minimal: official text off, word blocks off. */
#chk-minimal:checked ~ div.content .off-sum {
  display: none;
}
#chk-minimal:checked ~ div.content .mini-table-block {
  display: none;
}
/* Beginner: word blocks off. */
#chk-beginner:checked ~ div.content .mini-table-block {
  display: none;
}
/* Intermediate: source text off, glyphs off. */
#chk-intermediate:checked ~ div.content .mini-table-block .src {
  display: none;
}
#chk-intermediate:checked ~ div.content .mini-table-block .glp {
  display: none;
}

/* Header & Footer. */
#header {
  max-width: 1024px;
  margin: 0 auto 0 auto;
}
#header .header-image {
  display: block;
  border-radius: 1.5em 1.5em 0 0;
  max-width: 1024px;
  max-height: 128px;
  width: 100%;
  height: auto;
  margin: 0 auto 1.5em auto;
}
#header .menuitem {
  background: #ccd0e8;
  border-top: 0.3em solid #9094af;
  border-right: 0.1em solid #9094af;
  border-radius: 1em 1em 0 0;
  padding: 0.7em 0.7em 0.6em 1em;
  display: inline;
}
#header .menuitem > form {
  display: inline;
  margin: 0;
  padding: 0;
}
#header .menuitem > form > input[type=text] {
  border: 0.2em solid white;
  border-radius: 0.2em;
  margin: 0;
  padding: 0;
  width: 20%;
  max-width: 15em;
}
#header .menuitem > form > input[type=submit] {
  border: 0;
  margin: 0;
  padding: 0 0.2em 0 0;
  background: none;
  display: inline;
  color: #7074af;
  font-size: 140%;
  cursor: pointer;
  font-weight: bold;
}
#header .menuitem > a {
  font-size: 0.8em;
  font-weight: bold;
  font-variant: small-caps;
  text-decoration: none;
  color: #7074af;
}
#header .separator {
  background: #ccd0e8;
  width: 100%;
  max-width: 1024px;
  height: 1.5em;
  border-top: 0.3em solid #9094af;
  margin: -0.15em auto 0 auto;
}

/* Actual tables, that present tabular information. */
table.table {
  margin: 1em;
  border: 0.2em solid #ccd0e8;
  border-radius: 0.5em;
  /* This causes problems with rounded borders: */
  /* border-collapse: collapse; */
  border-spacing: 0;
}
table.table th {
  border-bottom: 0.2em solid #ccd0e8;
  background: #f6f9ff;
  color: #9094af;
  padding: 0.2em 0.4em 0.2em 0.4em;
}
table.table td {
  padding: 0.2em 0.4em 0.2em 0.4em;
}
table.table th:not(:first-child), table.table td:not(:first-child) {
  border-left: 0.12em solid #ccd0e8;
}
table.table tr:not(:first-child) td {
  border-top: 0.12em solid #ccd0e8;
}

/* Enlarge diacritics in reference table. */
.diacritics-lower {
  font-size: 400%;
  margin-left: 0.2em;
  font-family: arial;
}
.diacritics-upper {
  font-size: 400%;
  margin-left: 0.2em;
  font-family: arial;
}

/* Navigatable tabs. */
#chk-search:checked ~ #howto {
  display: none;
}
#chk-howto:checked ~ #search {
  display: none;
}
#chk-search:checked ~ #tabs > #label-howto {
  background: #ccd0e8;
  border-bottom: 0.3em solid #9094af;
}
#chk-howto:checked ~ #tabs > #label-search {
  background: #ccd0e8;
  border-bottom: 0.3em solid #9094af;
}
.tab {
  background: white;
  border-top: 0.3em solid #9094af;
  border-right: 0.1em solid #9094af;
  border-left: 0.1em solid #9094af;
  border-radius: 1em 1em 0 0;
  padding: 0.7em 0.7em 0.2em 1em;
  display: inline;
  margin-left: 1em;
  font-weight: bold;
  color: #9094af;
  border-bottom: 0.3em solid white;
}
.tab-separator {
  /*background: white;*/
  width: 100%;
  max-width: 1024px;
  height: 1.5em;
  border-top: 0.3em solid #9094af;
  border-radius: 1em 1em 0 0;
  margin: 0.2em auto 0 auto;
}

/* Widget descriptions. */
.info-bubble {
  margin-left: -0.1em;
  font-size: 80%;
  border: 0.12em solid black;
  border-radius: 0.4em;
  background: white;
  padding: 0.01em 0.4em 0.01em 0.4em;
}
