diff --git a/public_html/css/style.css b/public_html/css/style.css
index 53925aa..80f3c6f 100644
--- a/public_html/css/style.css
+++ b/public_html/css/style.css
@@ -1,4 +1,13 @@
+/*
+ * css styling for bavbavhaus.net
+ *
+ * A dark mono-sized monofont, two-column layout stylesheet with "compact"
+ * markdown formatting of html generated by `pandoc`.
+ *
+ * /
+
/* variables */
+
:root {
--font-size: 9pt;
--line-height: 1.25;
@@ -21,8 +30,11 @@
--bright-magenta: #ffb1c0;
--bright-cyan: #92ccff;
--bright-white: #ffffff;
+ --md-formatting-color: var(--blue);
+ --error-color: var(--red);
}
+/* wider screens */
@media (min-width: 120ch) {
:root {
--font-size: 12pt;
@@ -31,20 +43,36 @@
/* reset */
-* {
- box-sizing: border-box;
- margin: unset;
- hyphens: auto;
- overflow-wrap: anywhere;
- scrollbar-width: none;
+:root {
+ box-sizing: border-box;
+ text-size-adjust: none;
+ -moz-text-size-adjust: none;
+ -webkit-text-size-adjust: none;
}
-/* root */
+*,
+*::before,
+*::after {
+ box-sizing: inherit;
+ margin: 0;
+ padding: 0;
+}
+
+
+/* root, * */
:root {
color: var(--white);
background-color: var(--black);
font: var(--font-size)/var(--line-height) var(--font-family);
+ overflow-wrap: break-word;
+}
+
+*,
+*::before,
+*::after {
+ font: inherit;
+ scrollbar-width: none;
}
::selection {
@@ -52,120 +80,104 @@
background-color: var(--white);
}
-/* content sectioning */
-
-address {
- font-style: unset;
-}
+/* blocks */
h1, h2, h3, h4, h5, h6 {
- hyphens: none;
- font-size: unset;
+ text-wrap: balance;
font-weight: bold;
}
-h1::before {
- content: "#";
-}
-
-h2::before {
- content: "##";
-}
-
-h3::before {
- content: "###";
-}
-
-h4::before {
- content: "####";
-}
-
-h5::before {
- content: "#####";
-}
-
-h6::before {
- content: "######";
-}
+h1::before { content: "#"; }
+h2::before { content: "##"; }
+h3::before { content: "###"; }
+h4::before { content: "####"; }
+h5::before { content: "#####"; }
+h6::before { content: "######"; }
:is(h1, h2, h3, h4, h5, h6)::before {
- color: var(--blue);
+ color: var(--md-formatting-color);
}
-:is(h1, h2, h3, h4, h5, h6) * {
- hyphens: none;
-}
-
-/* text content */
-
-:is(h1, h2, h3, h4, h5, h6) {
+article :is(h1, h2, h3, h4, h5, h6) {
margin-top: 2rlh;
- margin-bottom: 1rlh;
}
-:is(aside, blockquote, div, dl, figure, hr, menu, ol, p, pre, table, ul) +
-:is(aside, blockquote, div, dl, figure, hr, menu, ol, p, pre, table, ul) {
+article :is(blockquote, dl, div, figure, hr, menu, ol, p, pre, ul) {
margin-top: 1rlh;
}
-blockquote {
+article :is(blockquote, div)>:is(blockquote, div, figure, hr, menu, ol, p, pre, ul):first-child {
+ margin-top: unset;
+}
+
+blockquote,
+figcaption,
+dd {
position: relative;
- margin-left: 1ch;
+ margin-left: 1ch;
+}
+
+blockquote::before,
+figcaption::before,
+dd::before {
+ position: absolute;
+ left: -1ch;
+ color: var(--md-formatting-color);
}
blockquote::before {
content: ">";
- position: absolute;
- left: -1ch;
- color: var(--blue);
+}
+
+figcaption::before {
+ content: "!";
+}
+
+dd::before {
+ content: ":";
}
dt {
font-style: italic;
}
-dd {
- position: relative;
- margin-left: 1ch;
+figure {
+ display: grid;
+ grid-template-rows: round(down, calc(min(160ch, 100vw)/2), 1rlh) auto;
}
-dd::before {
- content: ":";
- position: absolute;
- left: -1ch;
- color: var(--blue);
+figure img {
+ place-self: center;
}
-dd :is(blockquote, div, dl, figure, hr, menu, ol, p, pre, ul) {
+hr {
+ color: unset;
+ border: unset;
+}
+
+hr::after {
+ content: "---";
+ color: var(--md-formatting-color);
+}
+
+:is(ol, ul, menu, dd, li) :is(blockquote, div, figure, hr, menu, ol, p, pre, ul) {
margin-top: unset;
}
-figcaption {
- position: relative;
- margin-left: 1ch;
-}
-
-figcaption::before {
- content: "!";
- position: absolute;
- left: -1ch;
- color: var(--blue);
-}
-
-ol {
- padding-left: 2ch;
-}
-
-ul, menu {
+ol, ul, menu {
padding-left: 1ch;
}
-:is(ol, ul, menu) :is(ol, ul, menu) {
- margin-top: unset;
+ol:has(li:nth-child(10)) {
+ padding-left: 2ch;
+}
+
+ol:has(li:nth-child(100)) {
+ padding-left: 3ch;
}
li::marker {
- color: var(--blue);
+ color: var(--md-formatting-color);
}
ol>li::marker {
@@ -176,45 +188,46 @@ ul>li::marker {
content: "-";
}
-li :is(blockquote, div, dl, figure, hr, menu, ol, p, pre, ul) {
- margin-top: unset;
+li p + p {
+ text-indent: 2ch;
}
-li p+p {
- text-indent: 1ch;
-}
-hr {
- color: unset;
- border: unset;
-}
-
-hr::after {
- content: "---";
- color: var(--blue);
+p {
+ hyphens: auto;
}
pre {
- overflow-y: scroll;
+ overflow-x: scroll;
}
pre::before,
pre::after {
display: block;
content: "```";
- color: var(--blue);
+ color: var(--md-formatting-color);
}
-/* inline text semantics */
+
+img, svg {
+ max-width: 100%;
+ max-height: 100%;
+ display: block;
+}
+
+.math.display::before,
+.math.display::after {
+ content: "$$";
+ color: var(--md-formatting-color);
+}
+
+
+/* inlines */
a {
- color: unset;
+ color: inherit;
cursor: pointer;
- text-decoration: underline;
-}
-
-a:link {
- text-decoration-color: var(--blue);
+ text-decoration: underline solid var(--blue) 1pt;
}
a:active {
@@ -230,42 +243,98 @@ a:visited:active {
text-decoration-color: var(--red);
}
+code {
+ font-family: monospace;
+}
+
:not(pre)>code::before,
:not(pre)>code::after {
content: "`";
color: var(--blue);
}
-sup {
+
+em {
+ font-style: italic;
+}
+
+mark {
+ color: var(--orange);
+ background: unset;
+}
+
+strong {
+ font-weight: bold;
+}
+
+sup, sub {
+ font-size: unset;
+ vertical-align: unset;
line-height: 0;
}
+sup::before,
+sup::after {
+ content: "^";
+ color: var(--md-formatting-color);
+}
-/* image and multimedia */
+sub::before,
+sub::after {
+ content: "~";
+ color: var(--md-formatting-color);
+}
-img {
- max-width: 100%;
+u {
+ text-decoration: var(--red) wavy underline;
+}
+
+del, ins {
+ text-decoration: unset;
+}
+
+del { color: var(--red); }
+del::before { content: "[-"; }
+del::after { content: "-]"; }
+
+ins { color: var(--green); }
+ins::before { content: "{+"; }
+ins::after { content: "+}"; }
+
+.math.inline::before,
+.math.inline::after {
+ content: "$";
+ color: var(--md-formatting-color);
}
-/* table content */
+/* tables */
table {
- width: 100%;
- margin-inline: auto;
+ display: block;
+ margin-top: 1rlh;
+ margin-left: auto;
+ margin-right: auto;
border-spacing: 0;
+ overflow-x: scroll;
+}
+
+thead {
+ font-weight: bold;
+ overflow-x: scroll;
}
th, td {
- padding-inline: 1ch;
+ padding-left: 1ch;
+ padding-right: 1ch;
}
th {
- hyphens: none;
+ vertical-align: bottom;
+ border-bottom: 1pt solid white;
}
-tr {
- line-height: calc(1rlh - 2px); /* @hack */
+td {
vertical-align: baseline;
}
@@ -275,13 +344,14 @@ table caption {
table caption::before {
content: "!";
- color: var(--blue);
+ color: var(--md-formatting-color);
}
+
/* layout */
body {
- width: round(down, min(160ch, 100vw), 1ch);
+ width: round(down, min(160ch, 100vw), 2ch);
height: 100vh;
margin-left: auto;
margin-right: auto;
@@ -311,13 +381,6 @@ main>article#recto>* {
overflow-y: scroll;
}
-/* article.post */
-
-article.post>header,
-article.post>nav {
- margin-top: 1rlh;
- margin-bottom: 1rlh;
-}
/* div.horizontal */
@@ -334,7 +397,11 @@ div.horizontal>* {
scroll-snap-align: end;
}
-/* .display.math */
+/* pandoc specific */
+
+.smallcaps {
+ font-variant: small-caps;
+}
.display.math {
display: block;
@@ -352,11 +419,6 @@ div.horizontal>* {
display: inline;
}
-a.footnote-ref>sup {
- font-size: unset;
- vertical-align: unset;
-}
-
a.footnote-back {
color: var(--blue);
}