/* =========================
   Global
   ========================= */

body {
    background: #0a0a0a;
    color: #ff9de2;
    font-family: "Courier New", Courier, monospace;
    line-height: 1.7;
    max-width: 900px;
    margin: 0 auto;
    padding: 40px 25px;
}

/* =========================
   Headings
   ========================= */

h1 {
    color: #ff4fc3;
    font-size: 2.4rem;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

h2 {
    color: #ff6dcc;
    margin-top: 50px;
    border-bottom: 1px solid #522044;
    padding-bottom: 8px;
}

h3 {
    color: #ff9de2;
}

/* =========================
   Paragraphs
   ========================= */

p {
    color: #e6a8d0;
}

/* =========================
   Links
   ========================= */

a {
    color: #ff6dcc;
    text-decoration: none;
}

a:hover {
    color: #ffb5e7;
    text-shadow: 0 0 8px #ff4fc3;
}

/* =========================
   Lists
   ========================= */

li {
    margin: 8px 0;
}

/* =========================
   Horizontal rules
   ========================= */

hr {
    border: none;
    border-top: 1px solid #522044;
    margin: 35px 0;
}

/* =========================
   Code
   ========================= */

code {
    color: #ffb5e7;
    background: #151015;
    padding: 2px 5px;
    border-radius: 3px;
}

/* =========================
   Mathematical Environments
   ========================= */

.math-box {
    margin: 30px 0;
    padding: 20px 24px;
    border-left: 4px solid #ff4fc3;
    background: #120d12;
    border-radius: 4px;
}

.math-box .box-title {
    color: #ff4fc3;
    font-weight: bold;
    margin-bottom: 10px;
    letter-spacing: 0.5px;
}

.math-box p:last-child {
    margin-bottom: 0;
}


/* Theorem */

.theorem {
    border-left-color: #ff4fc3;
}

.theorem .box-title {
    color: #ff4fc3;
}


/* Proposition */

.proposition {
    border-left-color: #ff6dcc;
}

.proposition .box-title {
    color: #ff6dcc;
}


/* Definition */

.definition {
    border-left-color: #ff9de2;
}

.definition .box-title {
    color: #ff9de2;
}


/* Lemma */

.lemma {
    border-left-color: #d98bc5;
}

.lemma .box-title {
    color: #d98bc5;
}


/* Corollary */

.corollary {
    border-left-color: #eab0dc;
}

.corollary .box-title {
    color: #eab0dc;
}


/* Proof */

.proof {
    border-left-color: #806078;
    background: #0e0b0e;
}

.proof .box-title {
    color: #c98bb9;
}

.qed {
    text-align: right;
    color: #ff9de2;
    margin-top: 12px;
}
