lang/style/page.css

330 lines
4.3 KiB
CSS

@import url(fonts/muller/muller.css);
@import url(fonts/junius/junius.css);
@import url(fonts/pragmatapro/pragmatapro.css);
@import url(counters.css);
:root {
--root-col: hsl(30deg, 5%, 26%);
--fg-col: hsl(336deg, 17%, 11%);
--bg-col: hsl(40deg, 91%, 98%);
--link-col: hsl(355deg, 52%, 48%);
--ipa-font: JuniusX;
}
:root {
background: var(--root-col);
font-family: Muller;
font-size: 16pt;
height: 100vh;
}
body {
background: url(paper.png), var(--bg-col);
background-blend-mode: multiply;
color: var(--fg-col);
box-shadow: 0 0 5em var(--fg-col);
max-width: 50em;
min-height: 100%;
margin: 0 auto;
padding: 1em 2em 3em;
box-sizing: border-box;
}
header {
text-align: center;
}
header h1 {
font-size: 350%;
font-weight: 100;
margin-top: 0;
}
h1, h2, h3, h4, h5, h6 {
margin: 1em 0 0.25em;
}
h1 {
font-size: 200%;
font-weight: 200;
}
h2 {
font-size: 180%;
font-weight: 200;
}
h3 {
font-size: 160%;
font-weight: 200;
}
h4 {
font-size: 140%;
font-weight: 300;
}
h5 {
font-size: 120%;
font-weight: 300;
}
h6 {
font-size: 100%;
font-weight: 400;
}
a {
color: var(--link-col);
}
b, strong {
font-weight: 600;
}
ul li {
list-style: '— ';
}
table {
margin: auto;
border-spacing: 0;
border-top: 2px solid var(--root-col);
border-bottom: 2px solid var(--root-col);
}
th {
font-weight: 500;
}
thead th {
border-bottom: 1px solid var(--root-col);
}
td, th {
padding: 0 0.5em;
vertical-align: text-bottom;
}
code {
font-family: PragmataPro;
font-size: 90%;
}
pre {
width: min-content;
margin: auto;
}
.ipa, .lang, .ebnf-t {
font-family: var(--ipa-font);
font-feature-settings:
"ccmp", "calt", "liga", "loca", "mark", "mkmk", "ss01";
/* ss01 to use modern Þþð design, others to make juniusx go brrr
* maybe i can just turn loca off but idk what other regional forms
* it does that i actually want */
text-underline-offset: 0.125em;
}
.ipa {
font-weight: 500;
}
.lang, .ebnf-t {
font-weight: 700;
}
.abbr {
font-size: 70%;
font-weight: 500;
}
.scr {
height: 1.5em;
vertical-align: -40%;
padding-right: 0.5ex;
}
.gloss .scr {
height: 2em;
}
:is(.splash, .example) .scr {
height: unset;
display: block;
margin: auto;
}
.example {
margin: auto;
}
.example .text {
display: block;
text-align: center;
width: 80%;
margin: 0.75em auto 0;
}
blockquote {
font-style: italic;
}
.letter-list {
margin: 1.25em auto 0;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
width: 80%;
row-gap: 0.5em;
column-gap: 1.5em;
}
.letter-list + .letter-list {
margin-top: 2.5em;
}
.letter-list .lang {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.letter-list .scr {
height: 3em;
margin-left: 0.5em;
}
.letter-list .text {
font-size: 125%;
}
main nav {
text-align: center;
font-size: 125%;
}
#toc > h2 {
font-size: 120%;
font-weight: 300;
}
#toc > ul {
columns: 2;
margin-left: 2em;
margin-right: 2em;
}
figure:not(.left) {
text-align: center;
}
figure:not(.left) table {
display: inline-table;
}
figure table {
margin: 1em 0.5em;
}
.gloss {
border: none;
text-align: left;
}
figure ul {
text-align: left;
margin-left: 5em;
margin-right: 5em;
columns: 2;
}
figure li {
break-inside: avoid;
}
dt { font-weight: 500; float: left; clear: left; }
dd { margin-left: 4em; }
dt {
break-after: avoid;
}
dd {
break-before: avoid;
}
u u {
text-decoration: double underline;
}
:is(.twocol, .threecol):not(:is(ul, ol) *) {
margin-top: 1em;
}
.twocol {
columns: 2;
}
.threecol {
columns: 3;
}
.twocol :first-child, .threecol :first-child {
margin-top: 0;
}
footer {
border-top: 1px solid var(--root-col);
width: 80%;
margin: 2em auto 1em;
padding-top: 0.5em;
font-size: 80%;
font-weight: 500;
text-align: center;
}
.ebnf {
border: none;
}
.ebnf td {
padding: 0 0.15em;
}
.ebnf-nt {
font-weight: 500;
color: hsl(155deg, 80%, 30%);
white-space: nowrap;
}
.ebnf-punc {
color: hsl(25deg, 40%, 30%);
}
.ebnf-sub, .ebnf-brack {
color: hsl(210deg, 80%, 35%);
font-weight: 500;
}
.ebnf-brack {
padding: 0 0.05em;
}
.ebnf-s {
font-style: italic;
color: hsl(330deg, 80%, 30%);
}
blockquote {
max-width: 70%;
border-left: 1px solid black;
padding-left: 1em;
margin: auto;
}