﻿:root {
  --white: #fff;
  --black: #000;
  --gray-50: #f9f9f9;
  --gray-100: #ececec;
  --gray-200: #e3e3e3;
  --gray-300: #cdcdcd;
  --gray-400: #b4b4b4;
  --gray-500: #9b9b9b;
  --gray-600: #676767;
  --gray-700: #424242;
  --gray-750: #2f2f2f;
  --gray-800: #212121;
  --gray-900: #171717;
  --gray-950: #0d0d0d;
  --primary: #56b3e7;
  --primary-fg: #fff;
  --max-top-padding: 2rem;
  --hand-written: "Comic Sans MS", "Chalkboard SE", "Comic Neue", "Marker Felt", cursive, sans-serif;
}

:root, html {
  font-family: Georgia, Cambria, "Times New Roman", Times, serif;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: normal;
  -webkit-tap-highlight-color: transparent;
  /*font-family: ui-sans-serif, -apple-system, system-ui, Segoe UI, Helvetica, Apple Color Emoji, Arial, sans-serif, Segoe UI Emoji, Segoe UI Symbol;*/
  font-variation-settings: normal;
  line-height: 1.5;
  tab-size: 4;
}

button {
  font-family: Georgia, Cambria, "Times New Roman", Times, serif;
}

h1 {
  font-size: 3em;
  font-weight: 100;
  letter-spacing: -0.05em;
  word-break: break-word;
  line-height: 1em;
}
h1:focus {
  outline: none;
}

.civies {
  font-weight: 800;
}
.civies span {
  font-family: sans-serif;
  letter-spacing: -0.1em;
  font-size: 1.2em;
  margin-right: 0.1em;
}
.civies.small {
  font-size: 0.5em;
  vertical-align: text-top;
  margin-right: 0.15em;
}
.civies.small span {
  font-size: 1.5em;
}

h2 {
  font-weight: bold;
  font-size: 1.75rem;
}

p {
  line-height: 1.5em;
  letter-spacing: -0.01em;
  text-align: justify;
  margin: 0.5em 0 2em 0;
}

body {
  margin: 0;
  padding: 0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-size: 18px;
}

body > div {
  display: block;
  max-width: 800px;
  padding: 5vw 10vw 5vw 10vw;
  margin: auto;
  margin-right: 25vw;
}
body > div.ledger-app {
  padding: min(var(--max-top-padding), 5vw) 10vw 5vw 10vw;
}

@media (max-width: 400px) {
  body > div {
    padding: 5vw 10vw 5vw 5vw;
  }
}
@media print {
  h1, h2, h3 {
    page-break-after: avoid;
  }
  p {
    widows: 2;
    orphans: 2;
  }
  .dont-print {
    display: none !important;
  }
  body > div {
    padding: 5vw 5vw;
    max-width: revert;
    margin: revert;
  }
}
blockquote, figure {
  line-height: 2em;
  background: var(--gray-100);
  margin: 0 0 2em 0;
  padding: 1em 5vw;
}

figure * {
  overflow: auto;
}

figcaption {
  font-style: italic;
  text-align: left;
  font-size: 0.85rem;
}

code {
  background-color: var(--gray-100);
  border-radius: 0.25rem;
  font-size: 0.875em;
  font-weight: 500;
  padding: 0.15rem 0.3rem;
}

.nav {
  position: fixed;
  width: 20vw;
  top: 5vw;
  padding: 5vw;
  right: 0;
  display: grid;
  align-content: center;
}
.nav a {
  text-decoration: none;
  display: block;
  color: black;
}
.nav a.active {
  font-weight: bold;
  border-left: 0.25rem solid;
  padding-left: 1rem;
  margin-left: -1.25rem;
}
.nav a + a {
  margin-top: 1rem;
}
.nav hr {
  height: 1px;
  border: 0;
  background: black;
  margin: 2rem 0;
}

.big-space {
  height: 10vw;
  max-height: 4rem;
}

