@charset "UTF-8";
@font-face {
  font-family: 'Bitter';
  src: url('Bitter-Regular.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/** Reset some basic elements */
body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, hr, dl, dd, ol, ul, figure { 
  margin: 0; padding: 0; 
}

/** Basic styling */
html { 
  background-size: 100% 100%; 
  background-position: 0px 0px,0px 0px,0px 0px,0px 0px; 
  background-image: radial-gradient(70% 53% at 36% 76%, #3888E1 0%, whitesmoke 100%), radial-gradient(42% 53% at 15% 94%, #073AFF00 5%, #FFFFFFFF 7%), radial-gradient(31% 43% at 7% 98%, #FFFFFFFF 24%, #073AFF00 100%), linear-gradient(125deg, #4EB5FFFF 1%, #4C00FCFF 100%); 
}

body { 
  font: 400 15.3px/1.6 Bitter, Georgia, "Times New Roman", serif;
  color: #111;
  -webkit-text-size-adjust: 100%;
  -webkit-font-feature-settings: "kern" 1;
  -moz-font-feature-settings: "kern" 1;
  -o-font-feature-settings: "kern" 1;
  font-feature-settings: "kern" 1;
  font-kerning: normal;
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  padding: 0 2%; 
  margin: 0 auto;
  max-width: 45em;
  line-height: 1.7;
  padding: 4em 1em;
  background-color: rgba(255,255,255,0.7);
  border-radius: 2em;
}

@media screen and (min-width: 600px) { 
  body { 
    padding: 0 5%;
    font: 400 18px/1.8 "Bitter", "Hiragino Sans GB", "Microsoft Yahei", "微软雅黑", "Bitter", sans-serif; 
  } 
}

/** Set `margin-bottom` to maintain vertical rhythm */
h1, h2, h3, h4, h5, h6, p, blockquote, pre, ul, ol, dl, figure { 
  margin-bottom: 15px; 
}

/** `main` element */
main { 
  display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */ 
}

/** Divider */
hr { 
  margin-top: 20px; 
  margin-bottom: 20px; 
  border: 0; 
  height: 1px; 
  background: -webkit-linear-gradient(left, transparent, rgba(0, 0, 0, 0.5), transparent); 
  background: linear-gradient(left, transparent, rgba(0, 0, 0, 0.5), transparent); 
}

/** Images */
img { 
  margin-bottom: 5px; 
  margin-top: 5px;
  padding: 2px 2px;
  border-radius: 3px;
  background-color: #f0f0f0;
  max-width: 100%;
  vertical-align: middle; 
}

/** Figures */
figure > img { 
  display: block; 
}

figcaption { 
  font-size: 15.3px; 
}

/** Lists */
ul, ol { 
  margin-left: 30px; 
}

li > ul, li > ol { 
  margin-bottom: 0; 
}

/** Headings */
h1, h2, h3, h4, h5, h6 { 
  margin-top: 2rem;
  font-weight: 400; 
}

/** Adjustments to individual heading hierarchy */
h1 { font-size: 2em; margin-top: 0; }
h2 { font-size: 1.5em; margin-top: 2.5rem; }
h3 { font-size: 1.25em; margin-top: 2rem; }
h4 { font-size: 1.1em; margin-top: 1.5rem; }

h2 {
  background-color: rgba(56, 136, 225, 0.15);
  padding: 1em 1.5em;
  margin-left: -1.5em;
  margin-right: -1.5em;
  margin-top: 3rem;
  border-radius: 8px;
  border-left: 6px solid #3888E1;
  box-shadow: 0 2px 8px rgba(56, 136, 225, 0.2);
}

h3:nth-of-type(odd) {
  background-color: rgba(255, 200, 200, 0.8); /* red tint - very visible */
  padding: 0.8em 1.2em;
  margin-left: -1.2em;
  margin-right: -1.2em;
  border-radius: 8px;
}

h3:nth-of-type(even) {
  background-color: rgba(200, 200, 255, 0.8); /* blue tint - very visible */
  padding: 0.8em 1.2em;
  margin-left: -1.2em;
  margin-right: -1.2em;
  border-radius: 8px;
}

/** Links */
a { 
  color: #005a9c; 
  text-decoration: none; 
}

a:hover { 
  text-decoration: underline;
}

a:focus {
  outline: 2px solid #2a7ae2;
  outline-offset: 2px;
}

/** Blockquotes */
blockquote { 
  color: #5a5a5a; 
  border-left: 4px solid #e8e8e8; 
  padding-left: 15px; 
  font-size: 18px; 
  letter-spacing: -1px; 
}

@media (max-width: 600px) { 
  blockquote { 
    font-size: 14.4px; 
  } 
}

blockquote > :last-child { 
  margin-bottom: 0; 
}

/** Code formatting */
pre, code { 
  font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 15px; 
  border: 1px solid #d0d0d0; 
  border-radius: 5px; 
  background-color: #f8f8f8; 
}

code { 
  padding: 2px 6px; 
  font-size: 0.9em;
  color: #c7254e;
}

pre { 
  padding: 12px 16px; 
  overflow-x: auto; 
  line-height: 1.4;
}

pre > code { 
  border: 0; 
  padding-right: 0; 
  padding-left: 0; 
  color: #111;
}

/** Tables */
table { 
  margin-bottom: 30px; 
  width: 100%; 
  text-align: left;
  color: #3f3f3f;
  border-collapse: collapse;
  border: 1px solid #e8e8e8;
}

table tr:nth-child(even) { 
  background-color: #f7f7f7; 
}

table th, table td { 
  padding: 10px 15px; 
}

table th { 
  background-color: #f0f0f0; 
  border: 1px solid #dedede;
  border-bottom-color: #c9c9c9; 
}

table td { 
  border: 1px solid #e8e8e8; 
}

nav { 
  width: 100%; 
}

nav li { 
  display: inline;
  padding-top: 20px;
  padding-right: 10px;
  padding-bottom: 10px; 
  padding-left: 10px; 
}
