her.esy.fun/src/css/y.css

272 lines
6.0 KiB
CSS

html {
font-family: Avenir, "Helvetica Neue", sans-serif;
font-size: 16px;
line-height: calc(1ex/0.37); }
#TOC {text-align: left;}
html,body { margin: 0; padding: 0 0 3em 0; border: 0; }
.main { min-height: calc(100vh - 1em); }
h1,h2,h3,h4,h5,h6 {
line-height: calc(1ex/0.42);
margin: calc(1ex/0.42) 0; }
#preamble h1 { margin: 0; }
p { text-align: justify; hyphens: auto; }
pre { overflow-x: scroll; border: solid 1px; padding: 1em; }
pre > code { background: none; font-size: 0.875em; }
code,pre { font-family: Menlo, Monaco, monospace; font-size: 1.85ex; }
figure { margin: 1rem 0; padding: 0; }
.meta { font-size: small;}
.abstract { margin: 2rem 10%; font-size: 0.875em; font-style: italic; }
#logo { display: inline-block;
vertical-align: middle;}
#logo svg { width: 3em; }
#preamble, #postamble { text-align: center; }
#content,.content,#preamble,#postamble {
padding: 0 1rem;
max-width: 70ch;
overflow: hidden;
margin: 0 auto;
}
figure img { width: 100%; }
sup, sub {
vertical-align: baseline;
position: relative;
top: -0.4em;
}
sub { top: 0.4em; }
.footdef > sup { vertical-align: top; font-size: medium; }
.footdef > sup > a { padding: 0.5em; }
.footpara { display: inline; }
footer { margin: 3em 0;
padding: 1em 0;
border-top: solid 1px;
border-bottom: solid 1px;
line-height: 1em;
font-size: 0.875em;
}
table { margin: 1rem 0; line-height: 1em; }
nav { text-align: center; padding: 1em 0; }
pre { line-height: 1em; }
/* COLORS */
/* colortheme switch */
body>input { display: none; }
#labels > .content { margin: 0 auto; text-align: center; }
label { font-weight: 700; }
label:hover { cursor: pointer; }
label ~ pre { margin-top: 0; }
figcaption { text-align: right; font-family: italic; }
:root {
--b03: #2E3440;
--b02: #3B4252;
/* not used because light mode is has more contrast
--b01: #656b74;
*/
--y: #c18600;
--o: #d84100;
--r: #e62729;
--m: #ec0085;
--v: #6c71c4;
--b: #0095ff;
--c: #00b0a3;
--g: #879a00;
--b00: #727781;
--b0: #989ea8;
--b1: #b0bac7;
--b2: #ECEFF4;
--b3: rgb(248,249,251);
/* default light */
--bg: var(--b3);
--rbg: var(--b2);
--fg0: var(--b0);
--fg: #4c566a; /* var(--b02); */
--rfg: var(--b03);
--hl: var(--o);
}
pre {
border-color: var(--b1);
background: var(--b2);
}
/* dark preferred */
/*
@media (prefers-color-scheme: dark)
{
:root {
--y: #ae8c51;
--o: #a9654a;
--r: #af6255;
--m: #ae5e7d;
--v: #6774b2;
--b: #3f8cc3;
--c: #15a198;
--g: #939452;
--bg: hsl(218,20%,16%);
--rbg: var(--b03);
--fg: var(--b0);
--fg0: var(--b00);
--rfg: var(--b1);
--hl: var(--g);
}
img { filter: brightness(0.7) saturate(0.5); }
pre {
background: hsl(218,20%,18%);
border-color: hsl(218,15%,23%);
}
} */
/* light checked */
input#l:checked ~ div {
--y: #c18600;
--o: #d84100;
--r: #e62729;
--m: #ec0085;
--v: #6c71c4;
--b: #0095ff;
--c: #00b0a3;
--g: #879a00;
--bg: var(--b3);
--rbg: var(--b2);
--fg0: var(--b0);
--fg: var(--b02);
--rfg: #000;
--hl: var(--o);
}
input#l:checked ~ div img {
filter: none;
}
input#l:checked ~ div pre {
border: 1px solid hsl(218, 15%, 49%);
background: hsl(218, 40%, 96%);
}
/* dark checked */
input#d:checked ~ div {
--y: #ae8c51;
--o: #a9654a;
--r: #af6255;
--m: #ae5e7d;
--v: #6774b2;
--b: #3f8cc3;
--c: #15a198;
--g: #939452;
--bg: hsl(218,20%,16%);
--rbg: var(--b03);
--fg: var(--b0);
--fg0: var(--b00);
--rfg: var(--b1);
--hl: var(--g);
--b03: var(--bg);
--b2: hsl(218,15%,23%);
}
input#d:checked ~ div img {
filter: brightness(0.7) saturate(0.5);
}
input#d:checked ~ div pre {
background: hsl(218,20%,18%);
border-color: hsl(218,15%,23%);
}
em,strong,b,i,h1,h2,h3,h4,h5,h6 { color: var(--rfg); }
/* geek checked */
input#g:checked ~ div {
--y: #6A0;
--o: #8A0;
--r: #AA0;
--m: #6A6;
--v: #4A8;
--b: #0A8;
--c: #0A4;
--g: #0A0;
--bg: #020;
--rbg: #040;
--fg: #0B0;
--fg0: #090;
--rfg: #0C0;
--hl: #0D0;
--b03: #020;
--b2: #080;
font-family: Courier, monospace;
font-size: 14px;
line-height: 1.1em;
}
input#g:checked ~ div img {
filter: brightness(0.8) sepia(100%) hue-rotate(55deg) saturate(3);
}
input#g:checked ~ div pre {
background: var(--bg);
border-color: var(--rbg);
}
em,strong,b,i,h1,h2,h3,h4,h5,h6 { color: var(--rfg); }
/* plain checked */
input#b:checked ~ div {
--y: #b58900;
--o: #cb4b16;
--r: #dc322f;
--m: #d33682;
--v: #6c71c4;
--b: #268bd2;
--c: #2aa198;
--g: #859900;
--b03: #002b36;
--b02: #073642;
--b01: #586e75;
--b00: #657b83;
--b0: #839496;
--b1: #93a1a1;
--b2: #eee8d5;
--b3: #fdf6e3;
--hl: var(--y);
--bg: var(--b3);
--rbg: var(--b2);
--fg: var(--b00);
--fg0: var(--b1);
--rfg: var(--b01);
font-family: Hoefler Text, serif;
font-size: 18px;
line-height: 1.35em;
}
input#b:checked ~ div img {
border: solid 1px;
filter: brightness(0.8) sepia(30%) saturate(0.8);
}
input#b:checked ~ div pre {
background: var(--rbg);
border-color: var(-b1);
}
em,strong,b,i,h1,h2,h3,h4,h5,h6 { color: var(--rfg); }
/* ---- */
::selection {
background: var(--m);
color: hsl(218,40%,96%);
text-decoration: hsl(218,40%,96%);
}
body, body > div {
background: var(--bg);
color: var(--fg);
}
label:hover, a,a:visited { color: var(--hl); }
code { background: var(--rbg); }
/* ---- SYNTAX HIGHLIGHTING ---- */
#table-of-contents { text-align: left; }
.ex { color:var(--v); }
.op, .fu, .ot {color:var(--b);}
.bu { color:var(--m); }
.dt { color:var(--o); }
.kw { color:var(--y); }
.st { color:var(--g); }
.co { color:var(--fg0); }
.pubDate { font-size: .7em; color: var(--b1); }
.tag { font-size: .7em; background-color: var(--b1); }