@charset "UTF-8";
* {
  box-sizing: border-box;
}

ul {
  list-style-type: "‣";
  list-style-position: outside;
  padding-left: 1ch;
}

li {
  padding-left: 1ch;
  margin: 0.3em 0;
}

html {
  height: 100%;
  background-color: #0e0e0e;
  color: #ffffff;
  font-family: "Lucida Sans", "Lucida Sans Regular", "Lucida Grande", "Lucida Sans Unicode", Geneva, Verdana, sans-serif;
  height: 100%;
}

body {
  min-height: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  background-color: #0e0e0e;
  background-image: url("/assets/images/bg.png");
  background-blend-mode: multiply;
  background-repeat: repeat;
}

p {
  text-align: justify;
  text-justify: inter-word;
}

.grower {
  flex-grow: 1;
}

.content {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}

.narrow-content {
  display: flow-root;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1rem;
}

.dark-panel {
  background-color: hsl(0, 0%, 10%);
}

.light-panel {
  background-color: hsl(0, 0%, 15%);
}

summary {
  margin: 1em 0;
}

a {
  color: #d6fade;
  text-decoration-style: dotted;
  text-underline-offset: 0.1em;
  text-decoration-color: rgba(214, 250, 222, 0.5);
}

a:hover {
  color: #7aff97;
}

header, footer {
  background-color: #004237;
  background-image: url("/assets/images/bg_bar.png");
  background-blend-mode: multiply;
  background-repeat: repeat;
}

#header-name {
  color: #ffffff;
  text-decoration: none;
}

header {
  text-align: center;
}
header h1 {
  margin-bottom: 0;
}
header h2 {
  font-size: medium;
  margin-top: 0;
}

footer {
  padding: 1rem;
}

.centred {
  text-align: center;
}

.image img, .video video {
  max-width: 100%;
  display: block;
  margin: auto;
  filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.5));
}

.embed-container {
  margin: 1em 0;
  filter: drop-shadow(0 3px 5px rgba(0, 0, 0, 0.5));
}

figcaption {
  margin: 1em 0;
  text-align: center;
  font-style: italic;
  color: #b8b8b8;
}

.email > span:nth-child(even) {
  display: none;
}

.button-link {
  background-color: #7aff97;
  color: #004237;
  margin: 6px;
  padding: 0 0.3em;
  font-size: 130%;
  border-radius: 7px;
  text-decoration: none;
  display: inline flow-root;
}

.button-link:hover {
  background-color: #d6fade;
  color: #004237;
}

figure {
  margin-inline: 15px;
  display: flow-root;
}

.highlight pre, .highlight pre code {
  white-space: pre-wrap !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
  overflow-x: hidden !important;
}

.highlight {
  overflow-x: visible !important;
}

pre {
  margin-inline: 15px;
}

code {
  text-justify: none;
}

/*Home page bio*/
#bio-panel {
  background-color: hsl(0, 0%, 15%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  padding: 0 1rem;
}

#bio {
  align-self: stretch;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  gap: 1rem;
}

#bio img {
  margin-top: 1rem;
  width: 256px;
  border-radius: 20%;
}

#bio section {
  flex-grow: 1;
  max-width: 80ch;
}

