her.esy.fun/src/css/y.css
Yann Esposito (Yogsototh) 2d8c04894d
Finally added TOC generation
2020-08-23 14:06:08 +02:00

182 lines
4.1 KiB
CSS

html {
font-family: Courier,monospace;
font-size: 14px;
line-height: calc(1ex/0.37); }
#TOC {text-align: left;}
html,body { margin: 0; padding: 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: 1ex; }
pre > code { font-size: 0.875em; background: none; }
code,pre { font-family: Courier, monospace; }
figure { margin: 1rem 0; padding: 0; }
.meta { font-size: small;}
.abstract { margin: 1rem; font-size: 0.875em; font-style: italic; }
#logo { display: inline-block; }
#logo svg { width: 3em; }
#preamble, #postamble { text-align: center; }
#content,.content,#preamble,#postamble {
padding: 0 1rem;
max-width: 68ch;
overflow: hidden;
margin: 0 auto;
}
figure img { width: 100%; }
.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; }
: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: #fff;
/* default light */
--bg: var(--b3);
--rbg: var(--b2);
--fg0: var(--b0);
--fg: var(--b02);
--rfg: #000;
--hl: var(--o);
}
/* 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);
}
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); }
/* ---- */
::selection {
background: var(--m);
color: hsl(218,40%,96%);
text-decoration: hsl(218,40%,96%);
}
body, body > div {
background: var(--bg);
color: var(--fg);
}
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); }