/* Global customization */

:root {
  --code-max-height: 60rem;

  --header-font-family: "DancingScript";
  --body-font-family: "DancingScript";
  --code-font-family: "DancingScript";
}

/* Light mode theming */
:root,
:root[color-theme="light"] {
  --header-background: #3f3a36;
  --header-font-color: #fcfbfa;

  --body-background: #fcfbfa;
  --body-font-color: #343a40;

  --mark-color: #ffab00;

  --button-background: #62cb97;
  --button-border-color: #4ec58a;

  --link-color: #518169;
  --link-color-visited: #c54e8a;

  --code-background: #f5f6f8;
  --code-accent-color: #e3e7eb;
  --code-accent-color-lite: #eff1f3;
  --code-font-color: #5f5f5f;

  --code-copy-background: #f5f6f8;
  --code-copy-font-color: #6b7784;
  --code-copy-border-color: #adb4bc;
  --code-copy-success-color: #00c853;

  --accent-color: #e9ecef;
  --accent-color-lite: #f8f9fa;

  --control-icons: #b2bac1;

  --footer-background: #3f3a36;
  --footer-font-color: #ffffff;
  --footer-link-color: #c05745;
  --footer-link-color-visited: #c05745;
}
@media (prefers-color-scheme: light) {
  :root {
    --header-background: #3f3a36;
    --header-font-color: #fcfbfa;

    --body-background: #fcfbfa;
    --body-font-color: #343a40;

    --mark-color: #ffab00;

    --button-background: #62cb97;
    --button-border-color: #4ec58a;

    --link-color: #518169;
    --link-color-visited: #c54e8a;

    --code-background: #f5f6f8;
    --code-accent-color: #e3e7eb;
    --code-accent-color-lite: #eff1f3;
    --code-font-color: #5f5f5f;

    --code-copy-background: #f5f6f8;
    --code-copy-font-color: #6b7784;
    --code-copy-border-color: #adb4bc;
    --code-copy-success-color: #00c853;

    --accent-color: #e9ecef;
    --accent-color-lite: #f8f9fa;

    --control-icons: #b2bac1;

    --footer-background: #3f3a36;
    --footer-font-color: #ffffff;
    --footer-link-color: #c05745;
    --footer-link-color-visited: #c05745;
  }
}

/* Dark mode theming */
:root[color-theme="dark"] {
  --header-background: #8f3a34;
  --header-font-color: #fcfbfa;

  --body-background: #343a40;
  --body-font-color: #ced3d8;

  --mark-color: #ffab00;

  --button-background: #62cb97;
  --button-border-color: #4ec58a;

  --link-color: #7ac29e;
  --link-color-visited: #c27a9e;

  --code-background: #2f353a;
  --code-accent-color: #262b2f;
  --code-accent-color-lite: #2b3035;
  --code-font-color: #b9b9b9;

  --code-copy-background: #343a40;
  --code-copy-font-color: #6b7784;
  --code-copy-border-color: #6b7784;
  --code-copy-success-color: #37905c;

  --accent-color: #2b3035;
  --accent-color-lite: #2f353a;

  --control-icons: #b2bac1;

  --footer-background: #3f3a36;
  --footer-font-color: #ffffff;
  --footer-link-color: #c05745;
  --footer-link-color-visited: #c05745;
}
@media (prefers-color-scheme: dark) {
  :root {
    --header-background: #8f3a34;
    --header-font-color: #ffffff;

    --body-background: #343a40;
    --body-font-color: #ced3d8;

    --mark-color: #ffab00;

    --button-background: #62cb97;
    --button-border-color: #4ec58a;

    --link-color: #7ac29e;
    --link-color-visited: #c27a9e;

    --code-background: #2f353a;
    --code-accent-color: #262b2f;
    --code-accent-color-lite: #2b3035;
    --code-font-color: #b9b9b9;

    --code-copy-background: #343a40;
    --code-copy-font-color: #6b7784;
    --code-copy-border-color: #6b7784;
    --code-copy-success-color: #37905c;

    --accent-color: #2b3035;
    --accent-color-lite: #2f353a;

    --control-icons: #b2bac1;

    --footer-background: #3f3a36;
    --footer-font-color: #ffffff;
    --footer-link-color: #c05745;
    --footer-link-color-visited: #c05745;
  }
}

@font-face {
  font-family: "DancingScript";
  src:
    url("fonts/DancingScript.woff2") format("woff2"),
    url("fonts/DancingScript.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}


/*------ メニューバー目次 ------*/
/* スクロールに追従する */
@media (min-width: 41rem) {
  html, body {
    overflow-x: visible;
  }
}
.gdoc-nav nav {
  position: sticky;
  top: 0;
	width: 12rem;
	padding: 1rem 0 1rem 0;
  max-height: calc(100vh - 2rem); /*上下padding分の2remを引いている*/
  overflow-y: auto;
  scrollbar-width: none;
}


/* デザイン */
.gdoc-nav h1 {
  margin-bottom: 0.6em;
  font-size: 1.2em;
  font-weight: bold;
  border-bottom: 1px solid #162b3c;
  padding-bottom: .3em;
}

/* 共通設定 */
.gdoc-nav ul {
  list-style: none;
  margin: 0 0 0 -1.2em;
  padding: 0;
  overflow-y: auto;
  scrollbar-width: none;
}
.gdoc-nav li {
  margin: .5em 0;
  padding-left: 1.4em;
}
/* h1見出し */
.gdoc-nav ul > li {
  margin-left: 0;
  font-size: .9em;
}
/* h2見出し */
.gdoc-nav ul ul > li {
  margin-left: .9em;
  font-size: .88em;
}
/* h3見出し */
.gdoc-nav ul ul ul > li {
  margin-left: .8em;
  font-size: .86em;
}
/* h4以降 */
.gdoc-nav ul ul ul ul > li {
  font-size: .8em;
}

/* メニューバーの幅 */
.gdoc-nav {
    flex: 0 0 15rem;
}
@media screen and (max-width: 41rem) {
	.gdoc-nav {
		margin-left: -15rem;
		font-size: 16px
	}
}
/* ----------------------------- */