@media screen and (width < 720px) {
  #bio {
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
  }
}
/*Home Page Projects and skills*/
.skills-panel {
  background-color: hsl(0, 0%, 10%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 0 1rem;
  /*Border rounding*/
  border-bottom-right-radius: min(160px, (100vw - 960px) / 2);
  border-bottom-left-radius: min(160px, (100vw - 960px) / 2);
}

.skills {
  width: 100%;
  columns: 2 400px;
  column-gap: 3rem;
}
.skills section {
  text-justify: left;
  break-inside: avoid;
  display: inline-block;
}

/* Featured project */
.project-background {
  background-size: cover;
  background-position: center;
  max-width: fit-content;
  margin: 0 auto;
}

.project-outer {
  display: flow-root;
  backdrop-filter: blur(7px) brightness(30%);
}
.project-outer > h1 {
  text-align: center;
}

.project-panel {
  border-top-width: 2px;
  border-top-style: solid;
  border-top-color: rgba(255, 255, 255, 0.4980392157);
  border-bottom-width: 2px;
  border-bottom-style: dashed;
  border-bottom-color: rgba(255, 255, 255, 0.2470588235);
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 1rem;
  padding: 1rem;
  width: min(960px, 100vw);
}
.project-panel img {
  display: block;
  width: 100%;
}
.project-panel .project-thumbnail {
  display: block;
  flex-shrink: 0;
  width: 360px;
}
.project-panel .project-summary {
  width: 100%;
  text-align: left;
}
.project-panel .project-summary h1 {
  font-size: large;
}
.project-panel .project-summary h2 {
  font-size: medium;
  font-weight: normal;
}
.project-panel .project-summary p, .project-panel .project-summary li {
  font-size: 14px;
}

.project-link {
  display: flex;
  justify-content: center;
  padding: 1rem;
}

@media screen and (width < 840px) {
  .project-panel {
    flex-direction: column !important;
    align-items: center;
    gap: 0;
  }
  .project-panel .project-thumbnail, .project-panel .project-summary {
    width: 100%;
  }
}
/*Quote*/
.quote {
  display: flex;
  background-color: hsl(0, 0%, 15%);
  max-width: 840px;
  padding: 1rem;
  border-radius: 1rem;
  align-items: center;
  gap: 1rem;
}
.quote img {
  flex-shrink: 1;
  align-self: center;
  clip-path: circle();
  width: 150px;
}
.quote blockquote {
  margin: 0;
}
.quote blockquote :first-child {
  margin-top: 0;
}
.quote blockquote :last-child {
  margin-bottom: 0;
}

@media screen and (width < 840px) {
  .quote {
    flex-direction: column;
  }
}
.date {
  text-align: center;
  font-style: bold;
  color: lightgrey;
}

.highlight table td {
  padding: 5px;
}

.highlight table pre {
  margin: 0;
}

.highlight {
  color: #faf6e4;
  background-color: #122b3b;
}

.highlight .gl {
  color: #dee5e7;
  background-color: #4e5d62;
}

.highlight .gp {
  color: #a8e1fe;
  font-weight: bold;
}

.highlight .c, .highlight .ch, .highlight .cd, .highlight .cm, .highlight .cpf, .highlight .c1, .highlight .cs {
  color: #6c8b9f;
  font-style: italic;
}

.highlight .cp {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .err {
  color: #fefeec;
  background-color: #cc0000;
}

.highlight .gr {
  color: #cc0000;
  font-weight: bold;
  font-style: italic;
}

.highlight .k, .highlight .kd, .highlight .kv {
  color: #f6dd62;
  font-weight: bold;
}

.highlight .o, .highlight .ow {
  color: #4df4ff;
  font-weight: bold;
}

.highlight .p, .highlight .pi {
  color: #4df4ff;
}

.highlight .gd {
  color: #cc0000;
}

.highlight .gi {
  color: #b2fd6d;
}

.highlight .ge {
  font-style: italic;
}

.highlight .ges {
  font-weight: bold;
  font-style: italic;
}

.highlight .gs {
  font-weight: bold;
}

.highlight .gt {
  color: #dee5e7;
  background-color: #4e5d62;
}

.highlight .kc {
  color: #f696db;
  font-weight: bold;
}

.highlight .kn {
  color: #ffb000;
  font-weight: bold;
}

.highlight .kp {
  color: #ffb000;
  font-weight: bold;
}

.highlight .kr {
  color: #ffb000;
  font-weight: bold;
}

.highlight .gh {
  color: #ffb000;
  font-weight: bold;
}

.highlight .gu {
  color: #ffb000;
  font-weight: bold;
}

.highlight .kt {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .no {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .nc {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .nd {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .nn {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .bp {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .ne {
  color: #b2fd6d;
  font-weight: bold;
}

.highlight .nl {
  color: #ffb000;
  font-weight: bold;
}

.highlight .nt {
  color: #ffb000;
  font-weight: bold;
}

.highlight .m, .highlight .mb, .highlight .mf, .highlight .mh, .highlight .mi, .highlight .il, .highlight .mo, .highlight .mx {
  color: #f696db;
  font-weight: bold;
}

.highlight .ld {
  color: #f696db;
  font-weight: bold;
}

.highlight .ss {
  color: #f696db;
  font-weight: bold;
}

.highlight .s, .highlight .sb, .highlight .dl, .highlight .sd, .highlight .s2, .highlight .sh, .highlight .sx, .highlight .sr, .highlight .s1 {
  color: #fff0a6;
  font-weight: bold;
}

.highlight .sa {
  color: #f6dd62;
  font-weight: bold;
}

.highlight .se {
  color: #4df4ff;
  font-weight: bold;
}

.highlight .sc {
  color: #4df4ff;
  font-weight: bold;
}

.highlight .si {
  color: #4df4ff;
  font-weight: bold;
}

.highlight .nb {
  font-weight: bold;
}

.highlight .ni {
  color: #999999;
  font-weight: bold;
}

.highlight .w {
  color: #BBBBBB;
}

.highlight .go {
  color: #BBBBBB;
}

.highlight .nf, .highlight .fm {
  color: #a8e1fe;
}

.highlight .py {
  color: #a8e1fe;
}

.highlight .na {
  color: #a8e1fe;
}

.highlight .nv, .highlight .vc, .highlight .vg, .highlight .vi, .highlight .vm {
  color: #a8e1fe;
  font-weight: bold;
}

/*# sourceMappingURL=out_base.css.map */