/*
.nav {
    margin-top: 2rem;
    padding: 2vw 10vw;

    img {
        width: 20vw;
        min-width: 150px;
        max-width: 200px;
    }

    a {
        text-decoration: none;
        color: white;
        display: block;

        &.active {
            font-weight: bold;
        }
    }
    //a + a {
    //    margin-left: 2rem;
    //}
    //@media (max-width: 600px) {
    a + a {
       // margin-left: 0;
        margin-top: 1rem;
    }
    // }
}

header.nav {
    //  padding-bottom: 0;
    // padding-top: 0;
    text-align: right;
    position: fixed;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 100;
    background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100' preserveAspectRatio='none'>\
  <polygon points='200,0 0,200 200,200' fill='black'/>\
</svg>");
    background-position: right;
}
.white-logo {
    background-image: url("data:image/svg+xml;utf8,\
        <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 408.56 97.44'>\
        <path fill='white' d='M266.36,61.21c-.4,0-.71-.12-.92-.22-1.55-.8-1.73-3.26-1.89-7.2l-.12-2.32c-.14-1.78-1.3-2.78-1.64-3.04-1.09-.44-3.69-1.43-4.86-1.68-1.15-.25-1.96-1.19-2.11-2.46-.17-1.48.59-3.51,2.35-4.35.47-.23.89-.33,1.25-.36l-.03-.39c-.06-.66-.23-.85-.28-.9-.26-.21-1.08-.11-1.62-.04l-.98.08c-.21.42-.46,1.6-.72,2.85l-.13.62c-.34,1.57-1.18,2.02-1.82,2.12-1.49.22-2.46-1.33-2.64-1.64l-.18-.43c-.52.47-1.33.98-2.57,1.42-1.57.55-2.45-.06-2.83-.47-.19-.21-.34-.45-.45-.72-1.31,2.91-1.79,6.19-1.2,9.53.85,4.84,3.77,8.82,7.74,11.24-.19-.36-.24-.8-.1-1.21,1.63-4.79,2.43-5.99,3.58-7.05l-.54-.21c-1.02-.39-1.99-.76-2.61-1.37-.47-.46-.76-.64-1.21-.91l-.19-.12c-.19.81-.37,1.97-.47,3.06-.07.84-.8,1.46-1.65,1.39-.84-.08-1.46-.82-1.39-1.65.49-5.55,1.72-6.08,2.25-6.31.64-.27,1.36-.17,1.93.28.44.35.78.55,1.09.74.52.31,1.07.64,1.8,1.37.2.17,1.04.49,1.54.68,1.52.58,2.95,1.12,3.2,2.49.08.43.08,1.25-.77,2.02l-.52.46c-.96.82-1.49,1.27-3.15,6.13-.2.59-.73.98-1.32,1.03,3.19,1.54,6.9,2.13,10.69,1.47,9.37-1.64,15.7-10.38,14.11-19.47l-.44-1.87c-.53,1.03-1.58,1.98-3.15,2.83l-.57.34c.06.35.33,1.09.54,1.7,1.24,3.55-3.86,10.97-5.67,12.16-.48.32-.93.42-1.3.42ZM247.71,37.52c-.44,1.01-.79,2.18-.89,2.91.98-.39,1.31-.75,1.38-.84l.1-.21,1.4-2.44c.32-.55.95-.83,1.57-.68.62.14,1.07.67,1.11,1.3l.07.98c.52-2.01,1.18-3.09,3.04-3.09l.67-.06c1.03-.12,2.57-.31,3.77.66.77.63,1.22,1.59,1.33,2.87.13,1.46.17,2.39-.51,3.05-.59.58-1.31.49-1.66.45-.26-.03-.4-.05-.67.08-.28.14-.53.45-.66.84-.1.28-.1.5-.08.62,1.76.41,5.19,1.8,5.34,1.86l.23.12c.11.07,2.76,1.79,3.04,5.29l.13,2.44c.04,1.14.12,3.02.32,4.14,1.68-1.86,4.39-6.81,3.9-8.22-.91-2.58-1.41-4,1.37-5.51,1.54-.84,2.07-1.57,2.05-1.95-.04-.72.47-1.35,1.16-1.49-3.39-6.19-10.62-9.83-18.14-8.51-3.63.64-6.8,2.34-9.24,4.71.02.23-.02.46-.11.68ZM263.77,69.36c-12.36,2.17-24.13-4.82-26.23-16.81-2.1-11.99,6.24-22.51,18.61-24.68,12.36-2.17,24.13,4.82,26.23,16.81,2.1,11.99-6.24,22.51-18.6,24.68ZM72.05,40.41c-1.66,0-3.01-1.35-3.01-3.01v-5.41c0-1.67,1.35-3.02,3.01-3.02s3.02,1.35,3.02,3.02v5.41c0,1.66-1.35,3.01-3.02,3.01ZM87.36,40.41c-1.67,0-3.01-1.35-3.01-3.01v-5.41c0-1.67,1.35-3.02,3.01-3.02s3.01,1.35,3.01,3.02v5.41c0,1.66-1.35,3.01-3.01,3.01ZM80.29,76.32c-13.9,0-25.2-15.14-25.2-27.58,0-1.67,1.35-3.01,3.01-3.01s3.02,1.35,3.02,3.01c0,9.12,8.6,19.55,19.17,19.55s19.17-10.43,19.17-19.55c0-1.67,1.35-3.01,3.02-3.01s3.02,1.35,3.02,3.01c0,12.45-11.31,27.58-25.21,27.58ZM12.96,73.51c-4.17,0-7.37-1.2-9.6-3.59-2.23-2.4-3.35-5.75-3.35-10.06,0-7.27,2.91-14.93,8.74-22.98,5.82-8.06,11.24-12.09,16.24-12.09,2.28,0,4.24,1.26,5.89,3.77,1.65,2.51,2.47,5.17,2.47,7.99,0,1.69-.36,3.15-1.08,4.37-.72,1.22-1.45,1.83-2.18,1.83-1.65,0-2.81-1.65-3.49-4.94-.76-3.54-1.86-5.32-3.3-5.32-2.94,0-6.41,3.37-10.43,10.12-4.01,6.75-6.02,12.45-6.02,17.09s2.68,6.97,8.05,6.97c4.09,0,8.9-1.89,14.44-5.68,1.95-1.34,3.38-2.02,4.3-2.02s1.42.55,1.42,1.64c0,2.13-2.49,4.81-7.46,8.04-4.97,3.23-9.85,4.85-14.63,4.85ZM51.55,15.39c-.57,0-1-.61-1.3-1.84l-.44-1.28c-.73-1.78-1.1-3.33-1.1-4.65,0-1.1.64-2.21,1.92-3.35,1.28-1.14,2.7-1.7,4.27-1.7.77,0,1.65.31,2.62.92.97.61,1.46,1.21,1.46,1.79,0,.91-.33,2.44-.99,4.61-.66,2.16-1.71,3.62-3.15,4.37-1.44.75-2.54,1.13-3.29,1.13ZM46.16,61.97c0,2.12.24,4.5.72,7.14l.13,1.26c0,.5-.47,1.15-1.41,1.94-.94.8-1.94,1.2-3,1.2-2.76,0-4.14-2.48-4.14-7.45s1.06-13.24,3.18-24.33c.73-3.88,1.1-6.27,1.1-7.16,0-1.75.33-3.25.99-4.49.66-1.24,1.6-1.86,2.8-1.86,1.47,0,2.63.34,3.48,1.02.85.68,1.28,1.44,1.28,2.28s-.19,1.94-.58,3.31c-2.05,7.36-3.32,12.63-3.81,15.81-.49,3.18-.74,6.96-.74,11.34ZM124.2,15.39c-.57,0-1-.61-1.3-1.84l-.44-1.28c-.73-1.78-1.1-3.33-1.1-4.65,0-1.1.64-2.21,1.92-3.35,1.28-1.14,2.7-1.7,4.27-1.7.77,0,1.65.31,2.62.92.97.61,1.46,1.21,1.46,1.79,0,.91-.33,2.44-.99,4.61-.66,2.16-1.71,3.62-3.15,4.37-1.44.75-2.54,1.13-3.29,1.13ZM118.81,61.97c0,2.12.24,4.5.72,7.14l.13,1.26c0,.5-.47,1.15-1.41,1.94-.94.8-1.94,1.2-3,1.2-2.76,0-4.14-2.48-4.14-7.45s1.06-13.24,3.18-24.33c.73-3.88,1.1-6.27,1.1-7.16,0-1.75.33-3.25.99-4.49s1.6-1.86,2.8-1.86c1.47,0,2.63.34,3.48,1.02.85.68,1.27,1.44,1.27,2.28s-.19,1.94-.57,3.31c-2.05,7.36-3.32,12.63-3.81,15.81-.49,3.18-.74,6.96-.74,11.34ZM143.91,0c2.07,0,3.1,1.29,3.1,3.86,0,2.3-1.23,7.75-3.69,16.37-1.55,5.42-2.75,11.41-3.59,17.96-.85,6.55-1.27,11.68-1.27,15.41,0,4.61.24,9.2.72,13.76l.13,1.9c0,1.4-.49,2.6-1.46,3.61-.97,1.01-1.99,1.51-3.07,1.51-1.51,0-2.56-.92-3.14-2.77-.58-1.85-.88-4.83-.88-8.94,0-9.37,1.15-20.97,3.47-34.82,2.31-13.85,4.15-21.95,5.51-24.3,1.37-2.35,2.75-3.53,4.16-3.53ZM150.23,70.09c-1.68,0-2.92-.34-3.73-1.02-.8-.68-1.2-2.46-1.2-5.35,0-1.61.07-2.84.21-3.7.14-.86.82-1.53,2.04-2.02,1.22-.49,2.98-.73,5.29-.73,1.72,0,3.03.41,3.93,1.24.9.82,1.35,1.72,1.35,2.7,0,1.62-.25,2.86-.74,3.73-.49.86-1.56,1.94-3.2,3.22-1.64,1.29-2.96,1.93-3.95,1.93ZM192.58,37.61c-2.59.05-8.13,7.76-16.61,23.1-2.87,5.17-4.54,7.99-5.01,8.45-.47.46-1.34.87-2.61,1.23-1.27.36-2.32.55-3.16.55-1.86,0-2.79-3.64-2.79-10.93,0-4.1,1.01-11.53,3.03-22.28.83-4.35,1.24-7.46,1.24-9.33s.79-2.77,2.38-2.77c2.97,0,4.46,2.23,4.46,6.69,0,2.09-.52,6.19-1.56,12.3-1.21,6.98-1.83,11.22-1.86,12.73,1.7-1.69,4.19-5.4,7.48-11.11,4.66-7.84,8.09-12.8,10.29-14.9,2.2-2.1,4.48-3.15,6.84-3.15,1.78,0,3.2,1.23,4.25,3.69,1.05,2.46,1.69,8.34,1.91,17.64.05,2.32.27,4.05.64,5.18.37,1.13.64,1.7.81,1.7,1.32,0,4.19-4.52,8.61-13.57,2.36-4.78,4.66-8.42,6.9-10.91,2.24-2.49,4.73-3.73,7.46-3.73,2.28,0,3.94,1.16,4.98,3.48,1.04,2.32,1.79,5.76,2.24,10.32.43,4.61,1.09,8.84,1.99,12.67.9,3.83,2.55,6.29,4.95,7.38,1.63.75,2.44,1.62,2.44,2.63s-.68,1.98-2.04,3.01c-1.36,1.03-2.6,1.54-3.73,1.54-2.26,0-4.28-1.35-6.06-4.06-1.78-2.71-3.12-8.56-4.03-17.58-.39-3.62-.77-6.19-1.14-7.71-.36-1.52-.94-2.28-1.72-2.28-1.17,0-2.55,1.14-4.16,3.41-1.61,2.27-4.2,6.88-7.78,13.84-2.8,5.41-4.91,9.02-6.36,10.82-1.44,1.8-2.84,2.71-4.18,2.71-1.2,0-2.28-.49-3.23-1.47-.95-.98-1.55-2.16-1.8-3.53-.25-1.37-.52-4.75-.79-10.14-.42-8.96-1.18-14.17-2.3-15.64ZM310.12,39.32c-1.42,0-2.98.95-4.67,2.84-1.69,1.89-4.25,6.13-7.7,12.72-4.67,8.85-7.68,13.89-9.04,15.11-1.36,1.22-2.49,1.84-3.39,1.84-3.31,0-4.97-1.59-4.97-4.75,0-1.34.26-3.23.77-5.68,1.76-8.41,2.64-17.31,2.64-26.71,0-1.09.44-2.29,1.32-3.63.88-1.33,1.71-2,2.49-2,1.41,0,2.41.56,3,1.68.59,1.12.89,3.03.89,5.72s-.86,8.6-2.57,17.36c-.57,2.89-.85,4.73-.85,5.52,0,.45.11.67.33.67.42,0,2.36-3.32,5.84-9.98,3.43-6.77,6.43-11.53,9.01-14.28,2.58-2.75,5.42-4.13,8.51-4.13,2.47,0,4.47,1.12,6.02,3.36,1.55,2.24,2.68,6.34,3.39,12.29.77,6.77,1.46,10.98,2.08,12.63.62,1.66,1.6,2.48,2.93,2.48.86,0,1.93-.31,3.22-.92l.49.07.35.02c-.2-1.16-.29-2.41-.29-3.73,0-7.85,2.66-15.32,7.99-22.41,5.32-7.09,11.14-10.63,17.46-10.63,2.07,0,3.77.67,5.07,2.02,1.31,1.35,1.96,2.97,1.96,4.87,0,4.24-2.05,8.3-6.16,12.17-4.11,3.88-9.61,7.69-16.5,11.42-1.42.75-2.12,1.72-2.12,2.91,0,2.31.65,4.15,1.96,5.54,1.3,1.39,3.23,2.08,5.79,2.08,5.84,0,11.8-3.25,17.88-9.76.92-.9,1.62-1.35,2.1-1.35.89,0,1.34.69,1.34,2.07,0,2.77-2.49,6.11-7.47,10.02-4.98,3.91-10.11,5.86-15.4,5.86-4.43,0-7.86-1.3-10.27-3.91-.98-1.06-1.76-2.29-2.34-3.68-.39.71-1.06,1.45-1.99,2.21-1.62,1.31-3.56,1.97-5.83,1.97s-4.12-.93-5.4-2.8c-1.27-1.86-2.28-6.84-3.03-14.94-.77-8.12-2.38-12.18-4.83-12.18ZM338.28,50.15c11.52-7,17.28-12.62,17.28-16.88,0-1.66-.73-2.5-2.2-2.5-2.5,0-5.32,1.88-8.46,5.63-3.14,3.75-5.34,8.34-6.62,13.75ZM399.77,56.33c-5.2,4.51-9.77,7.79-13.7,9.84-3.93,2.04-6.95,3.07-9.04,3.07-2.79,0-4.93-1.17-6.42-3.5-1.48-2.33-2.22-5.06-2.22-8.17,0-4.35.9-9.73,2.7-16.14,1.8-6.41,3.14-10.21,4.01-11.41.88-1.2,2.28-1.8,4.2-1.8.81,0,1.47.47,1.99,1.4.52.93.77,2,.77,3.19,0,.71-.34,1.63-1.01,2.76-1.6,2.67-2.44,4.15-2.52,4.43l-1.71,5.13c-1.06,3.13-1.59,6.08-1.59,8.84,0,.96.23,2.46.69,4.51.46,2.04,1.43,3.07,2.89,3.07,1.55,0,3.46-.47,5.72-1.41,2.27-.94,4.82-2.47,7.65-4.61,2.84-2.13,4.74-3.86,5.73-5.18.98-1.32,1.68-2.82,2.09-4.5.41-1.68.7-5.33.87-10.94s1.53-8.41,4.07-8.41c1.51,0,2.5.4,2.95,1.2.45.8.67,2.32.67,4.57,0,1.86-.11,4.18-.33,6.96l-.52,7.51c-.39,7.73-1.39,15.49-2.99,23.29-1.6,7.8-3.93,14.32-7,19.56-3.06,5.24-7.28,7.86-12.66,7.86s-10.32-1.49-14.57-4.46c-4.25-2.98-6.37-5.5-6.37-7.56,0-.95.22-1.9.65-2.83s.98-1.4,1.65-1.4c.34,0,.7.27,1.1.82,3.61,5.72,9.3,8.59,17.07,8.59,4.01,0,7.37-3.55,10.09-10.66,2.72-7.11,4.22-13.77,4.49-20,.11-1.2.31-2.4.61-3.61Z'/>\
        </svg>");
    width: 140px;
    height: 40px;
    background-size: contain;
    background-repeat: no-repeat;
    margin-top: 100px;
    display: inline-block;
}
header, footer {
    transition: opacity .3s, transform .3s;
}

header.fade {
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
}

footer {
    opacity: 0;
    transform: translateY(10px);
}

footer.fade {
    opacity: 1;
    transform: translateY(0);
}

.nav {

    background: linear-gradient(to top, rgba(255,255,255,.82), rgba(255,255,255,.66));
    border-top: 1px solid rgba(0,0,0,.06);
    position: fixed;
    left: 0;
    right: 0;
    bottom: env(safe-area-inset-bottom);
    height: 56px;
    display: grid;
    place-items: center;
    z-index: 1000;
    box-shadow: 0 -10px 28px rgba(0,0,0,.05);
}

.nav::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .08;
    background-image: url('data:image/svg+xml;utf8,\
<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120">\
<filter id="n"><feTurbulence type="fractalNoise" baseFrequency=".9" numOctaves="2" stitchTiles="stitch"/></filter>\
<rect width="100%" height="100%" filter="url(%23n)"/></svg>');
    background-size: 120px 120px;
    mix-blend-mode: overlay;
}
*/
header {
  opacity: 1;
  transform: translateX(0);
  transition: opacity 0.3s ease-out, transform 0.3s ease-out;
}

