$bg_color: {{ .Site.Params.backgroundColor | default "#242629" }}; $fg_color: {{ .Site.Params.foregroundColor | default "white" }}; $dim_fg_color: {{ .Site.Params.dimForegroundColor | default "#bababa" }}; $stroke_color: {{ .Site.Params.strokeColor | default "#4f4f4f" }}; $accent_color: {{ .Site.Params.accentColor | default "#db5793" }}; $main_font: {{ .Site.Params.fontFamily | default "JetBrains Mono" }}; $title_font: {{ .Site.Params.titleFontFamily | default "$main_font" }}; $mono_font: {{ .Site.Params.monospaceFontFamily | default "JetBrains Mono" }}; $highlight_bg_color: {{ .Site.Params.highlightBgColor | default "#34363b" }}; $content_width: {{ .Site.Params.contentWidth | default "1000px" }}; $border_radius: 10px; $content_spacing: 25px; $base_font_size: 16px; $title_font_mult: {{ .Site.Params.titleFontSizeMultiplier | default 1.0 }}; $main_font_mult: {{ .Site.Params.mainFontSizeMultiplier | default 1.0 }}; $mono_font_mult: {{ .Site.Params.monoFontSizeMultiplier | default 1.0 }}; ::selection, ::-moz-selection { background: $accent_color; color: $fg_color; } a { transition-property: color, border-color; transition-duration: .15s; transition-timing-function: ease-in-out; } body, html { font-family: "Symbols Nerd Font", $main_font, monospace; font-size: $base_font_size * $main_font_mult; margin: 0; padding: 0; background-color: $bg_color; color: $fg_color; } body { min-height: 100vh; } a { color: $fg_color; text-decoration: none; border-bottom: 2px solid $fg_color; &:hover, &:focus { border-color: $accent_color !important; } } @mixin limitWidth { max-width: $content_width; margin-left: auto; margin-right: auto; } #content { @include limitWidth; padding: 15px; } footer { color: $dim_fg_color; a { color: $dim_fg_color; } hr { margin-top: (2 * $content_spacing); } .footerColumns { font-size: .9 * $base_font_size * $main_font_mult; display: flex; flex-direction: row; flex-wrap: wrap; ul { margin: ($content_spacing / 2); list-style-type: none; padding: 0; li > strong { font-size: 1rem * $main_font_mult; } } } } #links { padding: 5px 0; } article, .articlePreview { img { margin: auto; display: block; max-width: 100%; } pre, code { overflow: auto; } pre { padding: 20px; border: 1px solid $stroke_color; border-radius: 3px; } } code { font-family: "Symbols Nerd Font", $mono_font, monospace; font-size: $base_font_size * .8 * $mono_font_mult; border: 1px solid $stroke_color; border-radius: 3px } code, table { padding: 2px; } pre code { border: none; border-radius: none; padding: 0 } table { border-collapse: collapse; overflow-x: auto; display: block; td, th { padding: 6px; border: 1px solid $stroke_color; } th { background-color: lighten($bg_color, 5%); } tr:nth-child(even) { background-color: lighten($bg_color, 5%); } } .date, .date a { color: $dim_fg_color; border-color: $dim_fg_color; font-size: .9em; } #pageNavigation, .nerdlink, nav { a { border-bottom: none; &:hover { border-bottom: none; } } } #pageNavigation { text-align: right; a { color: $accent_color; } &.nav-circles { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-end; align-items: center; a, span { margin: 5px; text-align: center; display: inline-block; width: 40px; height: 40px; line-height: 40px; padding: auto; border-radius: 100%; background-color: $highlight_bg_color; color: $fg_color; } span { background-color: $accent_color; } a:hover { background-color: $accent_color; } } } h1, h2, h3, h4, h5, h6 { font-family: "Symbols Nerd Font", $title_font; a { color: $accent_color; {{ if not (.Site.Params.underlineTitleLinks | default false) }} not (.Site.Params.underlineTitleLinks | default false) }} border-bottom: none; {{ end }} } } h1 {font-size: 2.0 * $base_font_size * $title_font_mult;} h2 {font-size: 1.5 * $base_font_size * $title_font_mult;} h3 {font-size: 1.3 * $base_font_size * $title_font_mult;} h4 {font-size: 1.0 * $base_font_size * $title_font_mult;} h5 {font-size: 0.8 * $base_font_size * $title_font_mult;} h6 {font-size: 0.7 * $base_font_size * $title_font_mult;} .nerd { font-family: "Symbols Nerd Font", $main_font; font-size: 1.2 * $base_font_size; margin: 5px; display: inline-block; } .nerdlink { transition: all .15s ease-in-out; @extend .nerd; color: $fg_color; border-bottom: none; position: relative; width: 1em; height: 1.2em; display: inline-flex; align-items: center; justify-content: center; .pseudofont { transition: all .15s ease-in-out; fill: $fg_color; display: inline; position: relative; top: 1px; } span { position: absolute; top: 1.5em; left: 50%; transform: translateX(-50%); padding: 2px; border: 1px solid $stroke_color; border-radius: 3px; color: $fg_color; display: none; background-color: $bg_color; z-index: 900; text-align: center; } &:hover { .pseudofont { fill: $accent_color; } color: $accent_color; text-decoration: none; border-bottom: none; span { display: block; } } } .card { display: block; padding-bottom: 25px; &.discrete { background-color: $highlight_bg_color; border-radius: $border_radius; padding: 20px; padding-top: 1px; } &.single { {{ if (.Site.Params.bigArticleTitle | default false) }} h1 { font-size: 2.2em * $base_font_size * $title_font_mult}; } {{ end }} } } .postlist { display: grid; grid-gap: 25px; margin-bottom: $content_spacing; grid-template-columns: 1fr; &.gridView { grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); .card { &.discrete { } } } } // only hide hr in cards if they are in the article list // cards in list are divs, cards as in full-blown articles use the article tag .postlistitem.card.discrete { hr { display: none; } } .postlistitem.card div { img { height: 250px; min-width: 100%; object-fit: {{ if .Site.Params.FitImageInArticlePreview }} contain {{ else }} cover {{ end }}; } } ul { li { margin: 5px 0; } } ul.list { .date { display: inline-block; min-width: 100px; } > li > div { display: grid; grid-template-columns: 100px auto; } } #commento { margin-top: 25px; color: $fg_color; font-family: "Symbols Nerd Font", $main_font, monospace; textarea, #commento-markdown-help-root { background: rgba(255, 255, 255, .05); color: $fg_color; border-radius: 0; border: none; td, td>*, td>*>* { color: $fg_color; pre { font-family: "Symbols Nerd Font", $mono_font, monospace; color: $dim_fg_color; } } } #commento-submit-button-root { background: $accent_color; color: $fg_color; } .commento-name { color: $dim_fg_color; } .commento-sort-policy-buttons { a { border-bottom: none; } .commento-sort-policy-button-selected { color: $accent_color; } } .commento-card { border-top: none; margin: 25px 0; } .commento-body { >*, *>*, >*>*>*, >*>*>*>*, >*>*>*>*>* { color: $fg_color; font-family: "Symbols Nerd Font", $main_font, monospace; } } } .search { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: center; margin: 12px 0; .nerdlink { display: inline-block; cursor: pointer; } #searchbar { @extend a; width: 100%; display: inline-block; background-color: transparent; border-top: none; border-left: none; border-right: none; border-radius: 0; padding: 6px 0; font-family: "Symbols Nerd Font", $main_font; font-size: 1.3em; outline: none; } } .titleAndSearchContainer { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; #titleContainer { flex-grow: 99; } .search { flex-grow: 1; &, #searchbar {font-size: 1em;} } } .featuredCardLink { border: none; padding: 0; .featuredCard { @extend .card; background-size: cover; background-position: center; background-repeat: no-repeat; position: relative; height: 250px; .contentArea { position: absolute; bottom: 0; padding: 15px; &, h2, .date {color: white;} h2 { margin: 0; } .date { margin: 0; } } &.discrete { border-radius: $border_radius; padding: 0; } } } @mixin buttonLikeLink { display: inline-block; border-radius: $border_radius; background-color: $highlight_bg_color; padding: ($content_spacing / 2); margin: ($content_spacing / 6) 0; border-bottom: none; &:hover, &:focus { background-color: $accent_color; } } .loadMoreButton { text-align: center; font-size: 1.2em; font-weight: bold; &.buttonLike { a { @include buttonLikeLink; } } } .relatedArticlesContainer { margin: $content_spacing 0; #relatedArticles .postlistitem { @extend .featuredCard; } } #titleContainer { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; align-self: flex-start; h1 { font-weight: normal; font-size: 1.6 * $base_font_size * $title_font_mult; margin: 0; } img { margin-right: ($content_spacing / 2); margin-top: 7px; align-self: flex-start; width: 50px; max-height: 50px; border-radius: 5px; } } nav, #links { ul { list-style-type: none; display: flex; flex-direction: row; flex-wrap: wrap; padding: 0; margin: 0; } } header { @include limitWidth; padding: 15px; margin-bottom: $content_spacing; .titleAndHamburger { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; justify-content: space-between; } nav { font-size: .9em; ul { li { border-right: 1px solid $accent_color; &:last-child { border-right: none; } a { padding: 2px 20px; color: $accent_color; &:hover { text-decoration: underline; } } } } } } .articleTagsContainer { margin: $content_spacing 0; } a.discreteTag { @include buttonLikeLink; } .shareBtn { {{ if eq (site.Params.navtype | default "standard") "circles" }} @include buttonLikeLink; {{ end }} font-size: 1.2em; cursor: pointer; } input { {{ if or (site.Params.discreteCards | default false) (eq (site.Params.navtype | default "standard") "circles") }} @include buttonLikeLink; &:hover, &:focus, &:active { background-color: $highlight_bg_color; } {{ end }} font-family: "Symbols Nerd Font", $main_font; background-color: $highlight_bg_color; padding: 12px; color: $fg_color; border: 2px solid transparent; transition: .15s border ease-in-out; &:focus, &:active { border: 2px solid $accent_color; outline: none; } } #fediInstanceDialog { display: none; position: fixed; top: 0; bottom: 0; left: 0; right: 0; .dialog { position: absolute; display: flex; flex-direction: column; top: 24px; left: 50%; transform: translateX(-50%); z-index: 9999; background-color: $bg_color; width: 450px; max-width: 100%; padding: 24px; {{ if site.Params.discreteCards }} border-radius: $border_radius; {{ end }} h1, h2, h3, h4 { margin: 0; } h2 { margin-bottom: 24px; } input { display: block; } .buttons { margin: 12px 0; display: flex; flex-direction: row; justify-content: end; > * { margin-left: 24px; } } } .bg { z-index: 99; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background-color: rgba(0, 0, 0, .4); cursor: pointer; } &.open { display: block; } } {{ if .Site.Params.mobileHamburgerNav | default false }} header { #hamburger-menu { @extend .nerdlink; display: none !important; } #main-nav-toggler { display: none; } } @media only screen and (max-width: 520px) { header { .titleAndSearchContainer { z-index: 9999999 !important; } #hamburger-menu { display: block !important; font-size: 1.2em; cursor: pointer; text-align: center; margin: 0; padding: ($content_spacing / 4); align-self: center; } nav { ul#main-nav { &, li, li a {text-shadow: none !important;} display: none; position: absolute; z-index: 99999; right: 6px; padding: 12px; width: 120px; {{ if eq .Site.Params.navtype "circles" }} border-radius: $border_radius; {{ end }} border: 2px solid $accent_color; background-color: $highlight_bg_color; flex-direction: column; li { border-right: none !important; display: block; text-align: center; a { display: block; width: 100%; padding: 0; } } } #main-nav-toggler:checked ~ #main-nav { display: flex; } } } } {{ end }} {{ if (and (.Site.Params.enableJumbotron | default false) .Site.Data.jumbotron) }} {{ $jumbo_fullscreen := (or (.Site.Data.jumbotron.fullscreen | default false) (.Site.Data.jumbotron.backgroundVideo) ) }} header { .jumbotron { display: none; } max-width: 100%; > * { @include limitWidth; } } header.jumbotronContainer { {{ if (.Site.Data.jumbotron.whiteText | default false) }} &, *, > * { color: white !important; } #main-nav a, .nerdlink:hover { color: $accent_color !important; } .nerdlink span { color: $fg_color !important; text-shadow: none; } #searchbar { border-color: white !important; } .arrow { border-color: white !important; svg , svg * { fill: white !important; } &:hover, &:focus, &:active { background-color: rgba(0, 0, 0, .7); svg, svg * { fill: white !important; } } } {{ end }} {{ if (.Site.Data.jumbotron.textShadow | default false) }} &, * { text-shadow: 0 0 5px transparentize($fg_color, .3); } {{ end }} > *:first-child { padding-top: 15px; } padding-bottom: 0; padding-top: 0; .jumbotron { display: flex; } {{ if and .Site.Data.jumbotron.background (not .Site.Data.jumbotron.backgroundVideo) }} background: linear-gradient( transparentize($bg_color, 0.2), transparentize($bg_color, 0.2) ), url({{ .Site.Data.jumbotron.background }}); background-size: cover; background-position: center; background-repeat: no-repeat; {{ else if .Site.Data.jumbotron.backgroundVideo }} background: transparent; > * { position: relative; z-index: 9999; } overflow: hidden; .video_container { overflow: hidden; position: absolute; min-height: 100%; min-width: 100%; top: 0; bottom: 0; left: 0; right: 0; z-index: 0; background-color: black; .jumbotron_video { opacity: {{ .Site.Data.jumbotron.videoOpacity | default 1.0 }}; position: absolute; z-index: 0; left: 50%; top: 50%; transform: translate(-50%, -50%); overflow: hidden; min-height: 100%; min-width: 100%; height: 100vh; } } {{ else }} background-color: rgba(0, 0, 0, .3); {{ end }} {{ if $jumbo_fullscreen }} height: 100vh; {{ if (.Site.Data.jumbotron.downArrow | default false) }} margin-bottom: 100px; .arrow { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); cursor: pointer; &, svg { height: 64px; width: 64px; } opacity: .7; border-radius: 100%; border: 2px solid $fg_color; padding: 3px; // display: flex; flex-direction: row; justify-content: center; background-color: transparent; transition: background-color .15s ease-in-out; svg { margin-top: 5px; &, * { fill: $fg_color; transition: fill .15s ease-in-out; } @keyframes bounce { 0% { transform: translateY(3px); } 100% { transform: translateY(-3px); } } animation: bounce 2s infinite ease-in-out alternate both; } &:hover, &:focus, &:active { background-color: $fg_color; svg, svg * { fill: $bg_color; } } } {{ end }} {{ end }} } .jumbotron { width: 100%; {{ if $jumbo_fullscreen }} height: 80vh; {{ else }} min-height: 40vh; {{ end }} flex-wrap: no-wrap; text-align: center; justify-content: center; align-items: center; align-content: center; {{ $jumbotronImagePosition := (.Site.Data.jumbotron.imagePosition | default "left") }} {{ if (eq $jumbotronImagePosition "left") }} flex-direction: row; {{ else if (eq $jumbotronImagePosition "right") }} flex-direction: row-reverse; {{ else if (eq $jumbotronImagePosition "top") }} flex-direction: column; {{ else if (eq $jumbotronImagePosition "bottom") }} flex-direction: column-reverse; {{ end }} .main_box { display: flex; flex-direction: column; text-align: center; justify-content: center; align-items: center; flex-basis: 55%; flex-grow: 1; } img { flex-basis: 45%; flex-grow: 1; max-width: 100vw; min-width: 200px; } h1 { font-weight: 300; &.huge { font-size: 4 * $base_font_size * $title_font_mult; } } h1, h2 { margin: 12px; } ul { list-style: none; padding: 0; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; li { margin: 3px; a { &.huge { font-size: 1.5em; } {{ if eq .Site.Params.navtype "circles" }} @include buttonLikeLink; background-color: transparent; border: 2px solid $accent_color; {{ end }} } } } } @media only screen and (max-width: 520px) { .jumbotron { flex-wrap: wrap; h1.huge { font-size: 3 * $base_font_size * $title_font_mult !important; } h1, h2 { margin: 6px; } } } @media only screen and (max-height: 800px) { .jumbotron { height: auto; img { max-height: 120px; } } } {{ end }}