$font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; $width: 960px; :root { color-scheme: dark; } body { background-color: #231D1D; color: #F5F5F5; } * { box-sizing: border-box; word-break: break-word; } html { scroll-behavior: smooth; } header, footer { color: white; } html, body { height: 100%; } body { margin: 0; display: flex; flex-direction: column; font-family: $font; font-weight: lighter; font-style: normal; font-size: larger; } h1 { margin: 0rem; margin-bottom: 0.5rem; margin-top: 0.5rem; } p { //margin: 0.5rem; } a { text-decoration: none; color: {{ .Site.Params.color.secondary }}; } {{ if .Site.Params.list.icon }} ul { list-style: none; padding-left: 1rem; } ul li { display: flex; } ul li:before { content: url({{ .Site.Params.list.icon }}); display: inline-block; width: 21px; height: 21px; margin-right: 10px; flex-shrink: 0; } {{ end }} .col-3 {flex: 25%; width: 25%; max-width: 25%;} .col-4 {flex: 33.33%; width: 33.33%; max-width: 33.33%;} .col-5 {flex: 41.66%; width: 41.66%; max-width: 41.66%;} .col-6 {flex: 50%; width: 50%; max-width: 50%;} .col-7 {flex: 58.33%; width: 58.33%; max-width: 58.33%;} .col-8 {flex: 66.66%; width: 66.66%; max-width: 66.66%;} .col-9 {flex: 75%; width: 75%; max-width: 75%;} .col-10 {flex: 83.33%; width: 83.33%; max-width: 83.33%;} .col-11 {flex: 91.66%; width: 91.66%; max-width: 91.66%;} .col-12 {flex: 100%; width: 100%; max-width: 100%;} [class*="col-"] { float: left; } .rotate-45 {-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg);} .rotate-90 {-webkit-transform: rotate(90deg); -moz-transform: rotate(90deg); -ms-transform: rotate(90deg); -o-transform: rotate(90deg); transform: rotate(90deg);} .rotate-180 { -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg);} .row { display: flex; flex-wrap: wrap; flex-flow: column; } /* Header */ header { height: 80px; position: sticky; top: 0; z-index: 9; display: flex; flex-direction: row-reverse; flex-wrap: wrap; align-items: center; text-align: end; background-color: inherit; h2 { max-width: 960px; padding-inline: 1rem; a { color: inherit; } } i { font-size: x-large; } .items { display: flex; flex-grow: 1; justify-content: right; .item { align-self: center; padding-inline-end: 16px; } } } .progress { background: {{ .Site.Params.color.primary }}; height: 5px; width: 0%; position: fixed; top: 0; z-index: 10; } .scroll-indicator { display: flex; justify-content: center; position: relative; width: 100%; padding: 2rem; font-size: x-large; .down { bottom: 0; } .up { top: 0; } i { color: {{ .Site.Params.color.secondary }}; cursor: pointer; } } .totop { display: inline-flex; background-color: {{ .Site.Params.color.primary }}; color: #f2f2f2; width: 40px; height: 40px; align-items: center; justify-content: center; border-radius: 50%; margin: 20px; position: fixed; bottom: 0px; right: 0px; transition: background-color .3s; z-index: 10; visibility: hidden; opacity: 0; } .totop:hover { filter: brightness(60%); } .totop.show { visibility: visible; opacity: 1; } /* Sections */ .scroller { height: calc(100vh - 80px); overflow-y: scroll; scroll-snap-type: y mandatory; section { min-height: 100%; scroll-snap-align: start; display: flex; flex-direction: column; .profile { .content { margin: auto; h1 { margin-block-end: 1rem; } p { margin: 0px; } .social { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-evenly; padding: 2rem; i { font-size: xx-large; } a { padding-inline: 6px; color: {{ .Site.Params.color.secondary }}; } } } } .card { display: flex; flex-direction: row; flex-wrap: wrap; width: 100%; max-width: 1152px; margin: auto; padding: 1rem; align-items: stretch; a { color: inherit; } .image { display: flex; flex: min-content; justify-content: center; max-width: 580px; max-height: 400px; min-width: 300px; a { display: flex; } picture { display: flex; } } .placeholder { height: 300px; } .content { display: flex; flex-direction: column; flex: 1 1 0%; //flex: content; min-width: 300px; max-width: 800px; margin-inline: auto; padding: 1rem; h1 { flex-grow: 1; color: {{ .Site.Params.color.primary }}; font-size: xx-large; } .tags { .tag + .tag::before { content: " - " } } .more { display: flex; justify-content: end; padding: 1rem; } } } } :last-child { .scroll-indicator.down { display: none; } } } article { picture { display: flex; margin: auto; } a { display: flex; } .card { display: flex; flex-direction: row; flex-wrap: wrap; padding: 1rem; margin-block-end: 4rem; a { color: inherit; } .image { width: 100%; max-width: 480px; } .placeholder { height: 300px; } .content { display: flex; flex-direction: column; flex: min-content; min-width: 300px; padding: 1rem; p { margin: 0px; } } } } .table-of-contents { position: fixed; left: 0px; top: 0px; height: 100%; display: flex; flex-direction: row; .extend { margin: auto; padding-block: 1rem; padding-inline: 0.4rem; border-radius: 0rem 0.5rem 0.5rem 0rem; background-color: black; cursor: pointer; } } #TableOfContents { display: none; margin: auto; padding-inline: 20px; border-radius: 0rem 0.5rem 0.5rem 0rem; background-color: black; font-size: larger; ul { counter-reset:toc1; list-style-type:none; padding-inline-start: 0rem; padding-block: 0.5rem; } li { list-style-type:none; ul { counter-reset:toc2; li { list-style-type:none; ul { counter-reset:toc3; li:before { counter-increment:toc3; content:counter(toc1) "." counter(toc2) "." counter(toc3) " "; } } } li:before { counter-increment:toc2; content:counter(toc1) "." counter(toc2) " "; } } } li:before { counter-increment:toc1; content:counter(toc1) ". "; } } #TableOfContents.show { display: block; } main { flex-grow: 1; display: flex; flex-direction: column; } .title h1 { color: {{ .Site.Params.color.primary }}; font-size: xxx-large; margin-block-end: 3rem; } main > .content { padding-top: 9rem; padding-bottom: 2rem; padding-right: 1.5rem; padding-left: 1.5rem; width: 100%; max-width: $width; margin: 0; align-self: center; flex-grow: 1; } .list { margin-block-start: 2rem; } .list > li { list-style: none; margin: 0.5rem; } .list > article { margin: 0.5rem; padding: 0.5rem; border: 2px solid gray; border-radius: 6px; } .list > article > h3 { margin: 0px; padding-block: 0.25rem; font-size: x-large; } .list > article > .meta { font-size: smaller; padding-block-end: 1rem; } .meta > span { padding-inline-end: 1rem; } .list > article > .more { display: block; width: 100%; text-align: right; font-size: x-large; border: none; background: inherit; color: {{ .Site.Params.color.secondary }}; } .section { padding-top: 2rem; padding-bottom: 2.5rem; padding-right: 1.5rem; padding-left: 1.5rem; width: 100%; margin: 0; align-self: center; flex: 1 0 auto; } .section.even { // background-color: #eee; } .section.highlight { background-color: {{ .Site.Params.color.primary }}; } .section > .content { width: 100%; max-width: $width; margin: auto; justify-content: center; } /* Buttons */ /* TODO: test */ .button { font-family: inherit; font-size: 100%; line-height: inherit; color: inherit; background-color: transparent; background-image: none; text-transform: none; padding: 0; } .button:hover { filter: brightness(60%); } .button.filled { background-color: {{ .Site.Params.color.secondary }}; color: white; border: 2px solid {{ .Site.Params.color.secondary }}; border-radius: 4px; padding: 0.5rem 1.5rem; text-align: center; text-decoration: none; display: inline-block; font-size: 1rem; } .button.outlined { background-color: transparent; color: {{ .Site.Params.color.secondary }}; border: 2px solid {{ .Site.Params.color.secondary }}; border-radius: 4px; padding: 0.5rem 1.5rem; text-align: center; text-decoration: none; display: inline-block; font-size: 1rem; } .button.outlined:hover { background-color: {{ .Site.Params.color.secondary }}; color: white; } /* Images */ img { max-width: 100%; max-height: 100%; width: auto; height: auto; margin: auto; object-fit: contain; vertical-aligh: middle; border-radius: 6px; } .avatar { border-radius: 50%; border: 3px solid {{ .Site.Params.color.primary }}; object-fit: cover; } .caption { text-align: center; color: gray; font-size: small; margin: 0px; }