header.fade {
  opacity: 0;
  transform: translatex(5vw);
  pointer-events: none;
}

.kids {
  font-family: var(--hand-written);
}

header.nav p {
  font-size: 0.85rem;
  margin: 0rem -1rem 1rem -1rem;
  padding: 1rem;
  border-radius: 1rem;
  text-align: left;
}
header.nav p a {
  color: revert;
  display: inline;
}

.categories table {
  background: none;
  margin-bottom: 1rem;
}
.categories table td {
  line-height: 1rem;
}
.categories table td:first-child {
  font-style: italic;
  width: 6rem;
  vertical-align: top;
}
.categories table small {
  color: var(--gray-700);
  display: block;
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}

.loading.shimmer {
  display: inline-block;
  background: linear-gradient(90deg, #fff 25%, #fff 50%, #f7f7f7 75%);
  background-size: 200% 100%;
  color: transparent;
  animation: shimmer 1.2s infinite;
  border-radius: 10px;
}

@keyframes shimmer {
  100% {
    background-position: -200% 0;
  }
}
.wasm-loading {
  top: 0;
  left: 0;
  height: 2px;
  background-color: black;
  position: fixed;
  padding: 0;
  margin: 0;
  max-width: revert;
  width: var(--blazor-load-percentage, 0%);
}
