/* Global customization */

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

/* Light mode theming */
:root,
:root[color-mode="light"] {
  --header-background: #000000;
  --header-font-color: #ffffff;

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

  --mark-color: #ffab00;

  --button-background: #000000;
  --button-border-color: #000000;

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

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

  --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: #2f333e;
  --footer-font-color: #ffffff;
  --footer-link-color: #ffcc5c;
  --footer-link-color-visited: #ffcc5c;
}
@media (prefers-color-scheme: light) {
  :root {
    --header-background: #000000;
    --header-font-color: #ffffff;

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

    --mark-color: #ffab00;

    --button-background: #000000;
    --button-border-color: #000000;

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

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

    --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: #2f333e;
    --footer-font-color: #ffffff;
    --footer-link-color: #ffcc5c;
    --footer-link-color-visited: #ffcc5c;
  }
}

/* Dark mode theming */
:root[color-mode="dark"] {
  --header-background: #000000;
  --header-font-color: #ffffff;

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

  --mark-color: #ffab00;

  --button-background: #000000;
  --button-border-color: #000000;

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

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

  --code-copy-font-color: #adb4bc;
  --code-copy-border-color: #808c98;
  --code-copy-success-color: #00c853;

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

  --control-icons: #b2bac1;

  --footer-background: #2f333e;
  --footer-font-color: #ffffff;
  --footer-link-color: #ffcc5c;
  --footer-link-color-visited: #ffcc5c;
}
@media (prefers-color-scheme: dark) {
  :root {
    --header-background: #000000;
    --header-font-color: #ffffff;

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

    --mark-color: #ffab00;

    --button-background: #000000;
    --button-border-color: #000000;

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

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

    --code-copy-font-color: #adb4bc;
    --code-copy-border-color: #808c98;
    --code-copy-success-color: #00c853;

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

    --control-icons: #b2bac1;

    --footer-background: #2f333e;
    --footer-font-color: #ffffff;
    --footer-link-color: #ffcc5c;
    --footer-link-color-visited: #ffcc5c;
  }
}

/* Dark mode theming */
.card[color-mode="light"] {
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  word-wrap:break-word;
  background-color:#fff;
  background-clip:border-box;
  border:1px solid rgba(0,0,0,.125);
  border-radius:.25rem
}

/* Dark mode theming */
.card[color-mode="dark"] {
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  word-wrap:break-word;
  background-color:#fff;
  background-clip:border-box;
  border:1px solid rgba(1,1,1,.5);
  border-radius:.25rem
}

.card>hr {
	margin-right:0;
	margin-left:0
}
.card>.list-group{ 
  border-top:inherit;
  border-bottom:inherit
}
.card>.list-group:first-child {
  border-top-width:0;
  border-top-left-radius:calc(.25rem - 1px);
  border-top-right-radius:calc(.25rem - 1px)
}
.card>.list-group:last-child {
  border-bottom-width:0;
  border-bottom-right-radius:calc(.25rem - 1px);
  border-bottom-left-radius:calc(.25rem - 1px) 
}
.card>.card-header+.list-group,.card>.list-group+.card-footer {
  border-top:0
}
.card-body{flex:1 1 auto;padding:1rem 1rem}
.card-title{margin-bottom:.5rem}
.card-subtitle{margin-top:-.25rem;margin-bottom:0}
.card-text:last-child{margin-bottom:0}
.card-link+.card-link{margin-left:1rem}
.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}
.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}
.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}
.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}
.card-header-tabs{margin-right:-.5rem;margin-bottom:-.5rem;margin-left:-.5rem;border-bottom:0}
.card-header-pills{margin-right:-.5rem;margin-left:-.5rem}
.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(.25rem - 1px)}
.card-img,.card-img-bottom,.card-img-top{width:100%}
.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}
.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}
.card-group>.card{margin-bottom:.75rem}

@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}
	.card-group>.card{flex:1 0 0%;margin-bottom:0}
	.card-group>.card+.card{margin-left:0;border-left:0}
	.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
	.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}
	.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}
	.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}
	.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}
	.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}
}

.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}
.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}
.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}
.shadow-none{box-shadow:none!important}

.h-100{height:100%!important}
.h-auto{height:auto!important}
.mh-100{max-height:100%!important}
.vh-100{height:100vh!important}
.min-vh-100{min-height:100vh!important}

.ratio{position:relative;width:100%}
.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}
.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}
.ratio-1x1{--bs-aspect-ratio:100%}
.ratio-4x3{--bs-aspect-ratio:calc(3 / 4 * 100%)}
.ratio-16x9{--bs-aspect-ratio:calc(9 / 16 * 100%)}
.ratio-21x9{--bs-aspect-ratio:calc(9 / 21 * 100%)}
