/*!
 * Font Awesome Free 5.14.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
 */

/********** フォント **********/

@font-face {
  font-display: auto;
  font-family: 'Font Awesome 5 Free Brands';
  font-style: normal;
  font-weight: 400;
  src: url(/img/v5/fa-brands-400-5.14.0.ttf);
}

@font-face {
  font-display: auto;
  font-family: 'Font Awesome 5 Free Regular';
  font-style: normal;
  font-weight: 400;
  src: url(/img/v5/fa-regular-400-5.14.0.ttf);
}

@font-face {
  font-display: auto;
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: 400;
  src: url(/img/v5/fa-solid-900-5.14.0.ttf);
}

/********** 全体制御 **********/

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  position: relative;
}

html, body {
  background-repeat: repeat;
  font-family: -apple-system,
    'Helvetica Neue', 'ヒラギノ角ゴ Pro', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic Pro', 'Hiragino Sans',
    'メイリオ', Meiryo, Osaka, Verdana, Roboto, sans-serif;
  font-weight: normal;
  line-height: 100%;
}

html {
  overflow-y: scroll;
}

body {
  -webkit-text-size-adjust: 100%;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

img {
  vertical-align: bottom;
}

/********** ヘッダエリア **********/

header h1 {
  margin-left: 5px;
}

header h1 a {
  display: inline-block;
  margin-top: 1.4rem;
}

header h1 img {
  height: 40px;
  margin: -1px;
  width: 320px;
}

header h1 i {
  display: none;
}

header article {
  left: 5px;
  position: absolute;
  top: 0;
  width: 370px;
  z-index: 1;
}

@media screen and (max-width: 840px) {
header article {
  position: relative;
}}

/*
@media screen and (orientation: portrait) {
header article {
  position: relative;
}}
*/

header article p {
  font-size: 0.8rem;
  font-weight: bold;
  left: 5px;
  position: absolute;
  top: 5px;
}

header aside {
  margin: 0.5rem 0.3rem 0.8rem 0;
  text-align: right;
}

header aside p {
  font-size: 0.8rem;
  font-weight: bold;
}

header aside>p {
  margin-right: 0.6rem;
}

header aside ul {
  display: flex;
  justify-content: flex-end;
  list-style: none;
}

header aside ul li {
  padding-left: 0.4rem;
  padding-right: 0.4rem;
}

header aside ul li a {
  border-radius: 0.2rem;
  display: block;
  padding: 0.2rem 0.5rem;
}

header aside ul li a:hover,
header aside ul li.selected a {
  text-decoration: none;
}

header aside ul li.icon p img {
  height: 16px;
  width: 16px;
}

header aside hr {
  border: none;
  height: 1px;
  margin: 0.3rem 0 0.5rem 370px;
}

@media screen and (max-width: 840px) {
header aside hr {
  margin-left: 0.3rem;
}}

/*
@media screen and (orientation: portrait) {
header aside hr {
  margin-left: 0.3rem;
}}
*/

header aside i {
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: normal;
}

header aside i::after {
  content: ' ';
  font-size: 0.8rem;
  line-height: 1px;
}

header nav {
  margin-top: 0.6rem;
  position: relative;
  z-index: 2;
}

header nav p {
  font-size: 1rem;
  font-weight: bold;
}

header nav ul {
  display: flex;
  list-style: none;
  margin: 0 auto;
  max-width: 72rem;
  width: 85%;
}

@media screen and (max-width: 1024px) {
header nav ul {
  width: 90%;
}}

@media screen and (max-width: 800px) {
header nav ul {
  width: 95%;
}}

@media screen and (max-width: 640px) {
header nav ul {
  width: 100%;
}}

/*
@media screen and (orientation: portrait) {
header nav ul {
  width: 100%;
}}
*/

header nav ul li {
  flex: 1;
}

header nav ul li.lerge {
  flex: 1.6;
}

@media screen and (max-width: 800px) {
header nav ul li:first-of-type {
  display: none;
}}

header nav ul li a {
  display: table-cell;
  height: 3.5rem;
  line-height: 125%;
  padding: 0.25rem;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  width: 1000px;
}

@media screen and (max-width: 640px) {
header nav ul li a {
  font-size: 0.9rem;
}}

@media screen and (max-width: 480px) {
header nav ul li a {
  font-size: 0.8rem;
  line-height: 150%;
}}

header nav ul li a:hover,
header nav ul li.selected a:hover {
  text-decoration: none;
}

header nav ul li.selected::before {
  bottom: calc(-1rem + 2px);
  content: '\f0d7';
  display: block;
  font-family: 'Font Awesome 5 Free Solid';
  font-size: 3rem;
  left: calc(50% - 1rem);
  margin-top: -2px;
  position: absolute;
  text-decoration: none;
  transform: scaleY(1.5);
}

header nav hr {
  display: none;
}

/********** メインエリア **********/

main {
  box-shadow: 0.1rem 0.1rem 0.8rem 0.1rem rgba(0,0,0,0.2);
  border-radius: 0.2rem;
  display: block; /* for IE11 */
  flex-grow: 1;
  margin: 2.3rem auto 2.8rem auto;
  max-width: 72rem;
  padding: 0 2rem 2rem 2rem;
  width: 85%;
}

@media screen and (max-width: 1024px) {
main {
  padding: 0 1rem 2rem 1rem;
  width: 90%;
}}

@media screen and (max-width: 800px) {
main {
  padding: 0 1rem 2rem 1rem;
  width: 95%;
}}

@media screen and (max-width: 640px) {
main {
  margin: 2.3rem auto 0 auto;
  padding: 0 1rem 2rem 1rem;
  width: 100%;
}}

/*
@media screen and (orientation: portrait) {
main {
  padding: 0 1rem 2rem 1rem;
  width: 100%;
}}
*/

main h2 {
  border-radius: 0.2rem 0.2rem 0 0;
  font-size: 1.2rem;
  line-height: 130%;
  margin: 0 -2rem 1.2rem -2rem;
}

@media screen and (max-width: 1024px) {
main h2 {
  margin: 0 -1rem 0.6rem -1rem;
}}

@media screen and (max-width: 800px) {
main h2 {
  margin: 0 -1rem 0.6rem -1rem;
}}

@media screen and (max-width: 640px) {
main h2 {
  margin: 0 -1rem 0.6rem -1rem;
}}

/*
@media screen and (orientation: portrait) {
main h2 {
  margin: 0 -1rem 0.6rem -1rem;
}}
*/

main h2 i {
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: normal;
  margin-right: 0.8rem;
}

main h2 label {
  display: block;
  padding: 0.9rem 1.2rem 0.7rem 1.2rem;
}

/********** 記事エリア **********/

main article {
  margin-left: 0.6rem;
  margin-right: 0.6rem;
}

main article>h3 {
  font-size: 1.2rem;
  line-height: 130%;
  margin: 0 -0.5rem 1rem -0.5rem;
}

main article>h3:last-child {
  margin-bottom: 0;
}

main article:has(>h3:last-child)+article:has(>h4) {
  margin-top: 0;
}

main article>h3 i {
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: normal;
  margin-right: 0.4rem;
}

main article>h3 label {
  display: block;
  padding: 0.7rem 0.7rem 0.5rem 1.2rem;
}

main article>h3+section {
  margin-top: 1.5rem;
}

main article>h4 {
  font-size: 1.1rem;
  line-height: 120%;
  margin: -0.5rem -0.5rem 1rem -0.5rem;
}

main article>h4:last-child {
  margin-bottom: 0;
}

main article:has(>h4:last-child)+article:has(>h5) {
  margin-top: 0;
}

main article>h5 {
  font-size: 1rem;
  line-height: 110%;
  margin: -0.5rem -0.5rem 1rem -0.5rem;
}

main article>h4 i,
main article>h5 i {
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: normal;
  margin-right: 0.4rem;
}

main article>h4 label {
  display: block;
  padding: 0.6rem 0.7rem 0.4rem 1.2rem;
}

main article>h5 label {
  display: block;
  padding: 0.4rem 0.7rem 0.3rem 1.2rem;
}

main article>h6 {
  font-size: 1rem;
  line-height: 150%;
  margin-top: 1rem;
  padding-bottom: 0.2rem;
  padding-top: 0.2rem;
}

main article blockquote {
  border-radius: 0.2rem;
  margin: 2rem 2rem 3rem 2rem;
  padding: 0.8rem 1rem;
  text-align: center;
}

main article ul {
  margin-left: 2rem;
}

main article ol {
  margin-left: 2rem;
}

main>article {
  border-top: 1.5rem solid rgba(0,0,0,0);
  margin-top: 1.5rem;
}

main>article:first-of-type {
  border-top: 0;
}

@media screen and (max-width: 800px) {
main>article {
  margin-left: 0.4rem;
  margin-right: 0.4rem;
}}

@media screen and (max-width: 640px) {
main>article {
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}}

/*
@media screen and (orientation: portrait) {
main>article {
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}}
*/

/********** 付録エリア **********/

main section {
  border-radius: 0.2rem;
  margin-bottom: 1rem;
  margin-top: 1rem;
  padding: 0.6rem;
}

main section:last-child {
  margin-bottom: 0;
}

main section>h4 {
  font-size: 1rem;
  line-height: 130%;
  margin: -0.6rem -0.6rem 0.6rem -0.6rem;
}

main section>h4 i {
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: normal;
  margin-right: 0.4rem;
}

main section>h4 label {
  display: block;
  padding: 0.5rem 0.7rem 0.3rem 0.7rem;
}

main section nav ul {
  display: flex;
  margin-left: 2rem;
}

@media screen and (max-width: 640px) {
main section nav ul {
  display: block;
}}

main section nav ul li {
  margin-left: 3rem;
}

@media screen and (max-width: 640px) {
main section nav ul li {
  margin-left: 0;
}}

main section nav ul li:first-child {
  margin-left: 0;
}

/********** 記事共通 **********/

main a {
  font-weight: bold;
}

main a.download::before {
  content: '\f019';
  font-family: 'Font Awesome 5 Free Solid';
  font-weight: normal;
  margin-left: 0.4rem;
  padding-right: 0.4rem;
  text-decoration: none;
}

main a.download:first-child::before {
  margin-left: 0;
}

main a.github::before {
  content: '\f09b';
  font-family: 'Font Awesome 5 Free Brands';
  font-weight: normal;
  margin-left: 0.4rem;
  padding-right: 0.4rem;
  text-decoration: none;
}

main a.github:first-child::before {
  margin-left: 0;
}

main a.twitter::before {
  content: '\f099';
  font-family: 'Font Awesome 5 Free Brands';
  font-weight: normal;
  margin-left: 0.4rem;
  padding-right: 0.4rem;
  text-decoration: none;
}

main a.twitter:first-child::before {
  margin-left: 0;
}

main a.external::after {
  content: '\f35d';
  font-family: 'Font Awesome 5 Free Solid';
  font-weight: normal;
  font-size: 0.7rem;
  margin-right: 0.2rem;
  padding-left: 0.2rem;
  text-decoration: none;
}

main em {
  font-style: normal;
  font-weight: bold;
  text-decoration: none;
}

main hr {
  border: none;
  height: 1px;
  margin-bottom: 2rem;
  margin-top: 2rem;
}

main img {
  max-width: 100%;
}

main input[type=text] {
  border-radius: 0.2rem;
  padding: 0.4rem 0.8rem;
}

main p {
  font-size: 1rem;
  line-height: 150%;
  padding-bottom: 0.2rem;
  padding-top: 0.2rem;
  word-wrap: break-word;
}

main p>img {
  vertical-align: middle;
}

main pre {
  font-family: monospace;
  line-height: 120%;
  margin-bottom: 0.6rem;
  margin-top: 0.6rem;
  overflow: auto;
  padding: 0.6rem;
  white-space: -moz-pre-wrap; /* Firefox */
  white-space: -o-pre-wrap;   /* Opera 7 */
  white-space: -pre-wrap;     /* Opera 4-6 */
  white-space: pre-wrap;      /* CSS3 */
  word-wrap: break-word;      /* MSIE 5.5 */
}

main table {
  border: 0;
}

main table.border {
  margin-bottom: 1rem;
}

main table.border th,
main table.border td {
  padding-left: 0.3rem;
  padding-right: 0.3rem;
}

@media screen and (max-width: 640px) {
main table.border th,
main table.border td {
  word-break: break-word;
}}

main small {
  font-size: 0.8rem;
  font-weight: bold;
  margin-left: 0.2rem;
  margin-right: 0.2rem;
}

main strong {
  font-style: normal;
}

main u {
  text-decoration-style: wavy;
}

/********** フッタエリア **********/

footer aside {
  font-weight: bold;
}

footer aside p {
  font-size: 0.8rem;
  font-weight: bold;
}

@media screen and (max-width: 1024px) {
footer aside p {
  font-size: 0.7rem;
}}

@media screen and (max-width: 800px) {
footer aside p {
  font-size: 0.6rem;
}}

footer aside ul {
  display: flex;
  list-style: none;
  padding: 0.5rem 0.8rem;
}

footer aside ul li:first-child {
  margin-right: auto;
}

@media screen and (max-width: 640px) {
footer aside ul {
  display: block;
}}

footer hr {
  display: none;
}

footer nav {
  bottom: 2.5rem;
  opacity: 0;
  position: fixed;
  right: 0;
  visibility: hidden;
}

@media screen and (max-width: 640px) {
footer nav {
  bottom: 0.5rem;
}}

footer nav.active {
  opacity: 1;
  visibility: visible;
}

footer nav p {
  font-size: 1.1rem;
  font-weight: bold;
}

footer nav ul {
  display: flex;
  justify-content: flex-end;
  list-style: none;
}

footer nav ul li {
  border-radius: 0.2rem 0 0 0.2rem;
}

footer nav ul li a {
  display: block;
  padding: 0.4rem 0.6rem;
}

footer nav ul li a:hover {
  text-decoration: none;
}

footer aside i,
footer nav i {
  font-family: 'Font Awesome 5 Free Solid';
  font-style: normal;
  font-weight: normal;
}

footer nav i::after {
  content: ' ';
  font-size: 1rem;
  line-height: 1px;
}

/********** 共通クラス **********/

.float-l {
  float: left;
  margin: 0.4rem 1rem 0.4rem 0.4rem;
}

.hidden {
  display: none;
  height: 0;
  width: 0;
}

/********** アニメーション **********/

html.transition,
html.transition * {
  transition: background 200ms 0ms ease,
    border 200ms 0ms ease,
    box-shadow 200ms 0ms ease,
    color 200ms 0ms ease,
    text-shadow 200ms 0ms ease;
}

html.transition footer nav {
  transition: all 300ms 0ms ease;
}

html.transition footer nav.active {
  transition: opacity 300ms 600ms ease;
}

/********** ツールチップ **********/

body>.tooltip {
  border-radius: 0.5rem;
  line-height: 125%;
  max-width: 30rem;
  opacity: 0;
  padding: 0.4rem 0.5rem;
  pointer-events: none;
  position: fixed;
  transition: all 300ms 0ms ease;
  z-index: 9;
}

body>.tooltip.active {
  opacity: 1;
  transition: opacity 300ms 300ms ease;
}

/********** InstantClick **********/

#instantclick {
  color: #ff0000 !important;
}

