summary refs log tree commit diff stats
path: root/style.css
diff options
context:
space:
mode:
Diffstat (limited to 'style.css')
-rw-r--r--style.css370
1 files changed, 334 insertions, 36 deletions
diff --git a/style.css b/style.css
index c8067aa..1d06d84 100644
--- a/style.css
+++ b/style.css
@@ -1,49 +1,347 @@
+/* Taken from https://tug.org/~mseven/style.css */
+
+:root {
+  --color-light:hsl(32, 98%, 92%);
+  --color-light-semi:hsl(32, 35%, 65%);
+  --color-light-faded:hsl(32, 20%, 40%);
+  --color-dark:hsl(32, 80%, 8%);
+  --color-dark-semi:hsl(32, 35%, 28%);
+  --color-dark-faded:hsl(32, 20%, 60%);
+  --color-blue:hsl(213, 90%, 33%);
+  --color-purple:hsl(280, 90%, 37%);
+  --color-light-blue:hsl(213, 85%, 75%);
+  --color-light-purple:hsl(280, 84%, 75%);
+  --heading-ratio:0.7071067811865476;
+  --heading-base:2.5rem;
+  --linespread:1.3;
+  --margin-big:1rem;
+  --margin-small:0.5rem;
+  --base-font-size:1.125rem;
+  --page-margin:15px;
+  --max-page-width:55rem;
+  --margin-width:calc((100vw  - var(--max-page-width)) / 2)
+}
+@media (max-width:55rem) {
+  :root {
+    --margin-width:var(--page-margin)
+  }
+}
+:root {
+  --color-background:var(--color-light);
+  --color-text:var(--color-dark);
+  --color-link:var(--color-blue);
+  --color-link-followed:var(--color-purple);
+  --color-faded:var(--color-dark-faded);
+  --color-semi:var(--color-dark-semi)
+}
+@media (prefers-color-scheme:dark) {
+  :root {
+    --color-background:var(--color-dark);
+    --color-text:var(--color-light);
+    --color-link:var(--color-light-blue);
+    --color-link-followed:var(--color-light-purple);
+    --color-faded:var(--color-light-faded);
+    --color-semi:var(--color-light-semi)
+  }
+  img.dark,
+  svg {
+    filter:invert(1) hue-rotate(180deg) saturate(140%)!important
+  }
+}
+*,
+::after,
+::before {
+  box-sizing:border-box;
+  text-rendering:optimizeLegibility
+}
+[hidden] {
+  display:none!important
+}
+[hidden][aria-hidden=false] {
+  position:absolute;
+  display:initial!important;
+  clip:rect(0,0,0,0);
+  clip-path:inset(100%)
+}
 html {
-	font-family: sans-serif;
-	max-width: 50em;
-	margin: 0 auto;
-	line-height: 1.2;
-	border-color: black;
-	color: black;
-	background-color: white;
+  color:var(--color-text);
+  background-color:var(--color-background)
 }
