268 lines
5.2 KiB
CSS
268 lines
5.2 KiB
CSS
/* variables */
|
|
|
|
:root {
|
|
--alpha: rgba(0, 0, 0, 0);
|
|
/* border */
|
|
--border-off: var(--border-width) none var(--alpha);
|
|
--border-on: var(--border-width) solid var(--border-color);
|
|
--border-width: .1rem;
|
|
/* margin */
|
|
--margin: .4rem;
|
|
/* theme */
|
|
color-scheme: light dark;
|
|
/* theme / gradients */
|
|
--anchor-gradient: linear-gradient(to top, var(--alpha), var(--anchor-background), var(--alpha));
|
|
--banner-gradient: linear-gradient(to top, var(--alpha), var(--banner-background));
|
|
--body-gradient: linear-gradient(to top, var(--alpha), var(--body-background));
|
|
--header-gradient: linear-gradient(to top, var(--alpha), var(--header-background));
|
|
--item-even-gradient: linear-gradient(to top, var(--alpha), var(--item-even));
|
|
--item-odd-gradient: linear-gradient(to top, var(--alpha), var(--item-odd));
|
|
--org-gradient: linear-gradient(to top, var(--alpha), var(--org-background));
|
|
/* theme / light */
|
|
--anchor-background: #fcc;
|
|
--anchor-text: #f00;
|
|
--banner-background: #ccf;
|
|
--body-background: #fff;
|
|
--body-text: #000;
|
|
--border-color: #888;
|
|
--button-background: #bbb;
|
|
--header-background: #ccc;
|
|
--item-even: #ddd;
|
|
--item-odd: #eee;
|
|
--org-background: #afa;
|
|
--qrcode-background: ;
|
|
--ruler-border: #888;
|
|
}
|
|
@media screen {
|
|
[data-theme="dark"] {
|
|
/* theme / dark */
|
|
--anchor-background: #622;
|
|
--anchor-text: #f88;
|
|
--banner-background: #558;
|
|
--body-background: #000;
|
|
--body-text: #aaa;
|
|
--border-color: #888;
|
|
--button-background: #444;
|
|
--header-background: #444;
|
|
--item-even: #222;
|
|
--item-odd: #111;
|
|
--org-background: #030;
|
|
--qrcode-background: #aaa;
|
|
--ruler-border: #444;
|
|
}
|
|
}
|
|
|
|
/* main */
|
|
|
|
#link, #theme {
|
|
background-color: var(--button-background);
|
|
}
|
|
#vcard {
|
|
background-color: var(--qrcode-background);
|
|
}
|
|
|
|
@font-face {
|
|
font-display: swap;
|
|
font-family: "fa";
|
|
src: url("font/fa.woff2");
|
|
}
|
|
|
|
html {
|
|
font-family: "DejaVu Sans", sans-serif;
|
|
text-align: justify;
|
|
}
|
|
|
|
body {
|
|
background-color: var(--body-background);
|
|
color: var(--body-text);
|
|
margin-inline: auto;
|
|
max-inline-size: 108ch;
|
|
}
|
|
|
|
article, h2, h3, table {
|
|
margin-block-start: var(--margin);
|
|
}
|
|
|
|
h2, h3, header {
|
|
border-bottom: var(--border-off);
|
|
border-left: var(--border-on);
|
|
border-right: var(--border-on);
|
|
border-top: var(--border-on);
|
|
}
|
|
|
|
.link a:not(:has(img)),
|
|
.link button.link {
|
|
background: var(--anchor-gradient);
|
|
}
|
|
a:not(:has(img)) {
|
|
color: inherit;
|
|
padding: 0 .25em;
|
|
text-decoration: none;
|
|
text-decoration-skip-ink: auto;
|
|
text-underline-offset: .2em;
|
|
}
|
|
a:hover {
|
|
color: var(--anchor-text);
|
|
}
|
|
|
|
article.org, header {
|
|
border-radius: .25em;
|
|
padding-block: .25em;
|
|
}
|
|
header {
|
|
padding-inline: .5em;
|
|
background: var(--header-gradient);
|
|
}
|
|
header.org {
|
|
background: var(--org-gradient);
|
|
}
|
|
|
|
article header {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
div.org {
|
|
display: flex;
|
|
}
|
|
|
|
section.banner {
|
|
align-items: center;
|
|
display: flex;
|
|
justify-content: space-evenly;
|
|
}
|
|
.banner {
|
|
margin-block-start: .5em;
|
|
}
|
|
|
|
button {
|
|
block-size: 2em;
|
|
border-radius: .25em;
|
|
color: var(--body-text);
|
|
margin-block: 0 auto;
|
|
margin-inline: .25em;
|
|
padding-inline: .5em;
|
|
}
|
|
|
|
h1, h2, h3 {
|
|
border-radius: .25em;
|
|
font-weight: bold;
|
|
}
|
|
h1 {
|
|
font-size: 1.15rem;
|
|
}
|
|
h2 {
|
|
background: var(--banner-gradient);
|
|
font-size: 1.10rem;
|
|
padding-block: .25em;
|
|
text-align: center;
|
|
}
|
|
h3 {
|
|
background: var(--header-gradient);
|
|
font-size: 1.05rem;
|
|
padding: .125em .25em;
|
|
}
|
|
|
|
hr {
|
|
border: .1em dashed;
|
|
border-color: var(--ruler-border);
|
|
margin-block: var(--margin);
|
|
}
|
|
|
|
img.big {
|
|
block-size: 5em;
|
|
}
|
|
img.inline {
|
|
block-size: 1.5em;
|
|
vertical-align: middle;
|
|
}
|
|
a.logo {
|
|
block-size: 2em;
|
|
margin-block: 0 auto;
|
|
}
|
|
img.logo {
|
|
block-size: 100%;
|
|
margin-inline: auto;
|
|
}
|
|
img.org {
|
|
block-size: 2em;
|
|
margin-inline-end: .5em;
|
|
}
|
|
img.photo {
|
|
border-radius: 1em;
|
|
border-bottom: var(--border-on);
|
|
border-left: var(--border-on);
|
|
border-right: var(--border-on);
|
|
border-top: var(--border-on);
|
|
}
|
|
|
|
li:nth-of-type(even) {
|
|
background: var(--item-even-gradient);
|
|
}
|
|
li:nth-of-type(odd) {
|
|
background: var(--item-odd-gradient);
|
|
}
|
|
|
|
strong, th {
|
|
text-shadow: .05em .05em .05em;
|
|
}
|
|
|
|
.banner table {
|
|
margin-block-start: 0;
|
|
margin-inline: 0;
|
|
}
|
|
table {
|
|
border-collapse: separate;
|
|
border-spacing: .5em .125em;
|
|
margin-inline: auto;
|
|
}
|
|
table h3 {
|
|
text-align: center;
|
|
}
|
|
th.logo, td.logo {
|
|
block-size: 1.5em;
|
|
}
|
|
th {
|
|
text-align: end;
|
|
}
|
|
|
|
ul {
|
|
list-style-type: disc;
|
|
padding-inline-start: 1.25em;
|
|
}
|
|
|
|
.columns {
|
|
display: grid;
|
|
gap: 1em;
|
|
grid-template-columns: 1fr;
|
|
}
|
|
.level {
|
|
text-align: center;
|
|
}
|
|
.title, .duration.org {
|
|
font-weight: bold;
|
|
}
|
|
.small {
|
|
font-size: .9em;
|
|
}
|
|
.sub, .period {
|
|
font-size: .75em;
|
|
}
|
|
.time {
|
|
text-align: end;
|
|
}
|
|
|
|
@media (width > 66ch) {
|
|
.columns { grid-template-columns: 2fr 1fr; }
|
|
aside { order: 2; }
|
|
main { order: 1; }
|
|
}
|
|
|
|
@media print {
|
|
@page { size: A4; }
|
|
html { font-size: 3mm; }
|
|
.columns { grid-template-columns: 2fr 1fr; }
|
|
aside { order: 2; }
|
|
main { order: 1; }
|
|
#theme { display: none; }
|
|
}
|