/*! modern-normalize v3.0.1 | MIT License | https://github.com/sindresorhus/modern-normalize */

*,
::before,
::after {
	box-sizing: border-box;
}

html {
	font-family:
		system-ui,
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji';
	line-height: 1.15;
	-webkit-text-size-adjust: 100%; 
	tab-size: 4;
}

body {
	margin: 0;
}

b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp,
pre {
	font-family:
		ui-monospace,
		SFMono-Regular,
		Consolas,
		'Liberation Mono',
		Menlo,
		monospace; /* 1 */
	font-size: 1em; /* 2 */
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

table {
	border-color: currentcolor;
}

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

button,
[type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}

legend {
	padding: 0;
}

progress {
	vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

[type='search'] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

summary {
	display: list-item;
}




/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Root
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

:root {
  --bg-colour: #FEFEFE;
  --text-colour: #1F2A44;
  --name-colour: #941352;
  --abstract-colour: #FEFEED;
  --cite-colour: #f1f5fc;
  --year-colour: #941352;
  --link-colour: #0077aa;
  --link-colour-pressed: #fe2e5b;
  --link-colour-hover: #941352; 
  --svg-colour: #707070;

  --body-colour: #E8DFCE;

}
html {
  background-color: var(--bg-colour);
  background-image: url(img/patterns/hip-square.png);
}
body {
  max-width: 800px;
  background-color: var(--bg-colour);
  border: 1px solid rgba(240,220,220, 0.8);
  border-radius: 2px;
  
  font-family: 'KaTeX_Main';
  color: var(--text-colour);
  font-size: 16px;
  line-height: 1.2;
  /*text-align: justify;*/
  margin: 1.5em auto;
  width: auto;
  padding: 0 1em;
}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Content sectioning
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */



/* --- Header --- */
header {
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  align-content: stretch;
}
/* --- Name --- */
name {
  width: 50%;
  font-family: 'Raleway';
  font-size: 2.5em;
  font-weight: bold;
  text-wrap: wrap;
  padding: 0.5em 0;
}
name a{
  color: var(--name-colour);
  text-decoration: none;
}
name a:hover {
  color: var(--name-colour);
}
/* --- Navigation --- */
nav {
  width: 50%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
nav ul, nav ol {} 
nav li {}
nav a {
  margin: auto 0.4em;
  font-size: 1.4em;
}
nav a:visited {}
nav a:hover {}
nav a:active {}
/* --- Information Panel --- */
info {
  width: 50%;
  margin: auto 0;
  padding: 0.5em 0;
}
info title{
  display: block;
  font-size: 1.1em;
  margin-bottom: 0.2em;
}
/* --- Picture --- */
picture {
  width: 50%;
}
picture img{
  max-width: 200px;
  width: fit-content(260px);
  border-radius: 10px;
  margin: 1em 0;
}
/* --- Adjustments --- */
@media only screen and (max-width: 760px) {
  name {
    width: 100%;
    padding-bottom: 0;
  }
  nav {
    width: 100%;
    padding: 0.5em 0 1.5em 0;
  }
}
@media only screen and (max-width: 560px) {
  info {
    width: 100%;
  }
  picture {
    width: 100%;
  }
  picture img {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}

/* --- Logos --- */
logos {
  text-align: center;
  display: block;
  margin-bottom: 1em;
}
logos a{ text-decoration: none; }
logos svg {
  width: 32px;
  height: 32px;
  fill: var(--svg-colour);
}
logos .orcid:hover { fill: #A5CD39; }
logos .arxiv {
  background-color: var(--svg-colour);
  fill: var(--bg-colour);
  padding: 0 2px;
  width: 32px;
  height: 32px;
}
logos .arxiv:hover { background-color: #B31B1B; }
logos .github:hover { fill: #24292E; }
logos .lattes:hover { fill: #006699; }
logos .google-scholar:hover { fill: #4080ec; }
logos .cv:hover { fill: #ee2e4f; }

bob::before { content: "(at)"; }
bab::before { content: "(dot)"; }

main {}

article {}

section {
  counter-reset: pub-count 0;
}
section title {
  display: block;
  font-size: 2em;
  margin: 0.5em 0 0 0.65em;
}

aside {
  display: block;
  border: 1px solid black;
  right: 0.5em;
  padding: 0.2em;
  background-color: white;
  position: absolute;
}

search {}

footer {}

address {}

/* --- Publication --- */

pub {
  display: block;
  margin: 0.8em 0 0 1em;
  padding: 0 0;
  counter-increment: pub-count 1;
}

pub-year {
  content: attr(year);
  display: block;
  float: right;
  background-color: var(--year-colour);
  color: var(--bg-colour);
  padding: 0.1em 0.4em;
  font-size: 0.9em;
}

pub-title {
  font-size: 1.2em;
  font-weight: 400;
  line-height: 1.0em;
  display: block;
  text-indent: -0.75em;
  padding-left: 0.75em;
  text-decoration: underline;
  text-align: left;
}

pub-title::before{
  content: counter(pub-count) " -";
  display: inline-block;
  padding: 0 0.3em 0 0;
  margin-left: -1.7em;
  width: 2em;
  text-align: right;
  text-indent: 0;
}

pub-title .katex{
  font-size: 1em;
}

pub-auth::before { content: "by "; }
pub-auth {
  display: block;
  padding-left: 1em;
  font-size: 0.9em;
}
pub-auth::after { content: "."; }

sep::before{
  content: "⊗";
  font-weight: bold;
}

pub links {
  display: block;
  font-size: 0.9em;
  font-weight: bold;
  padding-left: 0.85em;
  margin-bottom: 0.2em;
}

pub links::before{ content: "⟨"; font-weight: bold; }
pub links::after{ content: "⟩"; font-weight: bold; }

journal {
  display: block;
  padding-left: 0.8em;
  font-style: italic;
}
journal::after { content: "."; }

pub abstract{
  display: block;
  overflow-y: hidden;
  height: 0;
  font-family: "KaTeX_Main";
  font-size: 1.0em;
  background-color: var(--abstract-colour);
}

pub abstract .katex {
  font-size: 1.0em;
}

pub > input[type="checkbox"] {
  position: absolute;
  left: -100vw;
}

pub > input.abs[type="checkbox"]:checked ~ abstract {
  height: auto;
  overflow: visible;
  padding: 0.4em 1.0em;
  border: 1px dotted black;
}

pub links label{
  color: var(--link-colour);
  text-decoration: underline;
  cursor: pointer;
}

pub links label:hover{
  color: var(--link-colour-hover);
}

pub cite{
  display: block;
  overflow-y: hidden;
  height: 0;
  font-size: 0.8em;
  background-color: var(--cite-colour);
  white-space: pre;
  font-family:  "Monaco", "Courier", monospace;
}

pub cite .katex {
  font-size: 1.0em;
}

pub > input.cite[type="checkbox"]:checked ~ cite {
  height: auto;
  overflow: auto;
  padding: 0.4em 1.0em;
  border: 1px dotted black;
}

pub > input.abs[type="checkbox"]:checked ~ links label.abs {
  color: var(--link-colour-pressed);
}

pub > input.cite[type="checkbox"]:checked ~ links label.cite {
  color: var(--link-colour-pressed);
}

/* --- author cloud --- */

cloud {
  display: flex;
  flex-wrap: wrap;
  margin: 1em 0;
  padding-left: 1.25em;
}

cloud author{
  display: block;
  margin: 0.1em 0.2em;
}



cloud author:not(:first-child)::before{
  content: "⊗";
  font-weight: bold;
  margin: 0 0.35em 0 0;
}


/* --- Footer --- */

footer {
  display: flex;
  flex-wrap: wrap;
  margin: 6em 0 0 0;
  padding-bottom: 1em;
}

edit {
  display: block;
  text-align: center;
  font-size: 1em;
}
edit::before{ content: "⟨ last edited in "; }
edit::after{ content: " ⟩"; }

nedit{}

copyright {
  margin-left: auto;
}

/* ---- Notes ---- */

section.note p {
  font-size: 1.2em;
  line-height: 1.2em;
}

section.note .katex{
  font-size: 1em;
}

companion {
  display: block;
  margin: 0 1em;
  border-top: 1px solid var(--name-colour);
  border-bottom: 1px solid var(--name-colour);

  
  padding: 3em 0;

  font-family: "Glass Antiqua", cursive;
  font-weight: 400;
  font-style: normal;
}

companion title {
  /*color: var(--bg-colour);*/
  color: var(--name-colour);
  font-style: normal;
  text-align: center;
  margin: 0;
  padding: 0 0 1em 0;
}

companion a {
  font-size: 1.2em;
}

figure.art {
  width: auto;
}

figure.art img{
  display: block;
  width: 100%;
  margin: 0 auto;
}

figure.art figcaption{
  width: auto;
  margin: 1em auto 0 auto;
  text-align: center;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Text block content
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

/* Overall styling, e.g. vertical spacing */
p, ol, ul, pre, blockquote, figure, hr, dl {}

p {}

ol, ul {}
ol {}
ul {}
li {}
ol ol, ol ul, ul ul, ul ol {}
li li {}

pre {}
pre code {}
pre samp {}

blockquote {}

figure {}
figcaption {}

hr {}

dl {}
dt {}
dd {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Inline text semantics
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

a {
  color: var(--link-colour);
}

a:visited {}
a:hover {
  color: var(--link-colour-hover);
}
a:active {}

strong {}
b {}

em {}
i {}

q {}
cite {}

s {}

mark {}

/* If you specify a font size, consider using the `em` unit so that it works
universally, e.g. for both `h1 small` and `p small` */
small {}
sub {}
sup {}

code {}

dfn {}
abbr {}
abbr[title] {}

var {}
kbd {}
kbd kbd {}
samp {}

u {}

data {}
time {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Demarcating edits
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

del {}
ins {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Embedded content
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

img {}
svg {}
video {}
canvas {}
audio {}
object {}

noscript {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Table content
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

table {}
caption {}
col:first-child {}
thead {}
tbody {}
tfoot {}
tr {}
th {}
td {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Forms
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

fieldset {}
fieldset:disabled {}
legend {}

form {}

label {}

::placeholder {}
:focus::placeholder {}

/* Overall styling, e.g. vertical spacing */
input, textarea, select, button {}

/* `textarea` and `input` elements that share a similar look and similar styling
capabilities */
/* - common styling */
textarea,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="url"],
input[type="date"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="time"] {}
/* - individual styling */
textarea {}
input[type="text"] {}
input[type="password"] {}
input[type="email"] {}
input[type="tel"] {}
input[type="number"] {}
input[type="search"] {}
input[type="url"] {}
input[type="date"] {}
input[type="datetime-local"] {}
input[type="month"] {}
input[type="week"] {}
input[type="time"] {}
/* Tick boxes */
input[type="checkbox"], input[type="radio"] {}
input[type="checkbox"]:checked, input[type="radio"]:checked {}
input[type="checkbox"] {}
input[type="checkbox"]:checked {}
input[type="radio"] {}
input[type="radio"]:checked {}
/* Other input fields, some with limited styling capabilities */
input[type="file"] {}
input[type="color"] {}
input[type="range"] {}

select {}
optgroup {}
option {}
option:checked {}
datalist {}

button,
input[type="submit"] {}
button:disabled,
input[type="submit"]:disabled {}
button.secondary {}
button.secondary:disabled {}

/* This matches forms or form elements that are invalid *and* have been
interacted with. Note that:
1) You may need to add the `interacted` class to forms yourself
2) You may need to add the `touched` class to form fields yourself
3) `:user-invalid` is a working draft and not yet supported by most browsers
4) `:-moz-ui-invalid` is non-standard and only works in Firefox
Form validation error messages will appear (in capable browsers) regardless of
this styling. You can omit 1) and 2) and still have working forms. Perfect
example of progressive enhancement. */
/* Applies to invalid forms */
form.interacted:invalid {}
/* Applies to invalid form fields. You would need to repeat your declarations
for the following three groups of selectors individually. Browsers completely
ignore any rule that contains a selector they do not know. */
form.interacted :invalid, form .touched:invalid {}
:user-invalid {}
:-moz-ui-invalid {}

output {}

progress {}
meter {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Interactive elements
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

details {}
details[open] {}
summary {}
details[open] summary {}

dialog {}
dialog::backdrop {}

/* Some form fields, `details`, elements with `tabindex`, and possibly other
elements can be focussed. You should use `:focus-visible` instead of `:focus`
whenever possible. As the former is not yet widely supported, you need to do it
as follows:
1) Set styling on focus
2) If browser supports `:focus-visible`, revert/unset the styling from 1)
3) If the element matches `:focus-visible`, apply the styling again */
:focus {}
:focus:not(:focus-visible) {}
:focus-visible {}

[inert], [inert] * {}


/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Media queries
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

@media (prefers-reduced-motion: reduce) {
}

@media (prefers-color-scheme: dark) {
}

@media (orientation: portrait) {
}

@media (orientation: landscape) {
}

@media print {
}


.katex {
  overflow: hidden;
  overflow-wrap: anywhere;
  white-space: nowrap;
}

cite {
  font-family: monospace;
}


/*
This file evolved from Natural Selection:
https://github.com/frontaid/natural-selection
*/