-
-hr {
-	background-color: black;
-	border-width: 0;
-	height: 1px;
+a:link,
+a:visited {
+  color:var(--color-link);
+  text-decoration:none
+}
+a:visited {
+  color:var(--color-link-followed)
+}
+a:hover,
+code .token.url {
+  text-decoration:underline
 }
-
 body {
-	margin: 0.7em;
+  display:grid;
+  justify-items:center;
+  margin:var(--page-margin);
+  font-size:var(--base-font-size);
+  font-family:"Segoe UI",ui-sans-serif,system-ui,sans-serif;
+  line-height:var(--linespread);
+  hyphens:auto;
+  font-variant-ligatures:common-ligatures contextual;
+  font-kerning:normal
 }
-
-.copyright {
-	color: #002855;
-	background-color: #E7F4F8;
-	border: solid 1px #002855;
-	padding: 2px;
+body * {
+  min-width:0
+}
+:focus-visible {
+  border-radius:4px;
+  outline:2px solid var(--color-text);
+  outline-offset:2px
+}
+::selection {
+  background-color:var(--color-faded)
+}
+:root,
+pre {
+  scrollbar-width:thin;
+  scrollbar-color:var(--color-faded) var(--color-background)
+}
+:is(:root,
+pre)::-webkit-scrollbar {
+  width:8px;
+  height:8px
+}
+:is(:root,
+pre)::-webkit-scrollbar-track {
+  background:var(--color-background)
+}
+:is(:root,
+pre)::-webkit-scrollbar-thumb {
+  background-color:var(--color-faded)
+}
+h1 {
+  text-align:center;
+  margin-bottom:0;
+  margin-top:1rem;
+  font-size:max(var(--heading-base),var(--base-font-size));
+  padding-bottom:.1em;
+  border-bottom:1px solid var(--color-faded)
+}
+h2 {
+  font-size:max(calc(var(--heading-base)*var(--heading-ratio)),var(--base-font-size))
+}
+h2,
+h3,
+h4,
+h5 {
+  margin-top:var(--margin-big);
+  margin-bottom:var(--margin-small)
+}
+h1,
+h2,
+h3 {
+  font-weight:700
+}
+h3 {
+  font-size:max(calc(var(--heading-base)*var(--heading-ratio)*var(--heading-ratio)),var(--base-font-size))
+}
+h4,
+h5 {
+  font-weight:500
+}
+h4 {
+  font-size:max(calc(var(--heading-base)*var(--heading-ratio)*var(--heading-ratio)*var(--heading-ratio)),var(--base-font-size));
+  font-style:italic
+}
+h5 {
+  font-size:calc(var(--base-font-size)*.9);
+  color:var(--color-semi)
+}
+:is(h1,
+h2,
+h3,
+h4,
+h5)+* {
+  margin-top:0
+}
+p {
+  margin-top:var(--margin-small);
+  margin-bottom:var(--margin-small);
+  position:relative
+}
+code {
+  font-family:ui-monospace,Consolas,Inconsolata,"Roboto Mono","Fira Mono",monospace;
+  overflow-wrap:anywhere;
+  hyphens:none
+}
+article,
+body nav,
+footer,
+header,
+section {
+  display:block;
+  width:100%;
+  max-width:var(--max-page-width)
+}
+code.block {
+  display:block;
+  max-width:100%
+}
+footer {
+  margin-top:1em;
+  padding-top:0;
+  border-top:1px solid var(--color-faded)
+}
+footer ul {
+  display:flex;
+  flex-wrap:wrap;
+  justify-content:flex-end;
+  margin:0;
+  padding:0
+}
+footer ul li {
+  display:inline;
+  list-style-type:none
+}
+footer ul li:first-of-type {
+  margin-right:auto
+}
+footer li:not(:last-child):not(:first-child)::after {
+  content:" • "
+}
+abbr {
+  text-decoration:none;
+  font-variant-caps:all-small-caps;
+  font-variant-numeric:oldstyle-nums;
+  font-size:1.075em
+}
+svg {
+  width:100%;
+  height:fit-content;
+  max-height:90vh;
+  padding:1rem;
+  background-color:hsla(0,0%,100%,0%);
+  filter:invert(0) hue-rotate(0deg) saturate(120%);
+  transition:all 250ms ease-out
+}
+img.dark:hover,
+svg:hover {
+  background-color:hsla(0,0%,100%,100%);
+  filter:invert(0) hue-rotate(0deg) saturate(100%)!important;
+  transition:all 250ms ease-in
+}
+pre {
+  max-width:calc(100vw - var(--page-margin)*2);
+  overflow-x:auto;
+  hyphens:none;
+  margin:calc(2*var(--margin-small))0
+}
+pre.scroll {
+  overflow-y:auto;
+  max-height:90vh
+}
+th {
+  text-align:right;
+  font-weight:400
+}
+thead th {
+  font-weight:700
+}
+td,
+th {
+  padding:0 1ch
+}
+dd {
+  margin-bottom:var(--margin-small)
+}
+/*
+li {
+  margin-bottom:var(--margin-small)
+}
+*/
+figure {
+  display:flex;
+  align-items:center;
+  justify-content:center;
+  flex-direction:column
+}
+figcaption,
+nav ul ul ul li {
+  font-style:italic
+}
+@media (min-width:70em) {
+  span.sidenote {
+    float:left;
+    font-size:80%;
+    text-align:right;
+    position:absolute;
+    --sidenote-width:calc(var(--margin-width) - 1rem - var(--page-margin));
+    width:var(--sidenote-width);
+    left:calc(-1*var(--sidenote-width) - 1rem);
+    top:0
+  }
+}
+@media (max-width:70em) {
+  span.sidenote {
+    display:block;
+    font-size:80%;
+    margin-top:1em;
+    margin-left:3em
+  }
+}
+nav li {
+  list-style:none
+}
+nav>ul,
+ul.inline {
+  padding-left:0
+}
+nav ul ul ul li,
+ul.inline>li {
+  display:inline;
+  list-style-type:none
+}
+@media (min-width:55rem) {
+  nav ul ul ul li,
+  ul.inline>li {
+    white-space:nowrap
+  }
+}
+:is(nav ul ul ul li,
+ul.inline>li):not(:first-child)::before {
+  content:" • "
+}
+dd>p {
+  margin-top:0
+}
+dl.bold>dt,
+summary {
+  font-weight:500
+}
+header p {
+  font-style:italic;
+  position:absolute;
+  right:var(--margin-width)
+}
+summary {
+  list-style-position:outside
 }
 
-a.link {color: #0000A0;}
-a.visited {color: #A000A0;}
-a.active {color: #00A000;}
 
-#nav {list-style-type: none; padding: 0; margin: 0;}
-#nav li {display: inline; margin-right: 1em;}
 
-iframe {
-	border: 1px solid;
+slot:not([name]) {
+  display: none;
 }
-
-table {
-	border: 1px solid;
-	border-collapse: collapse;
+:host([open]) slot:not([name]) {
+  display: revert;
 }
 
-table td {
-	border: 1px solid;
-	text-align: left;
-	padding: 0px 3.5px;
-	height: 1.25rem;
+summary {
+  display: list-item;
+  counter-increment: list-item 0;
+  list-style: disclosure-closed inside;
+}
+:host([open]) summary {
+  list-style-type: disclosure-open;
 }
+