/********** 埋め込み画像 **********/

main h2 label,
footer aside ul {
  /* background-image: url(/img/v5/noise.png); */
  background-image: url(data:image/png;base64,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);
}

/********** ライトテーマ **********/

html.light-theme {
  background: #fafafa;
  background-image: linear-gradient(-45deg, #fcfcfc 25%, #f8f8f8 25%, #f8f8f8 50%, #fcfcfc 50%, #fcfcfc 75%, #f8f8f8 75%, #f8f8f8);
  background-size: 8px 8px;
  color: #242424;
}

html.light-theme header {
  background: #ffffff;
  border-top: 1px solid #ffffff;
  box-shadow: 0 0 10px rgba(0,0,0,0.3) inset;
  color: #bb3322;
}

html.light-theme header h1 a {
  box-shadow: 0 0 60px rgba(0,0,0,0.2) inset,
    0 0 30px rgba(255,255,255,0.9) inset,
    108px 0 0 #ffa022 inset,
    -212px 0 0 #4499ee inset;
}

html.light-theme header h1 img {
  /* background-image: url(/img/v5/logo-light.png); */
  background-image: url(data:image/png;base64,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);
}

html.light-theme header aside ul li {
  border-left: 1px solid #bbbbbb;
}

html.light-theme header aside ul li:first-child {
  border-left: 0;
}

html.light-theme header aside ul li a {
  color: #bb3322;
}

html.light-theme header aside ul li a:hover,
html.light-theme header aside ul li.selected a {
  background: #dd4433;
  background: linear-gradient(to bottom, #dd4433, #881a11);
  box-shadow: 0 0.7rem 0 rgba(255,255,255,0.1) inset;
  color: #ffffff;
}

html.light-theme header aside hr {
  background: #cc4433;
  box-shadow: 0 0.02rem rgba(0,0,0,0.2);
}

html.light-theme header nav {
  background: #bb3322;
  background: linear-gradient(to bottom, #bb3322, #771a11);
  border-bottom: 1px solid #662211;
  border-top: 1px solid #cc4433;
  box-shadow: 0 0.1rem 0.3rem 0.1rem rgba(0,0,0,0.2);
}

html.light-theme header nav ul li {
  border-left: 1px solid #881a11;
  border-right: 1px solid #cc3322;
}

html.light-theme header nav ul li a {
  background: #cc3322;
  background: linear-gradient(to bottom, #cc3322, #881a11);
  color: #ffffff;
}

html.light-theme header nav ul li a:hover {
  background: #dd4433;
  background: linear-gradient(to bottom, #dd4433, #881a11);
  box-shadow: 0 1.7rem 0 rgba(255,255,255,0.1) inset;
}

html.light-theme header nav ul li.selected a {
  background: #ff6633;
  background: linear-gradient(to bottom, #ff6633, #881a11);
  box-shadow: 0 1.7rem 0 rgba(255,255,255,0.1) inset;
}

html.light-theme header nav ul li.selected a:hover {
  background: #dd4433;
  background: linear-gradient(to bottom, #dd4433, #881a11);
  box-shadow: 0 1.7rem 0 rgba(255,255,255,0.1) inset;
}

html.light-theme header nav ul li.selected::before {
  color: #881a11;
  text-shadow: 0 0.2rem 0.3rem rgba(0,0,0,0.2);
}

html.light-theme main {
  background: #ffffff;
  box-shadow: 0.1rem 0.1rem 0.8rem 0.1rem rgba(0,0,0,0.2);
}

html.light-theme main h2 {
  background: #aa2211;
  background: linear-gradient(to bottom, #ee5522, #aa2211);
  box-shadow: 0 0.5rem 0 rgba(255,255,255,0.05) inset,
    0 -0.7rem 0 rgba(0,0,0,0.05) inset;
  color: #ffffff;
  text-shadow: 1px 1px 1px rgba(255,255,255,0.3);
}

html.light-theme main h2::after {
  background: linear-gradient(-135deg, #bb4200 2px, transparent 0) 0 2px,
    linear-gradient(135deg, #bb4200 2px, #ffffff 0) 0 2px;
}

html.light-theme main article>h3 {
  background: rgba(255,0,0,0.15);
  background: linear-gradient(to right, rgba(255,0,0,0.15), rgba(255,0,0,0.02));
  border-left: 1rem solid rgba(255,0,0,0.4);
  color: #bb3322;
}

html.light-theme main article>h4 {
  background: rgba(255,0,0,0.1);
  background: linear-gradient(to right, rgba(255,0,0,0.1), rgba(255,0,0,0.02));
  border-left: 0.8rem solid rgba(255,0,0,0.3);
  color: #bb3322;
}

html.light-theme main article>h5 {
  background: rgba(255,0,0,0.05);
  background: linear-gradient(to right, rgba(255,0,0,0.05), rgba(255,0,0,0.02));
  border-left: 0.6rem solid rgba(255,0,0,0.2);
  color: #bb3322;
}

html.light-theme main article>h6 {
  color: #404040;
}

html.light-theme main article blockquote {
  border: 1px solid #c4c4c4;
}

html.light-theme main section {
  background: #f8f8f8;
  background-image: linear-gradient(-45deg, #fcfcfc 25%, #fcfcfc 25%, #fcfcfc 50%, #f4f4f4 50%, #f4f4f4 75%, #f4f4f4 75%, #f4f4f4);
  background-size: 5px 5px;
  border: 1px solid #c4c4c4;
  box-shadow: 0.05rem 0.05rem 0.2rem rgba(0,0,0,0.1);
}

html.light-theme main section>h4 {
  background: rgba(0,0,0,0.1);
  background: linear-gradient(to bottom, rgba(255,255,255,0.1), rgba(0,0,0,0.1));
  border-bottom: 1px solid rgba(0,0,0,0.2);
  color: #bb3322;
}

html.light-theme main a {
  color: #4466cc;
}

html.light-theme main a:visited {
  color: #9955aa;
}

html.light-theme main a:hover {
  color: #bb3322;
}

html.light-theme main a.external {
  color: #3388cc;
}

html.light-theme main a.external:visited {
  color: #aa77cc;
}

html.light-theme main a.external:hover {
  color: #bb5522;
}

html.light-theme main em {
  color: #404040;
}

html.light-theme main hr {
  background: #cccccc;
  background: linear-gradient(to left, #eeeeee, #cccccc, #eeeeee);
  box-shadow: 0 0.02rem rgba(0,0,0,0.2);
}

html.light-theme main input[type=text] {
  background: #ffffff;
  border: 1px solid #cccccc;
  color: #242424;
}

html.light-theme main pre {
  background-color: #f4f4f4;
  border: #d4d4d4 solid 1px;
  box-shadow: 0.05rem 0.05rem 0.2rem rgba(0,0,0,0.1);
}

html.light-theme main table.border {
  border: 1px solid #ddcccc;
}

html.light-theme main table.border th {
  background-color: #ffe4cc;
  background: linear-gradient(to bottom, #ffeedd, #ffe4cc);
  border: 1px solid #ddcccc;
}

html.light-theme main table.border td {
  border: 1px solid #ddcccc;
}

html.light-theme main small {
  color: #cc2222;
}

html.light-theme main strong {
  box-shadow: 0 -0.3rem 0 rgba(255,0,0,0.25) inset;
  color: #aa2222;
}

html.light-theme main s {
  text-decoration: line-through double rgba(255,0,0,0.75);
}

html.light-theme footer aside {
  background: #443832;
  background: linear-gradient(to bottom, #443832, #554a44);
  border-top: 1px solid #776b65;
  color: #f4f0ee;
}

html.light-theme footer nav {
  box-shadow: 0.05rem 0.1rem 0.3rem 0.05rem rgba(0,0,0,0.3);
}

html.light-theme footer nav ul li {
  border-bottom: 1px solid #662211;
  border-left: 1px solid #cc4433;
  border-top: 1px solid #cc4433;
}

html.light-theme footer nav ul li a {
  background: #cc3322;
  background: linear-gradient(to bottom, #cc3322, #881a11);
  color: #ffffff;
}

html.light-theme footer nav ul li a:hover {
  background: #dd4433;
  background: linear-gradient(to bottom, #dd4433, #881a11);
  box-shadow: 0 0.95rem 0 rgba(255,255,255,0.1) inset;
}

html.light-theme body>.tooltip {
  background: rgba(0,0,0,0.7);
  border: 1px solid rgba(255,255,255,0.2);
  box-shadow: 0.1rem 0.1rem 0.15rem rgba(0,0,0,0.3);
  color: #ffffff;
}

/********** ダークテーマ **********/

html.dark-theme {
  background: #0f0f0f;
  background-image: linear-gradient(-45deg, #121212 25%, #0c0c0c 25%, #0c0c0c 50%, #121212 50%, #121212 75%, #0c0c0c 75%, #0c0c0c);
  background-size: 8px 8px;
  color: #b8b8b8;
  scrollbar-3dlight-color: #662211;
  scrollbar-arrow-color: #ffffff;
  scrollbar-color: #662211 #000000;
  scrollbar-darkshadow-color: #662211;
  scrollbar-face-color: #662211;
  scrollbar-highlight-color: #662211;
  scrollbar-shadow-color: #662211;
  scrollbar-track-color: #000000;
}

html.dark-theme::-webkit-scrollbar-thumb {
  background: #662211;
}

html.dark-theme::-webkit-scrollbar-track {
  background: #000000;
}

html.dark-theme header {
  background: #000000;
  border-top: 1px solid #000000;
  box-shadow: 0 0 10px rgba(255,255,255,0.2) inset;
  color: #bb3322;
}

html.dark-theme header h1 a {
  box-shadow: 0 0 60px rgba(0,0,0,0.5) inset,
    0 0 30px rgba(255,255,255,0.9) inset,
    108px 0 0 #cc6600 inset,
    -212px 0 0 #3377cc inset;
}

html.dark-theme header h1 img {
  /* background-image: url(/img/v5/logo-dark.png); */
  background-image: url(data:image/png;base64,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);
}

html.dark-theme header aside ul li {
  border-left: 1px solid #333333;
}

html.dark-theme header aside ul li:first-child {
  border-left: 0;
}

html.dark-theme header aside ul li a {
  color: #bb3322;
}

html.dark-theme header aside ul li a:hover,
html.dark-theme header aside ul li.selected a {
  background: #dd4433;
  background: linear-gradient(to bottom, #dd4433, #881a11);
  box-shadow: 0 0.7rem 0 rgba(255,255,255,0.1) inset;
  color: #cccccc;
}

html.dark-theme header aside hr {
  background: #cc4433;
  box-shadow: 0 0.02rem rgba(255,255,255,0.1);
}

html.dark-theme header nav {
  background: #882211;
  background: linear-gradient(to bottom, #882211, #661808);
  border-bottom: 1px solid #662211;
  border-top: 1px solid #aa3322;
  box-shadow: 0 0.1rem 0.3rem 0.1rem rgba(255,255,255,0.1);
}

html.dark-theme header nav ul li {
  border-left: 1px solid #881a11;
  border-right: 1px solid #aa3322;
}

html.dark-theme header nav ul li a {
  background: #882211;
  background: linear-gradient(to bottom, #882211, #661808);
  color: #cccccc;
}

html.dark-theme header nav ul li a:hover {
  background: #aa3322;
  background: linear-gradient(to bottom, #aa3322, #882211);
  box-shadow: 0 1.7rem 0 rgba(255,255,255,0.1) inset;
}

html.dark-theme header nav ul li.selected a {
  background: #bb4833;
  background: linear-gradient(to bottom, #bb4833, #883311);
  box-shadow: 0 1.7rem 0 rgba(255,255,255,0.1) inset;
}

html.dark-theme header nav ul li.selected a:hover {
  background: #aa3322;
  background: linear-gradient(to bottom, #aa3322, #882211);
  box-shadow: 0 1.7rem 0 rgba(255,255,255,0.1) inset;
}

html.dark-theme header nav ul li.selected::before {
  color: #883311;
  text-shadow: 0 0.2rem 0.3rem rgba(255,255,255,0.1);
}

html.dark-theme main {
  background: #000000;
  box-shadow: 0.1rem 0.1rem 2rem 0.1rem rgba(255,255,255,0.1),
    0 0 0.2rem rgba(255,255,255,0.4) inset;
}

html.dark-theme main h2 {
  background: #881810;
  background: linear-gradient(to bottom, #bb441c, #881810);
  box-shadow: 0 0.5rem 0 rgba(255,255,255,0.05) inset,
    0 -0.7rem 0 rgba(0,0,0,0.05) inset;
  color: #cccccc;
  text-shadow: 1px 1px 1px rgba(255,255,255,0.3);
}

html.dark-theme main h2::after {
  background: linear-gradient(-135deg, #bb4200 2px, transparent 0) 0 2px,
    linear-gradient(135deg, #bb4200 2px, #ffffff 0) 0 2px;
}

html.dark-theme main article>h3 {
  background: rgba(255,0,0,0.3);
  background: linear-gradient(to right, rgba(255,0,0,0.3), rgba(255,0,0,0.05));
  border-left: 1rem solid rgba(255,0,0,0.5);
  color: #cc5a44;
}

html.dark-theme main article>h4 {
  background: rgba(255,0,0,0.25);
  background: linear-gradient(to right, rgba(255,0,0,0.25), rgba(255,0,0,0.05));
  border-left: 0.8rem solid rgba(255,0,0,0.4);
  color: #cc5a44;
}

html.dark-theme main article>h5 {
  background: rgba(255,0,0,0.2);
  background: linear-gradient(to right, rgba(255,0,0,0.2), rgba(255,0,0,0.05));
  border-left: 0.6rem solid rgba(255,0,0,0.3);
  color: #cc5a44;
}

html.dark-theme main article>h6 {
  color: #c4c4c4;
}

html.dark-theme main article blockquote {
  border: 1px solid #282828;
}

html.dark-theme main section {
  background: #111111;
  background-image: linear-gradient(-45deg, #141414 25%, #141414 25%, #141414 50%, #0e0e0e 50%, #0e0e0e 75%, #0e0e0e 75%, #0e0e0e);
  background-size: 5px 5px;
  border: 1px solid #2c2c2c;
  box-shadow: 0.05rem 0.05rem 0.2rem rgba(255,255,255,0.05);
  color: #bbbbbb;
}

html.dark-theme main section>h4 {
  background: rgba(0,0,0,0.1);
  background: linear-gradient(to bottom, rgba(255,255,255,0.1), rgba(0,0,0,0.1));
  border-bottom: 1px solid rgba(0,0,0,0.2);
  color: #888888;
  text-shadow: 0.05rem 0.05rem 0.1rem rgba(255,255,255,0.2);
}

html.dark-theme main a {
  color: #4466cc;
}

html.dark-theme main a:visited {
  color: #9955aa;
}

html.dark-theme main a:hover {
  color: #bb3322;
}

html.dark-theme main a.external {
  color: #3388cc;
}

html.dark-theme main a.external:visited {
  color: #aa77cc;
}

html.dark-theme main a.external:hover {
  color: #bb5522;
}

html.dark-theme main em {
  color: #c4c4c4;
}

html.dark-theme main hr {
  background: #333333;
  background: linear-gradient(to left, #1e1e1e, #333333, #1e1e1e);
  box-shadow: 0 0.02rem rgba(255,255,255,0.1);
}

html.dark-theme main img {
  opacity: 0.8;
}

html.dark-theme main input[type=text] {
  background: #181818;
  border: 1px solid #555555;
  color: #bbbbbb;
}

html.dark-theme main pre {
  background-color: #222222;
  border: #3c3c3c solid 1px;
  box-shadow: 0.05rem 0.05rem 0.2rem rgba(255,255,255,0.05);
}

html.dark-theme main table.border {
  border: 1px solid #3c3333;
}

html.dark-theme main table.border th {
  background-color: #282422;
  background: linear-gradient(to bottom, #282422, #201e1d);
  border: 1px solid #383030;
}

html.dark-theme main table.border td {
  border: 1px solid #3c3333;
}

html.dark-theme main small {
  color: #cc2222;
}

html.dark-theme main strong {
  box-shadow: 0 -0.3rem 0 rgba(255,0,0,0.4) inset;
  color: #cc2222;
}

html.dark-theme main s {
  text-decoration: line-through double rgba(255,0,0,0.75);
}

html.dark-theme footer aside {
  background: #2d2521;
  background: linear-gradient(to bottom, #2d2521, #3e3631);
  border-top: 1px solid #554a44;
  color: #d4d0cc;
}

html.dark-theme footer nav {
  box-shadow: 0.05rem 0.1rem 0.3rem 0.05rem rgba(255,255,255,0.15);
}

html.dark-theme footer nav ul li {
  border-bottom: 1px solid #662211;
  border-left: 1px solid #cc4433;
  border-top: 1px solid #cc4433;
}

html.dark-theme footer nav ul li a {
  background: #cc3322;
  background: linear-gradient(to bottom, #cc3322, #881a11);
  color: #cccccc;
}

html.dark-theme footer nav ul li a:hover {
  background: #dd4433;
  background: linear-gradient(to bottom, #dd4433, #881a11);
  box-shadow: 0 0.95rem 0 rgba(255,255,255,0.1) inset;
}

html.dark-theme body>.tooltip {
  background: rgba(0,0,0,0.8);
  border: 1px solid rgba(255,255,255,0.3);
  box-shadow: 0.1rem 0.1rem 0.15rem rgba(0,0,0,0.3);
  color: #cccccc;
}
