Spaces:
Sleeping
Sleeping
Upload 165 files
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- .gitattributes +1 -0
- .github/FUNDING.yml +15 -0
- .github/workflows/hugo.yml +78 -0
- .github/workflows/hugo_exampleSite.yml +80 -0
- .gitignore +2 -0
- .gitlab-ci.yml +45 -0
- LICENSE +21 -0
- archetypes/default.md +5 -0
- assets/_budding.svg +31 -0
- assets/_evergreen.svg +24 -0
- assets/_grain.svg +68 -0
- assets/_seedling.svg +24 -0
- assets/base-ui.json +0 -0
- assets/css/component/a11y.css +488 -0
- assets/css/component/background.css +50 -0
- assets/css/component/breadcrumb.css +144 -0
- assets/css/component/card.css +181 -0
- assets/css/component/carousel.css +155 -0
- assets/css/component/clock.css +49 -0
- assets/css/component/column.css +91 -0
- assets/css/component/contentinfo.css +137 -0
- assets/css/component/fediverse.css +147 -0
- assets/css/component/garden.css +20 -0
- assets/css/component/hero.css +116 -0
- assets/css/component/keyframe.css +85 -0
- assets/css/component/link.css +155 -0
- assets/css/component/logotype.css +107 -0
- assets/css/component/mainfooter.css +11 -0
- assets/css/component/marginpar.css +79 -0
- assets/css/component/menu.css +553 -0
- assets/css/component/search.css +210 -0
- assets/css/component/share.css +148 -0
- assets/css/component/skipper.css +54 -0
- assets/css/component/slide.css +179 -0
- assets/css/custom.css +31 -0
- assets/css/layout/_default/baseof.css +332 -0
- assets/css/layout/_default/home.css +116 -0
- assets/css/layout/_default/list.css +148 -0
- assets/css/layout/_default/single.css +243 -0
- assets/css/media/print.css +243 -0
- assets/css/optimize.css +151 -0
- assets/css/support.css +13 -0
- assets/css/typeface-local/Cormorant.css +47 -0
- assets/css/typeface-local/Crimson.css +43 -0
- assets/css/typeface-local/EBGaramond.css +47 -0
- assets/css/typeface-local/Inconsolata.css +25 -0
- assets/css/typeface-local/Inter.css +51 -0
- assets/css/typeface-local/LexicaUltralegible.css +51 -0
- assets/css/typeface-local/Montserrat.css +51 -0
- assets/css/typeface-local/OpenDyslexic.css +63 -0
.gitattributes
CHANGED
|
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
| 33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
| 34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
| 35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
| 36 |
+
images/screenshot.png filter=lfs diff=lfs merge=lfs -text
|
.github/FUNDING.yml
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# These are supported funding model platforms
|
| 2 |
+
|
| 3 |
+
github: [foxihd] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
| 4 |
+
patreon: # Replace with a single Patreon username
|
| 5 |
+
open_collective: # Replace with a single Open Collective username
|
| 6 |
+
ko_fi: # Replace with a single Ko-fi username
|
| 7 |
+
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
| 8 |
+
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
| 9 |
+
liberapay: # Replace with a single Liberapay username
|
| 10 |
+
issuehunt: # Replace with a single IssueHunt username
|
| 11 |
+
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
|
| 12 |
+
polar: # Replace with a single Polar username
|
| 13 |
+
buy_me_a_coffee: # Replace with a single Buy Me a Coffee username
|
| 14 |
+
thanks_dev: # Replace with a single thanks.dev username
|
| 15 |
+
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
.github/workflows/hugo.yml
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Workflow for building and deploying a Hugo site to GitHub Pages
|
| 2 |
+
name: Deploy Hugo Site to Pages
|
| 3 |
+
|
| 4 |
+
on:
|
| 5 |
+
# Runs on pushes targeting the default branch
|
| 6 |
+
push:
|
| 7 |
+
branches:
|
| 8 |
+
- main
|
| 9 |
+
|
| 10 |
+
# Allows you to run this workflow manually from the Actions tab
|
| 11 |
+
workflow_dispatch:
|
| 12 |
+
|
| 13 |
+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
| 14 |
+
permissions:
|
| 15 |
+
contents: read
|
| 16 |
+
pages: write
|
| 17 |
+
id-token: write
|
| 18 |
+
|
| 19 |
+
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
|
| 20 |
+
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
|
| 21 |
+
concurrency:
|
| 22 |
+
group: "pages"
|
| 23 |
+
cancel-in-progress: false
|
| 24 |
+
|
| 25 |
+
# Default to bash
|
| 26 |
+
defaults:
|
| 27 |
+
run:
|
| 28 |
+
shell: bash
|
| 29 |
+
|
| 30 |
+
jobs:
|
| 31 |
+
# Build job
|
| 32 |
+
build:
|
| 33 |
+
runs-on: ubuntu-latest
|
| 34 |
+
env:
|
| 35 |
+
HUGO_VERSION: 0.148.1
|
| 36 |
+
steps:
|
| 37 |
+
- name: Install Hugo CLI
|
| 38 |
+
run: |
|
| 39 |
+
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \
|
| 40 |
+
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb
|
| 41 |
+
- name: Checkout
|
| 42 |
+
uses: actions/checkout@v4.2.2
|
| 43 |
+
with:
|
| 44 |
+
submodules: recursive
|
| 45 |
+
fetch-depth: 0
|
| 46 |
+
- name: Setup Pages
|
| 47 |
+
id: pages
|
| 48 |
+
uses: actions/configure-pages@v5
|
| 49 |
+
- name: Install Node.js dependencies
|
| 50 |
+
run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true"
|
| 51 |
+
- name: Build with Hugo
|
| 52 |
+
env:
|
| 53 |
+
# For maximum backward compatibility with Hugo modules
|
| 54 |
+
HUGO_ENVIRONMENT: production
|
| 55 |
+
HUGO_ENV: production
|
| 56 |
+
run: |
|
| 57 |
+
hugo \
|
| 58 |
+
--gc \
|
| 59 |
+
--minify \
|
| 60 |
+
--baseURL "${{ steps.pages.outputs.base_url }}/"
|
| 61 |
+
- name: Index pagefind
|
| 62 |
+
run: npx pagefind --site "./public"
|
| 63 |
+
- name: Upload artifact
|
| 64 |
+
uses: actions/upload-pages-artifact@v3.0.1
|
| 65 |
+
with:
|
| 66 |
+
path: ./public
|
| 67 |
+
|
| 68 |
+
# Deployment job
|
| 69 |
+
deploy:
|
| 70 |
+
environment:
|
| 71 |
+
name: github-pages
|
| 72 |
+
url: ${{ steps.deployment.outputs.page_url }}
|
| 73 |
+
runs-on: ubuntu-latest
|
| 74 |
+
needs: build
|
| 75 |
+
steps:
|
| 76 |
+
- name: Deploy to GitHub Pages
|
| 77 |
+
id: deployment
|
| 78 |
+
uses: actions/deploy-pages@v4.0.5
|
.github/workflows/hugo_exampleSite.yml
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Sample workflow for building and deploying a Hugo site to GitHub Pages
|
| 2 |
+
name: Deploy Hugo exampleSite to Pages
|
| 3 |
+
|
| 4 |
+
on:
|
| 5 |
+
# Runs on pushes targeting the default branch
|
| 6 |
+
push:
|
| 7 |
+
branches:
|
| 8 |
+
- main
|
| 9 |
+
|
| 10 |
+
# Allows you to run this workflow manually from the Actions tab
|
| 11 |
+
workflow_dispatch:
|
| 12 |
+
|
| 13 |
+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
| 14 |
+
permissions:
|
| 15 |
+
contents: read
|
| 16 |
+
pages: write
|
| 17 |
+
id-token: write
|
| 18 |
+
|
| 19 |
+
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
|
| 20 |
+
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
|
| 21 |
+
concurrency:
|
| 22 |
+
group: "pages"
|
| 23 |
+
cancel-in-progress: false
|
| 24 |
+
|
| 25 |
+
# Default to bash
|
| 26 |
+
defaults:
|
| 27 |
+
run:
|
| 28 |
+
shell: bash
|
| 29 |
+
|
| 30 |
+
jobs:
|
| 31 |
+
# Build job
|
| 32 |
+
build:
|
| 33 |
+
runs-on: ubuntu-latest
|
| 34 |
+
env:
|
| 35 |
+
HUGO_VERSION: 0.148.1
|
| 36 |
+
steps:
|
| 37 |
+
- name: Install Hugo CLI
|
| 38 |
+
run: |
|
| 39 |
+
wget -O ${{ runner.temp }}/hugo.deb https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb \
|
| 40 |
+
&& sudo dpkg -i ${{ runner.temp }}/hugo.deb
|
| 41 |
+
- name: Checkout
|
| 42 |
+
uses: actions/checkout@v4.2.2
|
| 43 |
+
with:
|
| 44 |
+
submodules: recursive
|
| 45 |
+
fetch-depth: 0
|
| 46 |
+
- name: Setup Pages
|
| 47 |
+
id: pages
|
| 48 |
+
uses: actions/configure-pages@v5
|
| 49 |
+
- name: Install Node.js dependencies
|
| 50 |
+
run: "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true"
|
| 51 |
+
- name: Build with Hugo
|
| 52 |
+
env:
|
| 53 |
+
# For maximum backward compatibility with Hugo modules
|
| 54 |
+
HUGO_ENVIRONMENT: production
|
| 55 |
+
HUGO_ENV: production
|
| 56 |
+
run: |
|
| 57 |
+
hugo \
|
| 58 |
+
--gc \
|
| 59 |
+
--minify \
|
| 60 |
+
--themesDir ../.. \
|
| 61 |
+
--source exampleSite \
|
| 62 |
+
--baseURL "${{ steps.pages.outputs.base_url }}/"
|
| 63 |
+
- name: Index pagefind
|
| 64 |
+
run: npx pagefind --site "./exampleSite/public"
|
| 65 |
+
- name: Upload artifact
|
| 66 |
+
uses: actions/upload-pages-artifact@v3.0.1
|
| 67 |
+
with:
|
| 68 |
+
path: ./exampleSite/public
|
| 69 |
+
|
| 70 |
+
# Deployment job
|
| 71 |
+
deploy:
|
| 72 |
+
environment:
|
| 73 |
+
name: github-pages
|
| 74 |
+
url: ${{ steps.deployment.outputs.page_url }}
|
| 75 |
+
runs-on: ubuntu-latest
|
| 76 |
+
needs: build
|
| 77 |
+
steps:
|
| 78 |
+
- name: Deploy to GitHub Pages
|
| 79 |
+
id: deployment
|
| 80 |
+
uses: actions/deploy-pages@v4.0.5
|
.gitignore
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.hugo_build.lock
|
| 2 |
+
public
|
.gitlab-ci.yml
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Use this template if you want to build your site with Gitlab pages.
|
| 2 |
+
|
| 3 |
+
image:
|
| 4 |
+
name: golang:1.23.4-bookworm
|
| 5 |
+
|
| 6 |
+
variables:
|
| 7 |
+
GIT_DEPTH: 0
|
| 8 |
+
GIT_STRATEGY: clone
|
| 9 |
+
GIT_SUBMODULE_STRATEGY: recursive
|
| 10 |
+
HUGO_VERSION: 0.148.1
|
| 11 |
+
NODE_VERSION: 23.x
|
| 12 |
+
|
| 13 |
+
pages:
|
| 14 |
+
script:
|
| 15 |
+
# Install brotli
|
| 16 |
+
- apt-get update
|
| 17 |
+
- apt-get install -y brotli
|
| 18 |
+
# Install Dart Sass
|
| 19 |
+
# hugo-brewm don't use Dart Sass at the moment.
|
| 20 |
+
# - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz
|
| 21 |
+
# - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz
|
| 22 |
+
# - cp -r dart-sass/ /usr/local/bin
|
| 23 |
+
# - rm -rf dart-sass*
|
| 24 |
+
# - export PATH=/usr/local/bin/dart-sass:$PATH
|
| 25 |
+
# Install Hugo
|
| 26 |
+
- curl -LJO https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb
|
| 27 |
+
- apt-get install -y ./hugo_extended_${HUGO_VERSION}_linux-amd64.deb
|
| 28 |
+
- rm hugo_extended_${HUGO_VERSION}_linux-amd64.deb
|
| 29 |
+
# Install Node.js
|
| 30 |
+
- curl -fsSL https://deb.nodesource.com/setup_${NODE_VERSION} | bash -
|
| 31 |
+
- apt-get install -y nodejs
|
| 32 |
+
# Install Node.js dependencies
|
| 33 |
+
- "[[ -f package-lock.json || -f npm-shrinkwrap.json ]] && npm ci || true"
|
| 34 |
+
# Build
|
| 35 |
+
- hugo --gc --minify --baseURL ${CI_PAGES_URL}
|
| 36 |
+
# Index with PageFind
|
| 37 |
+
- npx pagefind --site "public"
|
| 38 |
+
# Compress
|
| 39 |
+
- find public -type f -regex '.*\.\(css\|html\|js\|txt\|xml\)$' -exec gzip -f -k {} \;
|
| 40 |
+
- find public -type f -regex '.*\.\(css\|html\|js\|txt\|xml\)$' -exec brotli -f -k {} \;
|
| 41 |
+
artifacts:
|
| 42 |
+
paths:
|
| 43 |
+
- public
|
| 44 |
+
rules:
|
| 45 |
+
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2024 foxihd @ github.com
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 7 |
+
in the Software without restriction, including without limitation the rights
|
| 8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 9 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 10 |
+
furnished to do so, subject to the following conditions:
|
| 11 |
+
|
| 12 |
+
The above copyright notice and this permission notice shall be included in all
|
| 13 |
+
copies or substantial portions of the Software.
|
| 14 |
+
|
| 15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 21 |
+
SOFTWARE.
|
archetypes/default.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
+++
|
| 2 |
+
title = '{{ replace .File.ContentBaseName "-" " " | title }}'
|
| 3 |
+
date = {{ .Date }}
|
| 4 |
+
draft = true
|
| 5 |
+
+++
|
assets/_budding.svg
ADDED
|
|
assets/_evergreen.svg
ADDED
|
|
assets/_grain.svg
ADDED
|
|
assets/_seedling.svg
ADDED
|
|
assets/base-ui.json
ADDED
|
The diff for this file is too large to render.
See raw diff
|
|
|
assets/css/component/a11y.css
ADDED
|
@@ -0,0 +1,488 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* this style is used inline in accessibility.js */
|
| 2 |
+
|
| 3 |
+
/* focus mode */
|
| 4 |
+
|
| 5 |
+
body.focus > header,
|
| 6 |
+
body.focus > main > header,
|
| 7 |
+
body.focus #contentinfo,
|
| 8 |
+
body.focus #discussion-starter,
|
| 9 |
+
body.focus #main-footer,
|
| 10 |
+
body.focus #background-footer {
|
| 11 |
+
display:none;
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
body.focus > footer {
|
| 15 |
+
position: unset;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
body.focus #dwclock {
|
| 19 |
+
opacity: 0.1;
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
/* a11y button */
|
| 23 |
+
#has-a11y {
|
| 24 |
+
margin-right: auto;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
#has-a11y-summary {
|
| 28 |
+
padding: .6ex 1ex;
|
| 29 |
+
font-weight: 550;
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
#has-a11y-summary::before{
|
| 33 |
+
font-family: 'base-ui';
|
| 34 |
+
font-weight: 400;
|
| 35 |
+
content: '\e900';
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
#has-a11y[open] #a11y {
|
| 39 |
+
--anm: expand 99ms forwards;
|
| 40 |
+
--tso: bottom;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
/* a11y container */
|
| 44 |
+
#a11y {
|
| 45 |
+
display: flex;
|
| 46 |
+
position: fixed;
|
| 47 |
+
bottom: calc(1rem + var(--vfoot));
|
| 48 |
+
flex-direction: column;
|
| 49 |
+
margin: 0;
|
| 50 |
+
border: var(--border);
|
| 51 |
+
border-radius: 1ex;
|
| 52 |
+
background: var(--bg);
|
| 53 |
+
padding: 1rem;
|
| 54 |
+
max-height: calc(100vh - var(--vhead) - var(--vfoot) - 2rem );
|
| 55 |
+
overflow-y: auto;
|
| 56 |
+
gap: var(--medskip);
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
+
/* order */
|
| 60 |
+
#optimizeSR {
|
| 61 |
+
order: 6;
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
#setFontSize {
|
| 65 |
+
order: 3;
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
#setBaselineStretch {
|
| 69 |
+
display: none;
|
| 70 |
+
order: 4;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
main#page + footer #setBaselineStretch,
|
| 74 |
+
main#page + footer #useBionRead {
|
| 75 |
+
display: block;
|
| 76 |
+
}
|
| 77 |
+
|
| 78 |
+
#setOpenDyslexic {
|
| 79 |
+
order: 5;
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
+
/* hide input checkbox */
|
| 83 |
+
#a11y input[type=checkbox],
|
| 84 |
+
#a11y input[type=radio],
|
| 85 |
+
#bionReadSwitch,
|
| 86 |
+
#defocusAuxElement {
|
| 87 |
+
position: absolute;
|
| 88 |
+
top: -100vh;
|
| 89 |
+
}
|
| 90 |
+
|
| 91 |
+
#a11y select,
|
| 92 |
+
#a11y input[type=range],
|
| 93 |
+
#setColorScheme label,
|
| 94 |
+
#setOpenDyslexic,
|
| 95 |
+
button {
|
| 96 |
+
cursor: pointer;
|
| 97 |
+
}
|
| 98 |
+
|
| 99 |
+
/* range */
|
| 100 |
+
label.range {
|
| 101 |
+
display: flex;
|
| 102 |
+
flex-direction: row-reverse;
|
| 103 |
+
}
|
| 104 |
+
|
| 105 |
+
label.range > input {
|
| 106 |
+
flex: 1;
|
| 107 |
+
accent-color: var(--ac);
|
| 108 |
+
}
|
| 109 |
+
|
| 110 |
+
label.range > output {
|
| 111 |
+
width: 4rem;
|
| 112 |
+
text-align: center;
|
| 113 |
+
color: var(--ac);
|
| 114 |
+
font: 700 var(--large) var(--sf), sans-serif;
|
| 115 |
+
}
|
| 116 |
+
|
| 117 |
+
#setColorScheme {
|
| 118 |
+
display: flex;
|
| 119 |
+
flex-direction: row;
|
| 120 |
+
align-items: center;
|
| 121 |
+
order: 1;
|
| 122 |
+
margin-bottom: 1ex;
|
| 123 |
+
}
|
| 124 |
+
|
| 125 |
+
/* lightswitch */
|
| 126 |
+
#lightSwitch + label {
|
| 127 |
+
display: flex;
|
| 128 |
+
flex-direction: column-reverse;
|
| 129 |
+
align-items: center;
|
| 130 |
+
border-radius: 0.5ex;
|
| 131 |
+
padding: 1ex;
|
| 132 |
+
width: 4rem;
|
| 133 |
+
gap: 1ex;
|
| 134 |
+
}
|
| 135 |
+
|
| 136 |
+
#lightSwitch + label:hover,
|
| 137 |
+
#lightSwitch:focus + label,
|
| 138 |
+
#setContrast input:hover + label {
|
| 139 |
+
background: var(--g18s);
|
| 140 |
+
color: var(--ac);
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
/* credit to @mrozilla on codepen https://codepen.io/mrozilla/pen/OJJNjRb */
|
| 144 |
+
#lightSwitch + label::before {
|
| 145 |
+
--ray-size: calc(var(--size) * -0.4);
|
| 146 |
+
--offset-orthogonal: calc(var(--size) * 0.65);
|
| 147 |
+
--offset-diagonal: calc(var(--size) * 0.45);
|
| 148 |
+
--tsf: scale(0.75);
|
| 149 |
+
--size: 1.414em;
|
| 150 |
+
display: block;
|
| 151 |
+
outline: none;
|
| 152 |
+
border-radius: 999px;
|
| 153 |
+
box-shadow: inset 0 0 0 var(--size),
|
| 154 |
+
calc(var(--offset-orthogonal) * -1) 0 0 var(--ray-size),
|
| 155 |
+
var(--offset-orthogonal) 0 0 var(--ray-size),
|
| 156 |
+
0 calc(var(--offset-orthogonal) * -1) 0 var(--ray-size),
|
| 157 |
+
0 var(--offset-orthogonal) 0 var(--ray-size),
|
| 158 |
+
calc(var(--offset-diagonal) * -1) calc(var(--offset-diagonal) * -1) 0 var(--ray-size),
|
| 159 |
+
var(--offset-diagonal) var(--offset-diagonal) 0 var(--ray-size),
|
| 160 |
+
calc(var(--offset-diagonal) * -1) var(--offset-diagonal) 0 var(--ray-size),
|
| 161 |
+
var(--offset-diagonal) calc(var(--offset-diagonal) * -1) 0 var(--ray-size);
|
| 162 |
+
width: var(--size);
|
| 163 |
+
height: var(--size);
|
| 164 |
+
color: #ffaa00;
|
| 165 |
+
content: '';
|
| 166 |
+
}
|
| 167 |
+
|
| 168 |
+
#lightSwitch:checked + label::before {
|
| 169 |
+
--tsf: scale(1);
|
| 170 |
+
box-shadow: inset calc(var(--size) * 0.33) calc(var(--size) * -0.25) 0;
|
| 171 |
+
}
|
| 172 |
+
|
| 173 |
+
#lightSwitch + label::after {
|
| 174 |
+
color: var(--fg);
|
| 175 |
+
font-size: inherit;
|
| 176 |
+
font-weight: 550;
|
| 177 |
+
}
|
| 178 |
+
|
| 179 |
+
/* contrast */
|
| 180 |
+
#setContrast {
|
| 181 |
+
display: flex;
|
| 182 |
+
position: relative;
|
| 183 |
+
justify-content: center;
|
| 184 |
+
margin: 0 0 0 1ex;
|
| 185 |
+
border: none;
|
| 186 |
+
border-left: var(--bound);
|
| 187 |
+
padding: 2em 0 0 1ex;
|
| 188 |
+
}
|
| 189 |
+
|
| 190 |
+
#setContrast legend {
|
| 191 |
+
position: absolute;
|
| 192 |
+
top: 0.2em;
|
| 193 |
+
}
|
| 194 |
+
|
| 195 |
+
#setContrast > div {
|
| 196 |
+
display: flex;
|
| 197 |
+
padding: 2pt;
|
| 198 |
+
gap: 2pt;
|
| 199 |
+
}
|
| 200 |
+
|
| 201 |
+
#setContrast label {
|
| 202 |
+
--tst: 99ms;
|
| 203 |
+
border-radius: 1rem;
|
| 204 |
+
padding: 1pt 5pt;
|
| 205 |
+
font-size: 0.84em !important;
|
| 206 |
+
}
|
| 207 |
+
|
| 208 |
+
#setContrast input:checked + label {
|
| 209 |
+
background: var(--fg);
|
| 210 |
+
color: var(--bg);
|
| 211 |
+
box-shadow: var(--box-shadow);
|
| 212 |
+
}
|
| 213 |
+
|
| 214 |
+
#setContrast input + label::before {
|
| 215 |
+
font-family:'base-ui';
|
| 216 |
+
content: '\e904\a0';
|
| 217 |
+
}
|
| 218 |
+
|
| 219 |
+
#setContrast input:checked + label::before {
|
| 220 |
+
content: '\e903\a0';
|
| 221 |
+
}
|
| 222 |
+
|
| 223 |
+
/* color palette */
|
| 224 |
+
#setColorPalette {
|
| 225 |
+
align-items: baseline;
|
| 226 |
+
order: 2;
|
| 227 |
+
}
|
| 228 |
+
|
| 229 |
+
#setColorPalette > *,
|
| 230 |
+
#setOpenDyslexic > * {
|
| 231 |
+
padding: 1ex 0;
|
| 232 |
+
}
|
| 233 |
+
|
| 234 |
+
#colorPalette {
|
| 235 |
+
flex: 1;
|
| 236 |
+
margin-left: 0.5ex;
|
| 237 |
+
border: unset;
|
| 238 |
+
border-radius: 1rem;
|
| 239 |
+
background: var(--bg);
|
| 240 |
+
padding: 0.5ex 1.25ex;
|
| 241 |
+
color: var(--fg);
|
| 242 |
+
font: inherit !important;
|
| 243 |
+
}
|
| 244 |
+
|
| 245 |
+
/* font */
|
| 246 |
+
#baselineStretchState::after {
|
| 247 |
+
font-size: 0.8em;
|
| 248 |
+
content: '×';
|
| 249 |
+
}
|
| 250 |
+
|
| 251 |
+
#fontSizeState::after {
|
| 252 |
+
font-size: 0.8em;
|
| 253 |
+
content: 'pt';
|
| 254 |
+
}
|
| 255 |
+
|
| 256 |
+
input.toggle + label {
|
| 257 |
+
display: flex;
|
| 258 |
+
position: relative;
|
| 259 |
+
padding-right: 3.6rem;
|
| 260 |
+
align-items: center;
|
| 261 |
+
font-weight: bold;
|
| 262 |
+
}
|
| 263 |
+
|
| 264 |
+
input.toggle:focus + label::after {
|
| 265 |
+
background: var(--ac);
|
| 266 |
+
}
|
| 267 |
+
|
| 268 |
+
input.toggle + label::before,
|
| 269 |
+
input.toggle + label::after {
|
| 270 |
+
position: absolute;
|
| 271 |
+
right: 0;
|
| 272 |
+
border-radius: 2rem;
|
| 273 |
+
box-shadow: var(--box-shadow-inset);
|
| 274 |
+
background: #80808080;
|
| 275 |
+
width: 2.4rem;
|
| 276 |
+
height: 0.8rem;
|
| 277 |
+
content: "";
|
| 278 |
+
}
|
| 279 |
+
|
| 280 |
+
input.toggle + label::after {
|
| 281 |
+
--tst: 0.5s ease-out;
|
| 282 |
+
right: 1.2rem;
|
| 283 |
+
border: 1pt solid #80808008;
|
| 284 |
+
box-shadow: var(--box-shadow);
|
| 285 |
+
background: #fff;
|
| 286 |
+
width: 1.2rem;
|
| 287 |
+
height: 1.2rem;
|
| 288 |
+
}
|
| 289 |
+
|
| 290 |
+
input.toggle:checked + label::after {
|
| 291 |
+
right: 0;
|
| 292 |
+
}
|
| 293 |
+
|
| 294 |
+
input.toggle:checked + label::before {
|
| 295 |
+
opacity: 0.8;
|
| 296 |
+
background: var(--ac);
|
| 297 |
+
}
|
| 298 |
+
|
| 299 |
+
/* menu */
|
| 300 |
+
#a11y-menu {
|
| 301 |
+
display: inline-flex;
|
| 302 |
+
align-items: center;
|
| 303 |
+
order: 7;
|
| 304 |
+
margin: 0;
|
| 305 |
+
padding: 0;
|
| 306 |
+
width: 100%;
|
| 307 |
+
gap: 1ex;
|
| 308 |
+
}
|
| 309 |
+
|
| 310 |
+
#a11y-menu > button {
|
| 311 |
+
display: inline-flex;
|
| 312 |
+
flex-direction: column;
|
| 313 |
+
align-items: center;
|
| 314 |
+
border: unset;
|
| 315 |
+
}
|
| 316 |
+
|
| 317 |
+
#a11y-menu > .has-aria-label {
|
| 318 |
+
background: unset;
|
| 319 |
+
color: var(--fg);
|
| 320 |
+
}
|
| 321 |
+
|
| 322 |
+
#a11y-menu > .has-aria-label::before {
|
| 323 |
+
margin: auto;
|
| 324 |
+
padding: 0.25rem 0.5rem;
|
| 325 |
+
}
|
| 326 |
+
|
| 327 |
+
#a11y-menu .has-aria-label:after {
|
| 328 |
+
font-size: 0.7em;
|
| 329 |
+
}
|
| 330 |
+
|
| 331 |
+
#resetButton::before {
|
| 332 |
+
font-family: 'base-ui';
|
| 333 |
+
content: '\e90f';
|
| 334 |
+
}
|
| 335 |
+
|
| 336 |
+
#closeButton::before {
|
| 337 |
+
font-family: 'base-ui';
|
| 338 |
+
content: '\e913';
|
| 339 |
+
}
|
| 340 |
+
|
| 341 |
+
#bionReadButton,
|
| 342 |
+
#saveButton {
|
| 343 |
+
flex: 1;
|
| 344 |
+
margin-left: auto;
|
| 345 |
+
cursor: pointer;
|
| 346 |
+
}
|
| 347 |
+
|
| 348 |
+
/* bionRead */
|
| 349 |
+
b.k {
|
| 350 |
+
vertical-align: baseline;
|
| 351 |
+
letter-spacing: var(--bion);
|
| 352 |
+
color: var(--off);
|
| 353 |
+
font-weight: 400 !important;
|
| 354 |
+
-webkit-text-stroke: var(--bion) var(--off);
|
| 355 |
+
font-synthesis: weight;
|
| 356 |
+
}
|
| 357 |
+
|
| 358 |
+
#useBionRead {
|
| 359 |
+
display: none;
|
| 360 |
+
margin: auto;
|
| 361 |
+
letter-spacing: 0.1em;
|
| 362 |
+
font-size: var(--footnotesize);
|
| 363 |
+
}
|
| 364 |
+
|
| 365 |
+
legend,
|
| 366 |
+
.has-aria-label-top:before,
|
| 367 |
+
#setColorPalette > label,
|
| 368 |
+
input + label > span {
|
| 369 |
+
font-weight: 550;
|
| 370 |
+
}
|
| 371 |
+
|
| 372 |
+
#setContrast input + label > span {
|
| 373 |
+
font-weight: 400;
|
| 374 |
+
}
|
| 375 |
+
|
| 376 |
+
#bionReadButton > span {
|
| 377 |
+
font-weight: 400;
|
| 378 |
+
text-transform: uppercase;
|
| 379 |
+
}
|
| 380 |
+
|
| 381 |
+
#noLocalStorage {
|
| 382 |
+
order: 7;
|
| 383 |
+
margin: auto;
|
| 384 |
+
border-top: var(--bound);
|
| 385 |
+
padding-top: 1rem;
|
| 386 |
+
max-width: 20rem;
|
| 387 |
+
}
|
| 388 |
+
|
| 389 |
+
#focusMode {
|
| 390 |
+
position: fixed;
|
| 391 |
+
bottom: calc(var(--vfoot) + 1rem);
|
| 392 |
+
padding: 3pt 6pt;
|
| 393 |
+
display: flex;
|
| 394 |
+
}
|
| 395 |
+
|
| 396 |
+
#focusModeButton {
|
| 397 |
+
opacity: 0.7;
|
| 398 |
+
position: relative;
|
| 399 |
+
}
|
| 400 |
+
|
| 401 |
+
label:hover .t,
|
| 402 |
+
label:focus .t {
|
| 403 |
+
position: unset;
|
| 404 |
+
visibility: visible;
|
| 405 |
+
margin-left: 2rem;
|
| 406 |
+
}
|
| 407 |
+
|
| 408 |
+
input:checked + #focusModeButton {
|
| 409 |
+
opacity: 0.5;
|
| 410 |
+
}
|
| 411 |
+
|
| 412 |
+
/* optimize */
|
| 413 |
+
|
| 414 |
+
#setContrast input:checked:focus + label,
|
| 415 |
+
#OpenDyslexic:checked + label #OpenDyslexicState,
|
| 416 |
+
#saveButton:hover,
|
| 417 |
+
#saveButton:focus,
|
| 418 |
+
#bionReadSwitch:hover + label,
|
| 419 |
+
#bionReadSwitch:focus + label,
|
| 420 |
+
#bionReadSwitch:active + label,
|
| 421 |
+
#bionReadSwitch:checked + label {
|
| 422 |
+
background: var(--ac);
|
| 423 |
+
}
|
| 424 |
+
|
| 425 |
+
#has-a11y[open] > #has-a11y-summary,
|
| 426 |
+
#lightSwitch:hover + label span::after,
|
| 427 |
+
#lightSwitch:focus + label span::after,
|
| 428 |
+
#a11y-menu > .has-aria-label:focus,
|
| 429 |
+
#a11y-menu > .has-aria-label:hover {
|
| 430 |
+
color: var(--ac);
|
| 431 |
+
}
|
| 432 |
+
|
| 433 |
+
/* sr user */
|
| 434 |
+
|
| 435 |
+
body.sr-user {
|
| 436 |
+
--rm: monospace;
|
| 437 |
+
--sf: monospace;
|
| 438 |
+
--tt: monospace;
|
| 439 |
+
}
|
| 440 |
+
|
| 441 |
+
menu.srm--a a::before {
|
| 442 |
+
display: none;
|
| 443 |
+
}
|
| 444 |
+
|
| 445 |
+
menu.srm--a .srt,
|
| 446 |
+
.share.srm--a .srt {
|
| 447 |
+
padding: 1ex;
|
| 448 |
+
margin: 2pt;
|
| 449 |
+
}
|
| 450 |
+
|
| 451 |
+
.srm--a + #back::before {
|
| 452 |
+
content: unset;
|
| 453 |
+
}
|
| 454 |
+
|
| 455 |
+
menu.srm--a + #back {
|
| 456 |
+
padding: 6pt;
|
| 457 |
+
}
|
| 458 |
+
|
| 459 |
+
#has-search > summary.srm--a,
|
| 460 |
+
#has-more-menu > summary.srm--a {
|
| 461 |
+
width: unset;
|
| 462 |
+
padding: 0 5pt;
|
| 463 |
+
}
|
| 464 |
+
|
| 465 |
+
#to-top .t,
|
| 466 |
+
#has-search > summary.srm--a::before {
|
| 467 |
+
display: none;
|
| 468 |
+
}
|
| 469 |
+
|
| 470 |
+
menu.srm--a a,
|
| 471 |
+
#to-top.srm--a {
|
| 472 |
+
width: unset;
|
| 473 |
+
font-size: 1rem;
|
| 474 |
+
line-height: 1;
|
| 475 |
+
}
|
| 476 |
+
|
| 477 |
+
img[data-src],
|
| 478 |
+
.srs[data-style] {
|
| 479 |
+
border: var(--bound);
|
| 480 |
+
}
|
| 481 |
+
|
| 482 |
+
@media (max-width: 640px) {
|
| 483 |
+
|
| 484 |
+
#has-a11y > summary > span {
|
| 485 |
+
display: none;
|
| 486 |
+
}
|
| 487 |
+
|
| 488 |
+
}
|
assets/css/component/background.css
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#background-footer,
|
| 2 |
+
#background-header,
|
| 3 |
+
#background-body {
|
| 4 |
+
display: flex;
|
| 5 |
+
position: fixed;
|
| 6 |
+
top: 0;
|
| 7 |
+
left: 0;
|
| 8 |
+
z-index: -2;
|
| 9 |
+
width: 100vw;
|
| 10 |
+
height: 100vh;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
#background-footer,
|
| 14 |
+
#background-header,
|
| 15 |
+
#background-body,
|
| 16 |
+
#a11y,
|
| 17 |
+
#lightSwitch + label::before,
|
| 18 |
+
#setContrast,
|
| 19 |
+
#colorPalette,
|
| 20 |
+
ul.carousel__viewport > li > a > span::before,
|
| 21 |
+
ul.carousel__viewport > li > a > span::after,
|
| 22 |
+
ul.carousel__viewport > li > a > span,
|
| 23 |
+
#list-categories a:hover::after,
|
| 24 |
+
.letterine > i {
|
| 25 |
+
-webkit-transition: var(--flashGuard);
|
| 26 |
+
-moz-transition: var(--flashGuard);
|
| 27 |
+
-o-transition: var(--flashGuard);
|
| 28 |
+
transition: var(--flashGuard);
|
| 29 |
+
}
|
| 30 |
+
|
| 31 |
+
#background-body,
|
| 32 |
+
.background {
|
| 33 |
+
background-color: var(--bg);
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
#background-header {
|
| 37 |
+
border-bottom: var(--opt-border);
|
| 38 |
+
height: var(--vhead);
|
| 39 |
+
}
|
| 40 |
+
|
| 41 |
+
#background-footer {
|
| 42 |
+
top: unset;
|
| 43 |
+
bottom: 0;
|
| 44 |
+
border-top: var(--opt-border);
|
| 45 |
+
height: var(--vfoot);
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
.has-border {
|
| 49 |
+
--opt-border: var(--border);
|
| 50 |
+
}
|
assets/css/component/breadcrumb.css
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
main > header.pagewidth {
|
| 2 |
+
margin-top: var(--medskip);
|
| 3 |
+
height: 2.5rem;
|
| 4 |
+
}
|
| 5 |
+
|
| 6 |
+
main > header > menu {
|
| 7 |
+
float: right;
|
| 8 |
+
visibility: hidden;
|
| 9 |
+
margin: 0 0 0 auto;
|
| 10 |
+
padding: 0;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
main#term > header > menu,
|
| 14 |
+
main#page > header > menu {
|
| 15 |
+
visibility: visible;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
#back,
|
| 19 |
+
menu button,
|
| 20 |
+
menu a {
|
| 21 |
+
border: unset;
|
| 22 |
+
background: unset;
|
| 23 |
+
padding: 1ex;
|
| 24 |
+
color: inherit;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
#back::before,
|
| 28 |
+
header menu button,
|
| 29 |
+
header menu a,
|
| 30 |
+
#join-discussion-bluesky,
|
| 31 |
+
#menu-footer a {
|
| 32 |
+
display: inline-block;
|
| 33 |
+
position: relative;
|
| 34 |
+
padding: 5pt 0;
|
| 35 |
+
width: 2.25em;
|
| 36 |
+
text-align: center;
|
| 37 |
+
font-size: var(--normalsize);
|
| 38 |
+
}
|
| 39 |
+
|
| 40 |
+
#back::before {
|
| 41 |
+
width: 2rem;
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
#bionReadSwitch + label,
|
| 45 |
+
#join-discussion,
|
| 46 |
+
#saveButton,
|
| 47 |
+
#share {
|
| 48 |
+
display: flex;
|
| 49 |
+
align-items: center;
|
| 50 |
+
justify-content: center;
|
| 51 |
+
border: none;
|
| 52 |
+
border-radius: 2em;
|
| 53 |
+
background: var(--fg);
|
| 54 |
+
padding: 1ex 12pt;
|
| 55 |
+
text-align: center;
|
| 56 |
+
color: var(--bg);
|
| 57 |
+
font-weight: 550;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
#back .t,
|
| 61 |
+
menu button .t,
|
| 62 |
+
menu a .t,
|
| 63 |
+
#menu-footer a .t,
|
| 64 |
+
#join-discussion-bluesky > .t {
|
| 65 |
+
--tsf: translate(-4.65em);
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
#rss-button::before {
|
| 69 |
+
font-family: 'base-ui';
|
| 70 |
+
content: '\e910';
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
#print-button::before {
|
| 74 |
+
font-family: 'base-ui';
|
| 75 |
+
content: '\e90c';
|
| 76 |
+
}
|
| 77 |
+
|
| 78 |
+
#navigatorShare::before {
|
| 79 |
+
font-family: 'base-ui';
|
| 80 |
+
content: '\e912';
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
#copyPermalink::before {
|
| 84 |
+
font-family: base-ui;
|
| 85 |
+
content: '\e905';
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
label .t::after,
|
| 89 |
+
main#term #print-button {
|
| 90 |
+
visibility: hidden;
|
| 91 |
+
}
|
| 92 |
+
|
| 93 |
+
#back {
|
| 94 |
+
position: relative;
|
| 95 |
+
top: 3pt;
|
| 96 |
+
float: left;
|
| 97 |
+
padding: 0;
|
| 98 |
+
}
|
| 99 |
+
|
| 100 |
+
.pagination .rfill a::before,
|
| 101 |
+
.carousel__viewport__slide:last-child > nav a::before,
|
| 102 |
+
#back::before {
|
| 103 |
+
--tsf: rotate(-90deg) translateX(1pt);
|
| 104 |
+
font-family: base-ui;
|
| 105 |
+
content: '\e902';
|
| 106 |
+
}
|
| 107 |
+
|
| 108 |
+
main > header > menu > li,
|
| 109 |
+
ul.breadcrumb > li {
|
| 110 |
+
display: inline;
|
| 111 |
+
}
|
| 112 |
+
|
| 113 |
+
#has-breadcrumb a {
|
| 114 |
+
margin: 2pt;
|
| 115 |
+
padding: 0.5ex;
|
| 116 |
+
text-transform: uppercase;
|
| 117 |
+
letter-spacing: 0.1rem;
|
| 118 |
+
color: var(--fg);
|
| 119 |
+
font-size: var(--small);
|
| 120 |
+
}
|
| 121 |
+
|
| 122 |
+
ul.breadcrumb {
|
| 123 |
+
display: block;
|
| 124 |
+
padding: 5pt 0;
|
| 125 |
+
overflow: auto;
|
| 126 |
+
text-overflow: ellipsis;
|
| 127 |
+
white-space: nowrap;
|
| 128 |
+
-ms-overflow-style: none;
|
| 129 |
+
scrollbar-width: none;
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
ul.breadcrumb > li:last-child a {
|
| 133 |
+
-webkit-user-select: none;
|
| 134 |
+
-khtml-user-select: none;
|
| 135 |
+
-moz-user-select: none;
|
| 136 |
+
-ms-user-select: none;
|
| 137 |
+
user-select: none;
|
| 138 |
+
-webkit-touch-callout: none;
|
| 139 |
+
}
|
| 140 |
+
|
| 141 |
+
ul.breadcrumb > li + li:before {
|
| 142 |
+
color: var(--mid);
|
| 143 |
+
content: '/';
|
| 144 |
+
}
|
assets/css/component/card.css
ADDED
|
@@ -0,0 +1,181 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.feed-item {
|
| 2 |
+
position: relative;
|
| 3 |
+
transition: 99ms;
|
| 4 |
+
margin: var(--medskip) auto var(--medskip) 0;
|
| 5 |
+
padding: 1rem;
|
| 6 |
+
width: var(--golden-ratio);
|
| 7 |
+
font-size: var(--small);
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
.feed-item:hover,
|
| 11 |
+
.feed-item:focus-within {
|
| 12 |
+
--tsf: scale(1.01);
|
| 13 |
+
}
|
| 14 |
+
|
| 15 |
+
.feed-item * {
|
| 16 |
+
margin-top: 0;
|
| 17 |
+
margin-bottom: 0;
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
.feed-item h1 {
|
| 21 |
+
margin: 8pt 0 0 0;
|
| 22 |
+
color: var(--fg);
|
| 23 |
+
font-size: var(--Large);
|
| 24 |
+
font-weight: 550;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
.feed-item img {
|
| 28 |
+
width: auto;
|
| 29 |
+
height: auto;
|
| 30 |
+
max-height: 68.8vw;
|
| 31 |
+
aspect-ratio: 10/8;
|
| 32 |
+
object-fit: cover;
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
.feed-item .par {
|
| 36 |
+
--grd: linear-gradient(var(--off) 50%, transparent 100%);
|
| 37 |
+
opacity: 0.86;
|
| 38 |
+
margin-right: auto;
|
| 39 |
+
-webkit-mask-image: var(--grd);
|
| 40 |
+
mask-image: var(--grd);
|
| 41 |
+
clip-path: text;
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
.feed-item img + .par {
|
| 45 |
+
width: var(--golden-ratio);
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
.feed-item > a {
|
| 49 |
+
position: absolute;
|
| 50 |
+
top: 2.5rem;
|
| 51 |
+
right: 0;
|
| 52 |
+
bottom: 3rem;
|
| 53 |
+
left: 0;
|
| 54 |
+
transition: 0.2s;
|
| 55 |
+
z-index: 1;
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
.feed-item > a:hover,
|
| 59 |
+
.feed-item > a:focus {
|
| 60 |
+
top: 0;
|
| 61 |
+
bottom: 0;
|
| 62 |
+
background-color: #80808008;
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
.feed-item > hgroup {
|
| 66 |
+
display: flex;
|
| 67 |
+
flex-direction: column;
|
| 68 |
+
}
|
| 69 |
+
|
| 70 |
+
.feed-item > section {
|
| 71 |
+
display: flex;
|
| 72 |
+
flex-direction: row-reverse;
|
| 73 |
+
margin: 8pt 0;
|
| 74 |
+
width: 100%;
|
| 75 |
+
overflow: hidden;
|
| 76 |
+
text-overflow: ellipsis;
|
| 77 |
+
gap: 1rem;
|
| 78 |
+
}
|
| 79 |
+
|
| 80 |
+
.feed-item > section.has-cover {
|
| 81 |
+
aspect-ratio: 10/3;
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
.feed-item > footer,
|
| 85 |
+
.feed-item > hgroup > div {
|
| 86 |
+
display: flex;
|
| 87 |
+
flex-flow: nowrap;
|
| 88 |
+
align-items: center;
|
| 89 |
+
white-space: nowrap;
|
| 90 |
+
}
|
| 91 |
+
|
| 92 |
+
.feed-item > footer > ul,
|
| 93 |
+
.feed-item > hgroup > div > span {
|
| 94 |
+
display: block;
|
| 95 |
+
overflow-x: auto;
|
| 96 |
+
-ms-overflow-style: none;
|
| 97 |
+
scrollbar-width: none;
|
| 98 |
+
}
|
| 99 |
+
|
| 100 |
+
.feed-item > hgroup > div > div {
|
| 101 |
+
margin-left: auto;
|
| 102 |
+
padding-left: 1rem;
|
| 103 |
+
}
|
| 104 |
+
|
| 105 |
+
.feed-item > footer > ul {
|
| 106 |
+
text-align: right;
|
| 107 |
+
font-size: var(--scriptsize);
|
| 108 |
+
}
|
| 109 |
+
|
| 110 |
+
.emoji.emoji--stage {
|
| 111 |
+
padding: 0 2.4pt 2.4pt 0;
|
| 112 |
+
}
|
| 113 |
+
|
| 114 |
+
.stage-indicator {
|
| 115 |
+
margin-right: 1ex;
|
| 116 |
+
height: 1.3em !important;
|
| 117 |
+
}
|
| 118 |
+
|
| 119 |
+
.readingTime {
|
| 120 |
+
margin-right: auto;
|
| 121 |
+
padding-right: 1rem;
|
| 122 |
+
}
|
| 123 |
+
|
| 124 |
+
.readingTime + .baselineskip {
|
| 125 |
+
height: 1em;
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
+
.flowlines {
|
| 129 |
+
border: var(--border);
|
| 130 |
+
object-fit: none !important;
|
| 131 |
+
}
|
| 132 |
+
|
| 133 |
+
ul.pagination {
|
| 134 |
+
display: flex;
|
| 135 |
+
margin: var(--medskip) 1ex;
|
| 136 |
+
}
|
| 137 |
+
|
| 138 |
+
.pagination a {
|
| 139 |
+
display: flex;
|
| 140 |
+
padding: 1ex 1em;
|
| 141 |
+
text-transform: uppercase;
|
| 142 |
+
letter-spacing: 0.2ex;
|
| 143 |
+
color: var(--ac);
|
| 144 |
+
gap: 1ex;
|
| 145 |
+
}
|
| 146 |
+
|
| 147 |
+
@media (max-width: 640px) {
|
| 148 |
+
|
| 149 |
+
.feed-item {
|
| 150 |
+
width: unset;
|
| 151 |
+
}
|
| 152 |
+
|
| 153 |
+
aside + #list-posts .feed-item {
|
| 154 |
+
width: var(--golden-ratio);
|
| 155 |
+
}
|
| 156 |
+
|
| 157 |
+
aside + #list-posts .feed-item .par {
|
| 158 |
+
max-height: 25vh;
|
| 159 |
+
width: unset;
|
| 160 |
+
}
|
| 161 |
+
|
| 162 |
+
}
|
| 163 |
+
|
| 164 |
+
@media (max-width: 480px) {
|
| 165 |
+
|
| 166 |
+
.feed-item > section {
|
| 167 |
+
flex-direction: column;
|
| 168 |
+
aspect-ratio: unset !important;
|
| 169 |
+
}
|
| 170 |
+
|
| 171 |
+
.feed-item img {
|
| 172 |
+
max-height: unset;
|
| 173 |
+
aspect-ratio: unset;
|
| 174 |
+
}
|
| 175 |
+
|
| 176 |
+
.feed-item img.flowlines {
|
| 177 |
+
max-height: 68.8vw;
|
| 178 |
+
aspect-ratio: 10/8;
|
| 179 |
+
}
|
| 180 |
+
|
| 181 |
+
}
|
assets/css/component/carousel.css
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*
|
| 2 |
+
<!----- V container ----->
|
| 3 |
+
<div class='has-carousel'>
|
| 4 |
+
<!--- H container --->
|
| 5 |
+
<div class='carousel'>
|
| 6 |
+
<div>---- <div>---- <div>---- <div>---- <div>----
|
| 7 |
+
| | | | | | | | | |
|
| 8 |
+
| | | | | | | | | |
|
| 9 |
+
| | | | | | | | | |
|
| 10 |
+
| | | | | | | | | |
|
| 11 |
+
---</div> | | ---</div> | | ---</div>
|
| 12 |
+
---</div> ---</div>
|
| 13 |
+
</div>
|
| 14 |
+
<div>
|
| 15 |
+
*/
|
| 16 |
+
.carousel {
|
| 17 |
+
position: relative;
|
| 18 |
+
width: 100%;
|
| 19 |
+
overflow: hidden;
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
.carousel__viewport {
|
| 23 |
+
display: flex;
|
| 24 |
+
height: 100%;
|
| 25 |
+
overflow-x: auto;
|
| 26 |
+
-webkit-overflow-scrolling: touch;
|
| 27 |
+
scroll-behavior: smooth;
|
| 28 |
+
scroll-snap-type: x mandatory;
|
| 29 |
+
scrollbar-width: none;
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
ul.carousel__viewport {
|
| 33 |
+
border: none;
|
| 34 |
+
padding: 0;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
.carousel__viewport > div,
|
| 38 |
+
.carousel__viewport > section,
|
| 39 |
+
ul.carousel__viewport > li,
|
| 40 |
+
.carousel__viewport__slide {
|
| 41 |
+
display: flex;
|
| 42 |
+
position: relative;
|
| 43 |
+
flex-direction: row;
|
| 44 |
+
flex-shrink: 0;
|
| 45 |
+
flex-wrap: wrap;
|
| 46 |
+
align-items: center;
|
| 47 |
+
width: 100%;
|
| 48 |
+
scroll-snap-align: start;
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
ul.carousel__viewport > li {
|
| 52 |
+
position: relative;
|
| 53 |
+
margin: 1ex;
|
| 54 |
+
border-radius: 1ex;
|
| 55 |
+
background: var(--img) center/cover;
|
| 56 |
+
width: 16rem;
|
| 57 |
+
height: 12.8rem;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
ul.carousel__viewport > li > a {
|
| 61 |
+
position: absolute;
|
| 62 |
+
top: -1px;
|
| 63 |
+
right: 0;
|
| 64 |
+
bottom: 0;
|
| 65 |
+
left: -1px;
|
| 66 |
+
border-radius: 0.82ex;
|
| 67 |
+
overflow: clip;
|
| 68 |
+
color: var(--fg);
|
| 69 |
+
font-size: var(--small);
|
| 70 |
+
font-weight: bold;
|
| 71 |
+
border: none;
|
| 72 |
+
}
|
| 73 |
+
|
| 74 |
+
ul.carousel__viewport > li:hover,
|
| 75 |
+
ul.carousel__viewport > li:focus-within {
|
| 76 |
+
--tsf: scale(0.96);
|
| 77 |
+
opacity: 0.86;
|
| 78 |
+
}
|
| 79 |
+
|
| 80 |
+
ul.carousel__viewport > li > a > span {
|
| 81 |
+
position: relative;
|
| 82 |
+
border-radius: 0 1ex 1ex 0;
|
| 83 |
+
background-color: var(--bg);
|
| 84 |
+
padding: 0.7ex 1ex;
|
| 85 |
+
max-width: 12.8rem;
|
| 86 |
+
-webkit-box-decoration-break: clone;
|
| 87 |
+
box-decoration-break: clone;
|
| 88 |
+
}
|
| 89 |
+
|
| 90 |
+
ul.carousel__viewport > li > a > span::before,
|
| 91 |
+
ul.carousel__viewport > li > a > span::after {
|
| 92 |
+
position: absolute;
|
| 93 |
+
border-top-left-radius: 1ex;
|
| 94 |
+
box-shadow: 0 -1ex 0 0 var(--bg);
|
| 95 |
+
background-color: transparent;
|
| 96 |
+
width: 1ex;
|
| 97 |
+
height: 2ex;
|
| 98 |
+
content: '';
|
| 99 |
+
}
|
| 100 |
+
|
| 101 |
+
ul.carousel__viewport > li > a > span::before {
|
| 102 |
+
bottom: -2ex;
|
| 103 |
+
left: 0;
|
| 104 |
+
}
|
| 105 |
+
|
| 106 |
+
ul.carousel__viewport > li > a > span::after {
|
| 107 |
+
top: 0.5ex;
|
| 108 |
+
right: -0.9ex;
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
.tr,
|
| 112 |
+
.carousel__viewport__slide > nav a {
|
| 113 |
+
display: inline-flex;
|
| 114 |
+
padding: 1ex;
|
| 115 |
+
gap: 1ex;
|
| 116 |
+
}
|
| 117 |
+
|
| 118 |
+
|
| 119 |
+
.pagination .lfill a::after,
|
| 120 |
+
.tr::after,
|
| 121 |
+
.carousel__viewport__slide:first-child > nav a::after {
|
| 122 |
+
/* -> */
|
| 123 |
+
--tsf: rotate(90deg);
|
| 124 |
+
font-family: base-ui;
|
| 125 |
+
content: '\e902';
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
+
#list-taxonomy > .carousel__viewport {
|
| 129 |
+
flex-direction: column;
|
| 130 |
+
height: 14.75rem;
|
| 131 |
+
overflow-y: auto;
|
| 132 |
+
scroll-snap-type: y mandatory;
|
| 133 |
+
}
|
| 134 |
+
|
| 135 |
+
#list-taxonomy {
|
| 136 |
+
margin: 1rem 0;
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
#list-taxonomy ul.carousel__viewport {
|
| 140 |
+
scrollbar-width: thin;
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
#list-taxonomy ul.carousel__viewport a:hover::after {
|
| 144 |
+
position: absolute;
|
| 145 |
+
right: 1ex;
|
| 146 |
+
bottom: 1ex;
|
| 147 |
+
border-radius: 0.7ex;
|
| 148 |
+
background: var(--bg);
|
| 149 |
+
padding: 0.7ex 0;
|
| 150 |
+
width: calc(3.2rem - 2ex);
|
| 151 |
+
text-align: center;
|
| 152 |
+
text-overflow: ellipsis;
|
| 153 |
+
white-space: nowrap;
|
| 154 |
+
content: attr(data-post-counter);
|
| 155 |
+
}
|
assets/css/component/clock.css
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* this style is used inline in extras.js */
|
| 2 |
+
|
| 3 |
+
/* grain for dither */
|
| 4 |
+
|
| 5 |
+
.grain {
|
| 6 |
+
position: absolute;
|
| 7 |
+
mix-blend-mode: difference;
|
| 8 |
+
background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' width='256' height='256' viewBox='0 0 256 256'><defs><filter id='grain' x='0' y='0' width='1' height='1' filterUnits='objectBoundingBox' primitiveUnits='userSpaceOnUse' color-interpolation-filters='linearRGB'><feTurbulence type='turbulence' baseFrequency='0.7' numOctaves='7' seed='42' stitchTiles='stitch' x='-1%' y='-1%' width='102%' height='102%' result='turbulence' id='feTurbulence2' /><feSpecularLighting surfaceScale='7' specularConstant='3' specularExponent='10' lighting-color='%23ffffff' x='-1%' y='-1%' width='102%' height='102%' in='turbulence' result='specularLighting' id='feSpecularLighting'><feDistantLight azimuth='3' elevation='163' id='feDistantLight' /></feSpecularLighting></filter></defs><rect width='320' height='320' fill='%23000000' id='blackbody' x='-32' y='-32' opacity='0.03' /><rect width='320' height='320' fill='%23ffffff' filter='url(%23grain)' id='noise' x='-32' y='-32' opacity='0.03' /></svg>");
|
| 9 |
+
width: 100%;
|
| 10 |
+
height: 100%;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
/* distraction */
|
| 14 |
+
|
| 15 |
+
#dwclock {
|
| 16 |
+
opacity: 0.33;
|
| 17 |
+
margin: auto;
|
| 18 |
+
width: 100vmin;
|
| 19 |
+
height: 100vmin;
|
| 20 |
+
filter: blur(2vmin) saturate(2);
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
#hour,
|
| 24 |
+
#min {
|
| 25 |
+
position: absolute;
|
| 26 |
+
width: 100vmin;
|
| 27 |
+
height: 100vmin;
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
.hand {
|
| 31 |
+
--min: 40vmin;
|
| 32 |
+
--hour: 28vmin;
|
| 33 |
+
--tsf: translateY(calc(50vmin - var(--min)));
|
| 34 |
+
margin: 0 auto auto ;
|
| 35 |
+
border-right: 2vmin solid transparent;
|
| 36 |
+
border-bottom: var(--min) solid #60f;
|
| 37 |
+
border-left: 2vmin solid transparent;
|
| 38 |
+
border-radius: 2vmin;
|
| 39 |
+
background-image: linear-gradient(0deg, var(--bg) 0%, #60f 100%);
|
| 40 |
+
width: 3vmin;
|
| 41 |
+
height: var(--min);
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
#hour .hand {
|
| 45 |
+
--tsf: translateY(calc(50vmin - var(--hour)));
|
| 46 |
+
border-bottom: var(--hour) solid #20f;
|
| 47 |
+
background-image: linear-gradient(0deg, var(--bg) 0%, #20f 100%);
|
| 48 |
+
height: var(--hour);
|
| 49 |
+
}
|
assets/css/component/column.css
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.column {
|
| 2 |
+
/* auto column count */
|
| 3 |
+
--col: 16rem;
|
| 4 |
+
display: block;
|
| 5 |
+
-webkit-column-gap: 1.618rem;
|
| 6 |
+
-moz-column-gap: 1.618rem;
|
| 7 |
+
column-gap: 1.618rem;
|
| 8 |
+
column-fill: balance;
|
| 9 |
+
-webkit-column-width: var(--col);
|
| 10 |
+
-moz-column-width: var(--col);
|
| 11 |
+
column-width: var(--col);
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
.column--multicols {
|
| 15 |
+
/* modify column count on element inline:
|
| 16 |
+
<e class='column column--multicols' style='--multicols:2'></e> */
|
| 17 |
+
--col: unset;
|
| 18 |
+
--multicols: 3;
|
| 19 |
+
-webkit-column-count: var(--multicols);
|
| 20 |
+
-moz-column-count: var(--multicols);
|
| 21 |
+
column-count: var(--multicols);
|
| 22 |
+
}
|
| 23 |
+
|
| 24 |
+
.column__span {
|
| 25 |
+
column-span: all;
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
.column > *,
|
| 29 |
+
.column__item {
|
| 30 |
+
break-after: auto;
|
| 31 |
+
break-before: auto;
|
| 32 |
+
break-inside: avoid;
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
div + #menu-footer,
|
| 36 |
+
.column > div + div,
|
| 37 |
+
.column__item + .column__item {
|
| 38 |
+
margin-top: 1.618rem;
|
| 39 |
+
}
|
| 40 |
+
|
| 41 |
+
.column img {
|
| 42 |
+
width: 100%;
|
| 43 |
+
height: auto;
|
| 44 |
+
}
|
| 45 |
+
|
| 46 |
+
.column.pin {
|
| 47 |
+
--col: 13rem;
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
.column.pin > * {
|
| 51 |
+
margin-bottom: 1em;
|
| 52 |
+
font-size: var(--small);
|
| 53 |
+
}
|
| 54 |
+
|
| 55 |
+
.has-quote {
|
| 56 |
+
display: flex;
|
| 57 |
+
flex-direction: column-reverse;
|
| 58 |
+
color: var(--fg);
|
| 59 |
+
}
|
| 60 |
+
|
| 61 |
+
.has-quote::after {
|
| 62 |
+
margin: unset;
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
.has-quote > div {
|
| 66 |
+
margin-left: auto;
|
| 67 |
+
}
|
| 68 |
+
|
| 69 |
+
@media screen and (min-width: 2560px) {
|
| 70 |
+
|
| 71 |
+
.column {
|
| 72 |
+
--col: 20rem;
|
| 73 |
+
}
|
| 74 |
+
|
| 75 |
+
}
|
| 76 |
+
|
| 77 |
+
@media screen and (min-width: 1920px) {
|
| 78 |
+
|
| 79 |
+
.column.pin {
|
| 80 |
+
--col: 16rem;
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
}
|
| 84 |
+
|
| 85 |
+
@media screen and (max-width: 640px) {
|
| 86 |
+
|
| 87 |
+
.column.pin {
|
| 88 |
+
--col: 10rem;
|
| 89 |
+
}
|
| 90 |
+
|
| 91 |
+
}
|
assets/css/component/contentinfo.css
ADDED
|
@@ -0,0 +1,137 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#contentinfo {
|
| 2 |
+
display: grid;
|
| 3 |
+
grid-template-columns: 6fr 4fr;
|
| 4 |
+
font-size: var(--small);
|
| 5 |
+
gap: var(--medskip);
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
|
| 9 |
+
#colophon {
|
| 10 |
+
grid-column: 1;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
#colophon > div {
|
| 14 |
+
display: flex;
|
| 15 |
+
margin-top: 1ex;
|
| 16 |
+
gap: 1rem;
|
| 17 |
+
}
|
| 18 |
+
|
| 19 |
+
#qr {
|
| 20 |
+
padding-top: 4pt;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
#contribute {
|
| 24 |
+
grid-column: 2;
|
| 25 |
+
border-radius: 1ex;
|
| 26 |
+
background-color: var(--g18s);
|
| 27 |
+
padding: 1.4rem 1.4rem 1rem;
|
| 28 |
+
height: fit-content;
|
| 29 |
+
line-height: 1.618;
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
#contrib-menu li {
|
| 33 |
+
margin: 1ex 1ex 1ex 0;
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
#contrib-menu a {
|
| 37 |
+
display: inline-block;
|
| 38 |
+
border: none;
|
| 39 |
+
border-radius: 1ex;
|
| 40 |
+
background: var(--ac);
|
| 41 |
+
padding: 4pt 9pt 3pt 7pt;
|
| 42 |
+
width: 100%;
|
| 43 |
+
text-align: center;
|
| 44 |
+
color: var(--bg);
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
#contrib-menu a:hover,
|
| 48 |
+
#contrib-menu a:focus {
|
| 49 |
+
--anm: none;
|
| 50 |
+
opacity: 0.86;
|
| 51 |
+
color: var(--bg);
|
| 52 |
+
}
|
| 53 |
+
|
| 54 |
+
#has-contrib-menu {
|
| 55 |
+
padding: .4rem 0;
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
#contentinfo ol {
|
| 59 |
+
position: relative;
|
| 60 |
+
margin-bottom: 0;
|
| 61 |
+
padding-left: 2.5rem;
|
| 62 |
+
list-style: none;
|
| 63 |
+
counter-reset: li;
|
| 64 |
+
}
|
| 65 |
+
|
| 66 |
+
#contentinfo ol li {
|
| 67 |
+
margin-bottom: 1ex;
|
| 68 |
+
padding-bottom: 1ex;
|
| 69 |
+
}
|
| 70 |
+
|
| 71 |
+
#contentinfo ol li::before {
|
| 72 |
+
display: inline-block;
|
| 73 |
+
position: absolute;
|
| 74 |
+
left: 0;
|
| 75 |
+
border-radius: 2rem;
|
| 76 |
+
background: var(--g18s);
|
| 77 |
+
padding: 4pt 7pt;
|
| 78 |
+
color: var(--mid);
|
| 79 |
+
font: 0.7em monospace;
|
| 80 |
+
content: counter(li);
|
| 81 |
+
counter-increment: li;
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
#contentinfo ol li.see-more::before {
|
| 85 |
+
content: '>';
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
#related a {
|
| 89 |
+
position: relative;
|
| 90 |
+
top: 0.25ex;
|
| 91 |
+
}
|
| 92 |
+
|
| 93 |
+
#has-timeline {
|
| 94 |
+
grid-column-start: 2;
|
| 95 |
+
grid-row-start: 1;
|
| 96 |
+
}
|
| 97 |
+
|
| 98 |
+
#has-timeline summary {
|
| 99 |
+
display: flex;
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
#has-timeline ol {
|
| 103 |
+
margin: 1ex 0 0 1rem;
|
| 104 |
+
border-left: 2.5pt solid var(--g18s);
|
| 105 |
+
padding: 1ex 0 0 1rem;
|
| 106 |
+
}
|
| 107 |
+
|
| 108 |
+
#has-timeline ol li::before {
|
| 109 |
+
left: -8pt;
|
| 110 |
+
border: 4pt solid var(--bg);
|
| 111 |
+
background: var(--mid);
|
| 112 |
+
padding: 0;
|
| 113 |
+
content: '\a0';
|
| 114 |
+
height: 6pt;
|
| 115 |
+
width: 6pt;
|
| 116 |
+
}
|
| 117 |
+
|
| 118 |
+
#has-timeline .has-aria-label-top {
|
| 119 |
+
margin: 5pt 0;
|
| 120 |
+
}
|
| 121 |
+
|
| 122 |
+
#has-timeline .emoji--stage {
|
| 123 |
+
position: absolute;
|
| 124 |
+
left: -8pt;
|
| 125 |
+
}
|
| 126 |
+
|
| 127 |
+
@media screen and (max-width: 640px) {
|
| 128 |
+
|
| 129 |
+
#contentinfo {
|
| 130 |
+
display: block;
|
| 131 |
+
}
|
| 132 |
+
|
| 133 |
+
#contentinfo > * {
|
| 134 |
+
margin-bottom: var(--bigskip) ;
|
| 135 |
+
}
|
| 136 |
+
|
| 137 |
+
}
|
assets/css/component/fediverse.css
ADDED
|
@@ -0,0 +1,147 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#comments noscript {
|
| 2 |
+
margin: var(--medskip) 0;
|
| 3 |
+
}
|
| 4 |
+
|
| 5 |
+
#discussion-starter {
|
| 6 |
+
margin-bottom: var(--medskip);
|
| 7 |
+
}
|
| 8 |
+
|
| 9 |
+
#mastodon-stats {
|
| 10 |
+
margin-left: auto;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
#mastodon-comments,
|
| 14 |
+
#bsky-comments,
|
| 15 |
+
#fediverse-comments {
|
| 16 |
+
padding: 0;
|
| 17 |
+
list-style: none;
|
| 18 |
+
width: var(--golden-ratio);
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
#comments li,
|
| 22 |
+
#comments li > ul {
|
| 23 |
+
margin-top: 1rem;
|
| 24 |
+
list-style: none;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
.fediverse-comment {
|
| 28 |
+
margin: 1rem 0 1rem calc(var(--mul) * var(--indent));
|
| 29 |
+
border-left: 3pt solid var(--ac);
|
| 30 |
+
background: #80808008;
|
| 31 |
+
padding: 1rem 1rem 1ex;
|
| 32 |
+
overflow: auto;
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
.fediverse-comment.bsky {
|
| 36 |
+
--ac: #1185fe;
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
.fediverse-comment.mstd {
|
| 40 |
+
--ac: #563acc;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
.fediverse-comment > .author > img {
|
| 44 |
+
margin-right: 12pt;
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
.fediverse-comment .content {
|
| 48 |
+
margin-left: 4rem;
|
| 49 |
+
line-height: calc(var(--baselineStretch) * 1.272);
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
.fediverse-comment .par a {
|
| 53 |
+
max-width: 100%;
|
| 54 |
+
vertical-align: bottom;
|
| 55 |
+
white-space: break-spaces;
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
.fediverse-comment > footer {
|
| 59 |
+
display: flex;
|
| 60 |
+
align-items: center;
|
| 61 |
+
margin-top: 1rem;
|
| 62 |
+
margin-left: 3.5rem;
|
| 63 |
+
white-space: nowrap;
|
| 64 |
+
}
|
| 65 |
+
|
| 66 |
+
.fediverse-comment > footer .stat {
|
| 67 |
+
display: inline-flex;
|
| 68 |
+
flex-shrink: 0;
|
| 69 |
+
gap: 5pt;
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
.attachments,
|
| 73 |
+
#comments > summary {
|
| 74 |
+
display: flex;
|
| 75 |
+
overflow: auto;
|
| 76 |
+
}
|
| 77 |
+
|
| 78 |
+
.attachments > * {
|
| 79 |
+
flex-shrink: 0;
|
| 80 |
+
width: 100%;
|
| 81 |
+
height: auto;
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
.attachments img {
|
| 85 |
+
width: 100%;
|
| 86 |
+
height: auto;
|
| 87 |
+
}
|
| 88 |
+
|
| 89 |
+
.stat > * {
|
| 90 |
+
display: inline-flex;
|
| 91 |
+
align-items: center;
|
| 92 |
+
padding: 2pt;
|
| 93 |
+
color: var(--mid);
|
| 94 |
+
gap: 2pt;
|
| 95 |
+
}
|
| 96 |
+
|
| 97 |
+
.stat > *::before {
|
| 98 |
+
vertical-align: text-top;
|
| 99 |
+
font-family: "base-ui";
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
.stat > * > span {
|
| 103 |
+
font-size: 0.8em;
|
| 104 |
+
}
|
| 105 |
+
|
| 106 |
+
a.replies.active,
|
| 107 |
+
a.reblogs.active {
|
| 108 |
+
color: var(--ac);
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
a.favourites.active {
|
| 112 |
+
color: var(--i3i);
|
| 113 |
+
}
|
| 114 |
+
|
| 115 |
+
.fediverse-comment .date {
|
| 116 |
+
margin-left: auto;
|
| 117 |
+
padding-left: 1rem;
|
| 118 |
+
color: var(--mid);
|
| 119 |
+
font-size: calc(10pt * var(--fontScale));
|
| 120 |
+
}
|
| 121 |
+
|
| 122 |
+
@media (max-width: 960px) {
|
| 123 |
+
.fediverse-comment .content,
|
| 124 |
+
.fediverse-comment > footer {
|
| 125 |
+
margin-left: 0;
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
+
}
|
| 129 |
+
|
| 130 |
+
@media print {
|
| 131 |
+
.fediverse-comment {
|
| 132 |
+
position: relative;
|
| 133 |
+
background: none;
|
| 134 |
+
padding-bottom: 0;
|
| 135 |
+
}
|
| 136 |
+
|
| 137 |
+
.fediverse-comment .date {
|
| 138 |
+
position: absolute;
|
| 139 |
+
top: 0;
|
| 140 |
+
right: 0;
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
.fediverse-comment .stat {
|
| 144 |
+
display: none !important;
|
| 145 |
+
}
|
| 146 |
+
|
| 147 |
+
}
|
assets/css/component/garden.css
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.st {
|
| 2 |
+
display: inline-block;
|
| 3 |
+
margin: 0 1ex 0 0;
|
| 4 |
+
background: var(--svg) 50% / cover;
|
| 5 |
+
padding: 0.5em;
|
| 6 |
+
width: 1.5em;
|
| 7 |
+
height: 1.5em;
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
.budding {
|
| 11 |
+
--svg: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' width='1em' height='1em' viewBox='0 0 60 60'><defs><style type='text/css'>path{stroke:gray;stroke-width:3;stroke-linecap:round;fill:none} %23lf>g{transform-origin:top center} %23lfr{animation:lfr 5s infinite} %23lfl{animation:lfl 5s infinite} @keyframes lfr{ 0%, 100%{transform:unset} 25%, 75%{transform:rotate(45deg) translateX(calc(100% / 6))} 50%{transform:translateX(calc(100% / -3))}} @keyframes lfl{ 0%, 100%{transform:unset} 25%, 75%{transform:rotate(-45deg) translateX(calc(100% / -6))} 50%{transform:translateX(calc(100% / 3))}} </style></defs><g id='lf'><g id='lfl'><path d='M30 50c-11,0 -20,-9 -20,-20 M10 30c11,0 20,9 20,20'/><path d='M10 30c0,-11 9,-20 20,-20 M30 10c0,11 -9,20 -20,20'/></g><g id='lfr'><path d='M30 10c11,0 20,9 20,20 M50 30c-11,0 -20,-9 -20,-20'/><path d='M50 30c0,11 -9,20 -20,20 M30 50c0,-11 9,-20 20,-20'/></g></g></svg>");
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
.evergreen {
|
| 15 |
+
--svg: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' width='1em' height='1em' viewBox='0 0 60 60'><defs><style type='text/css'>path{stroke:gray;stroke-width:3;stroke-linecap:round;fill:none} %23lf{animation:rot 2.5s linear infinite;transform-origin:center} %23lfr{transform:translateX(calc(100% / -3))} %23lfl{transform:translateX(calc(100% / 3))} @keyframes rot{0%{transform:unset}100%{transform:rotate(360deg)}} </style></defs><g id='lf'><g id='lfl'><path d='M30 50c-11,0 -20,-9 -20,-20 M10 30c11,0 20,9 20,20'/><path d='M10 30c0,-11 9,-20 20,-20 M30 10c0,11 -9,20 -20,20'/></g><g id='lfr'><path d='M30 10c11,0 20,9 20,20 M50 30c-11,0 -20,-9 -20,-20'/><path d='M50 30c0,11 -9,20 -20,20 M30 50c0,-11 9,-20 20,-20'/></g></g></svg>");
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
.seedling {
|
| 19 |
+
--svg: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' width='1em' height='1em' viewBox='0 0 60 60'><defs><style type='text/css'>path{stroke:gray;stroke-width:3;stroke-linecap:round;fill:none} %23lf{animation:rot 2.5s infinite alternate;transform-origin:center} @keyframes rot{ 0%{transform:rotate(0deg) scale(16%)} 100%{transform:rotate(360deg) scale(100%)}} </style></defs><g id='lf'><g id='lfl'><path d='M30 50c-11,0 -20,-9 -20,-20 M10 30c11,0 20,9 20,20'/><path d='M10 30c0,-11 9,-20 20,-20 M30 10c0,11 -9,20 -20,20'/></g><g id='lfr'><path d='M30 10c11,0 20,9 20,20 M50 30c-11,0 -20,-9 -20,-20'/><path d='M50 30c0,11 -9,20 -20,20 M30 50c0,-11 9,-20 20,-20'/></g></g></svg>");
|
| 20 |
+
}
|
assets/css/component/hero.css
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*
|
| 2 |
+
<!----- V container ----->
|
| 3 |
+
<div class='has-carousel'>
|
| 4 |
+
<!--- H container --->
|
| 5 |
+
<div class='carousel'>
|
| 6 |
+
<div>---- <div>---- <div>---- <div>---- <div>----
|
| 7 |
+
| | | | | | | | | |
|
| 8 |
+
| | | | | | | | | |
|
| 9 |
+
| | | | | | | | | |
|
| 10 |
+
| | | | | | | | | |
|
| 11 |
+
---</div> | | ---</div> | | ---</div>
|
| 12 |
+
---</div> ---</div>
|
| 13 |
+
</div>
|
| 14 |
+
<div>
|
| 15 |
+
*/
|
| 16 |
+
.hero {
|
| 17 |
+
display: flex;
|
| 18 |
+
position: relative;
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
.hero__image {
|
| 22 |
+
display: flex;
|
| 23 |
+
position: -webkit-sticky;
|
| 24 |
+
position: sticky;
|
| 25 |
+
top: 0;
|
| 26 |
+
width: 50%;
|
| 27 |
+
height: fit-content;
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
.hero__image.auto {
|
| 31 |
+
height: auto;
|
| 32 |
+
max-height: 1024px;
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
.hero__image img {
|
| 36 |
+
margin-left: auto;
|
| 37 |
+
padding: 2rem;
|
| 38 |
+
max-width: 100%;
|
| 39 |
+
max-height: calc(var(--vbody) - 14.8rem - 1rem - 2ex);
|
| 40 |
+
object-fit: contain;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
.hero__image.auto img {
|
| 44 |
+
object-fit: cover;
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
.hero__content {
|
| 48 |
+
padding: 2rem 0;
|
| 49 |
+
width: 100%;
|
| 50 |
+
font-size: var(--small);
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
.hero__image + .hero__content {
|
| 54 |
+
width: 50%;
|
| 55 |
+
max-width: 27rem;
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
.hero__content h1,
|
| 59 |
+
.hero__content h2,
|
| 60 |
+
.hero__content h3 {
|
| 61 |
+
margin: 4pt 0;
|
| 62 |
+
line-height: 1.2;
|
| 63 |
+
font-size: var(--LARGE);
|
| 64 |
+
font-weight: bold;
|
| 65 |
+
font-style: normal;
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
.hero__content p {
|
| 69 |
+
--col: 27rem;
|
| 70 |
+
max-width: var(--col);
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
@media (max-width: 960px) {
|
| 74 |
+
|
| 75 |
+
.hero {
|
| 76 |
+
width: 100%;
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
}
|
| 80 |
+
|
| 81 |
+
@media (max-width: 640px) {
|
| 82 |
+
|
| 83 |
+
.hero {
|
| 84 |
+
display: flex;
|
| 85 |
+
flex-direction: column;
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
.hero > *,
|
| 89 |
+
.hero__image + .hero__content {
|
| 90 |
+
align-self: center;
|
| 91 |
+
width: 86%;
|
| 92 |
+
}
|
| 93 |
+
|
| 94 |
+
.hero__image {
|
| 95 |
+
position: inherit;
|
| 96 |
+
width: unset;
|
| 97 |
+
height: unset;
|
| 98 |
+
}
|
| 99 |
+
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
@media (max-width: 480px) {
|
| 103 |
+
|
| 104 |
+
.hero__image.auto {
|
| 105 |
+
max-height: calc(var(--vbody) - 15.8rem - 2ex);
|
| 106 |
+
}
|
| 107 |
+
|
| 108 |
+
}
|
| 109 |
+
|
| 110 |
+
@media (max-width: 480px) {
|
| 111 |
+
|
| 112 |
+
.hero img {
|
| 113 |
+
padding: 1rem;
|
| 114 |
+
}
|
| 115 |
+
|
| 116 |
+
}
|
assets/css/component/keyframe.css
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@keyframes ellipsis {
|
| 2 |
+
0% {content: '...';}
|
| 3 |
+
25% {content: '';}
|
| 4 |
+
50% {content: '.';}
|
| 5 |
+
100% {content: '..';}
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
@-webkit-keyframes ellipsis {
|
| 9 |
+
0% {content: '...';}
|
| 10 |
+
25% {content: '';}
|
| 11 |
+
50% {content: '.';}
|
| 12 |
+
100% {content: '..';}
|
| 13 |
+
}
|
| 14 |
+
|
| 15 |
+
@-webkit-keyframes idle {
|
| 16 |
+
from, to {border-color: var(--paper);}
|
| 17 |
+
50% {border-color: transparent;}
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
@keyframes idle {
|
| 21 |
+
from, to {border-color: var(--paper);}
|
| 22 |
+
50% {border-color: transparent;}
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
@-webkit-keyframes blinking {
|
| 26 |
+
from, to {opacity: 1;;}
|
| 27 |
+
50% {opacity: 0;}
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
@keyframes blinking {
|
| 31 |
+
from, to {opacity: 1;;}
|
| 32 |
+
50% {opacity: 0;}
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
@keyframes expand {
|
| 36 |
+
from {
|
| 37 |
+
-webkit-transform: scale(1 , 0);
|
| 38 |
+
-moz-transform: scale(1 , 0);
|
| 39 |
+
-ms-transform: scale(1 , 0);
|
| 40 |
+
-o-transform: scale(1 , 0);
|
| 41 |
+
transform: scale(1 , 0);
|
| 42 |
+
}
|
| 43 |
+
to {
|
| 44 |
+
-webkit-transform: scale(1 , 1);
|
| 45 |
+
-moz-transform: scale(1 , 1);
|
| 46 |
+
-ms-transform: scale(1 , 1);
|
| 47 |
+
-o-transform: scale(1 , 1);
|
| 48 |
+
transform: scale(1 , 1);
|
| 49 |
+
}
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
@-webkit-keyframes expand {
|
| 53 |
+
from {
|
| 54 |
+
-webkit-transform: scale(1 , 0);
|
| 55 |
+
transform: scale(1 , 0);
|
| 56 |
+
}
|
| 57 |
+
to {
|
| 58 |
+
-webkit-transform: scale(1 , 1);
|
| 59 |
+
transform: scale(1 , 1);
|
| 60 |
+
}
|
| 61 |
+
}
|
| 62 |
+
|
| 63 |
+
@media (prefers-reduced-motion) {
|
| 64 |
+
|
| 65 |
+
@keyframes expand {
|
| 66 |
+
from {
|
| 67 |
+
-webkit-transform: unset;
|
| 68 |
+
-moz-transform: unset;
|
| 69 |
+
-ms-transform: unset;
|
| 70 |
+
-o-transform: unset;
|
| 71 |
+
transform: unset;
|
| 72 |
+
}
|
| 73 |
+
}
|
| 74 |
+
|
| 75 |
+
@-webkit-keyframes expand {
|
| 76 |
+
from {
|
| 77 |
+
-webkit-transform: unset;
|
| 78 |
+
-moz-transform: unset;
|
| 79 |
+
-ms-transform: unset;
|
| 80 |
+
-o-transform: unset;
|
| 81 |
+
transform: unset;
|
| 82 |
+
}
|
| 83 |
+
}
|
| 84 |
+
|
| 85 |
+
}
|
assets/css/component/link.css
ADDED
|
@@ -0,0 +1,155 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@-webkit-keyframes underline {
|
| 2 |
+
from {
|
| 3 |
+
border-image: linear-gradient(to right, transparent, transparent) 1;
|
| 4 |
+
}
|
| 5 |
+
|
| 6 |
+
50% {
|
| 7 |
+
border-image: linear-gradient(to right, var(--ac), transparent) 1;
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
to {
|
| 11 |
+
border-image: linear-gradient(to right, var(--ac), var(--ac)) 1;
|
| 12 |
+
}
|
| 13 |
+
}
|
| 14 |
+
|
| 15 |
+
@-moz-keyframes underline {
|
| 16 |
+
from {
|
| 17 |
+
border-image: linear-gradient(to right, transparent, transparent) 1;
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
50% {
|
| 21 |
+
border-image: linear-gradient(to right, var(--ac), transparent) 1;
|
| 22 |
+
}
|
| 23 |
+
|
| 24 |
+
to {
|
| 25 |
+
border-image: linear-gradient(to right, var(--ac), var(--ac)) 1;
|
| 26 |
+
}
|
| 27 |
+
}
|
| 28 |
+
|
| 29 |
+
@keyframes underline {
|
| 30 |
+
from {
|
| 31 |
+
border-image: linear-gradient(to right, transparent, transparent) 1;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
50% {
|
| 35 |
+
border-image: linear-gradient(to right, var(--ac), transparent) 1;
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
to {
|
| 39 |
+
border-image: linear-gradient(to right, var(--ac), var(--ac)) 1;
|
| 40 |
+
}
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
a {
|
| 44 |
+
text-decoration: none;
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
a,
|
| 48 |
+
.anchor,
|
| 49 |
+
.list-day a span,
|
| 50 |
+
#has-l10n summary,
|
| 51 |
+
#has-a11y-summary {
|
| 52 |
+
--anm: none;
|
| 53 |
+
border-bottom: 2pt solid transparent;
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
a:hover,
|
| 57 |
+
a:focus,
|
| 58 |
+
.anchor:hover,
|
| 59 |
+
.anchor:focus,
|
| 60 |
+
.list-day a:hover span,
|
| 61 |
+
.list-day a:focus span,
|
| 62 |
+
#has-l10n summary:hover,
|
| 63 |
+
#has-l10n summary:focus,
|
| 64 |
+
#has-l10n[open] summary,
|
| 65 |
+
#has-a11y-summary:hover,
|
| 66 |
+
#has-a11y-summary:focus,
|
| 67 |
+
#has-a11y[open] #has-a11y-summary {
|
| 68 |
+
--anm: underline 127ms;
|
| 69 |
+
border-color: var(--ac);
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
a.cta {
|
| 73 |
+
margin: 1ex;
|
| 74 |
+
border: 2pt solid var(--fg);
|
| 75 |
+
border-radius: 1ex;
|
| 76 |
+
background: var(--fg);
|
| 77 |
+
padding: 6pt 16pt;
|
| 78 |
+
text-align: center;
|
| 79 |
+
color: var(--bg);
|
| 80 |
+
font-weight: 550;
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
a.cta.s {
|
| 84 |
+
background: var(--bg);
|
| 85 |
+
color: var(--fg);
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
a.cta:hover,
|
| 89 |
+
a.cta:focus {
|
| 90 |
+
--anm: none;
|
| 91 |
+
outline: 2pt solid var(--fg);
|
| 92 |
+
border-color: var(--bg);
|
| 93 |
+
background: var(--fg);
|
| 94 |
+
color: var(--bg);
|
| 95 |
+
}
|
| 96 |
+
|
| 97 |
+
.rounded li {
|
| 98 |
+
margin: 0.5ex;
|
| 99 |
+
display: inline-block;
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
.rounded a {
|
| 103 |
+
display: inline-flex;
|
| 104 |
+
border: var(--border);
|
| 105 |
+
border-radius: 2rem;
|
| 106 |
+
background: #80808008;
|
| 107 |
+
padding: 0.5ex 1em;
|
| 108 |
+
color: var(--fg);
|
| 109 |
+
gap: 1pt;
|
| 110 |
+
}
|
| 111 |
+
|
| 112 |
+
.rounded a:hover,
|
| 113 |
+
.rounded a:focus {
|
| 114 |
+
--anm: none;
|
| 115 |
+
border: 1pt solid var(--fg);
|
| 116 |
+
}
|
| 117 |
+
|
| 118 |
+
.invert a {
|
| 119 |
+
background: var(--fg) !important;
|
| 120 |
+
color: var(--bg) !important;
|
| 121 |
+
}
|
| 122 |
+
|
| 123 |
+
.invert a:visited {
|
| 124 |
+
color: var(--bg);
|
| 125 |
+
}
|
| 126 |
+
|
| 127 |
+
.invert a:hover,
|
| 128 |
+
.invert a:focus {
|
| 129 |
+
--anm: none;
|
| 130 |
+
background: var(--bg) !important;
|
| 131 |
+
color: var(--fg) !important;
|
| 132 |
+
}
|
| 133 |
+
|
| 134 |
+
.has-hash a {
|
| 135 |
+
text-transform: uppercase;
|
| 136 |
+
letter-spacing: 0.1rem;
|
| 137 |
+
font-size: var(--footnotesize);
|
| 138 |
+
}
|
| 139 |
+
|
| 140 |
+
.has-hash a:hover,
|
| 141 |
+
.has-hash a:focus {
|
| 142 |
+
--anm: none;
|
| 143 |
+
}
|
| 144 |
+
|
| 145 |
+
#term .section-title .tag::before,
|
| 146 |
+
.has-hash a::before {
|
| 147 |
+
content: '#';
|
| 148 |
+
}
|
| 149 |
+
|
| 150 |
+
@media (max-width: 480px) {
|
| 151 |
+
a.cta {
|
| 152 |
+
display: block;
|
| 153 |
+
width: 100%;
|
| 154 |
+
}
|
| 155 |
+
}
|
assets/css/component/logotype.css
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* _____ _ _ _ ____ __ __
|
| 2 |
+
| ___| / \ | \ | | / ___| \ \ / /
|
| 3 |
+
| |_ / _ \ | \| | | | \ V /
|
| 4 |
+
| _| / ___ \ | |\ | | |___ | |
|
| 5 |
+
|_| /_/ \_\ |_| \_| \____| |_|
|
| 6 |
+
|
| 7 |
+
<svg id='logotype__svg'
|
| 8 |
+
xmlns...
|
| 9 |
+
width='<!--estimated width-->'
|
| 10 |
+
>
|
| 11 |
+
<text id='logotype__svg__text'y='74%'>
|
| 12 |
+
FANCY LOGOTYPE
|
| 13 |
+
</text>
|
| 14 |
+
</svg>
|
| 15 |
+
|
| 16 |
+
simplified from :
|
| 17 |
+
https://codepen.io/alvarotrigo/pen/rNbxNWg */
|
| 18 |
+
|
| 19 |
+
#logo {
|
| 20 |
+
--h: calc(3.33rem - 10pt);
|
| 21 |
+
display: flex;
|
| 22 |
+
align-items: center;
|
| 23 |
+
justify-content: center;
|
| 24 |
+
margin: 5pt 0;
|
| 25 |
+
border: none;
|
| 26 |
+
max-width: calc(100% - 5rem);
|
| 27 |
+
height: var(--h);
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
#logo > * {
|
| 31 |
+
height: var(--h);
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
#logo #logotype__text {
|
| 35 |
+
--anm: dash 30s infinite alternate;
|
| 36 |
+
text-transform: uppercase;
|
| 37 |
+
letter-spacing: 0.2ex;
|
| 38 |
+
font-family: var(--sf), sans-serif;
|
| 39 |
+
font-size: calc(27pt * var(--fontScale));
|
| 40 |
+
font-weight: 550;
|
| 41 |
+
stroke: var(--off);
|
| 42 |
+
stroke-width: 1px;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
#logo:focus #logotype__text {
|
| 46 |
+
--anm: none;
|
| 47 |
+
outline-color: var(--off);
|
| 48 |
+
stroke: none;
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
@-webkit-keyframes dash {
|
| 52 |
+
0% {
|
| 53 |
+
fill:var(--off);
|
| 54 |
+
stroke-dasharray: 0 50%;
|
| 55 |
+
stroke-dashoffset: 20%;
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
100% {
|
| 59 |
+
fill: #0000;
|
| 60 |
+
stroke-dasharray: 50% 0;
|
| 61 |
+
stroke-dashoffset: -20%;
|
| 62 |
+
}
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
@keyframes dash {
|
| 66 |
+
0% {
|
| 67 |
+
fill: var(--off);
|
| 68 |
+
stroke-dasharray: 0 50%;
|
| 69 |
+
stroke-dashoffset: 20%;
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
100% {
|
| 73 |
+
fill: #0000;
|
| 74 |
+
stroke-dasharray: 50% 0;
|
| 75 |
+
stroke-dashoffset: -20%;
|
| 76 |
+
}
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
/* logomark default */
|
| 80 |
+
|
| 81 |
+
#logomark--dark + #logomark {
|
| 82 |
+
display: inline-block;
|
| 83 |
+
}
|
| 84 |
+
|
| 85 |
+
@media (prefers-color-scheme: light) {
|
| 86 |
+
|
| 87 |
+
#logomark--dark {
|
| 88 |
+
display: none;
|
| 89 |
+
}
|
| 90 |
+
|
| 91 |
+
#logomark--dark + #logomark {
|
| 92 |
+
display: inline-block;
|
| 93 |
+
}
|
| 94 |
+
|
| 95 |
+
}
|
| 96 |
+
|
| 97 |
+
@media (prefers-color-scheme: dark) {
|
| 98 |
+
|
| 99 |
+
#logomark--dark {
|
| 100 |
+
display: inline-block;
|
| 101 |
+
}
|
| 102 |
+
|
| 103 |
+
#logomark--dark + #logomark {
|
| 104 |
+
display: none;
|
| 105 |
+
}
|
| 106 |
+
|
| 107 |
+
}
|
assets/css/component/mainfooter.css
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* main footer bar */
|
| 2 |
+
|
| 3 |
+
#main-footer {
|
| 4 |
+
border-radius: 1ex;
|
| 5 |
+
background: #000;
|
| 6 |
+
color: #fff;
|
| 7 |
+
}
|
| 8 |
+
|
| 9 |
+
#main-footer a {
|
| 10 |
+
color: #fff;
|
| 11 |
+
}
|
assets/css/component/marginpar.css
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.marginpar {
|
| 2 |
+
left: var(--golden-ratio);
|
| 3 |
+
margin-right: 0;
|
| 4 |
+
margin-left: calc(var(--marginparwidth) * -1);
|
| 5 |
+
font-size: var(--small);
|
| 6 |
+
font-style: italic;
|
| 7 |
+
}
|
| 8 |
+
|
| 9 |
+
.marginpar.abs {
|
| 10 |
+
/* will ignore clear attribute */
|
| 11 |
+
position: absolute;
|
| 12 |
+
right: var(--void);
|
| 13 |
+
left: unset;
|
| 14 |
+
}
|
| 15 |
+
|
| 16 |
+
.marginpar-ctrl,
|
| 17 |
+
.marginpar-ctrl + label::before {
|
| 18 |
+
position: absolute;
|
| 19 |
+
top: -100vh;
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
.marginpar-ctrl + .has-counter::before {
|
| 23 |
+
counter-increment: marginnote;
|
| 24 |
+
position: unset;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
.marginpar-ctrl + .has-counter::before,
|
| 28 |
+
.has-counter + .marginpar::before {
|
| 29 |
+
--anm: unset !important;
|
| 30 |
+
display: inline-block !important;
|
| 31 |
+
vertical-align: super;
|
| 32 |
+
color: inherit !important;
|
| 33 |
+
font: .7rem normal inherit;
|
| 34 |
+
content: '[' counter(marginnote) ']' !important;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
.has-counter + .marginpar::before {
|
| 38 |
+
position: absolute;
|
| 39 |
+
left: 0;
|
| 40 |
+
width: var(--indent);
|
| 41 |
+
text-align: center;
|
| 42 |
+
padding-top: 1ex;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
.marginpar-ctrl + label.has-counter {
|
| 46 |
+
display: unset;
|
| 47 |
+
padding: 0;
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
@media screen and (max-width: 640px) {
|
| 51 |
+
|
| 52 |
+
.marginpar-ctrl + label {
|
| 53 |
+
display: inline-flex;
|
| 54 |
+
padding: 2pt;
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
.marginpar-ctrl + label::before {
|
| 58 |
+
position: unset;
|
| 59 |
+
display: block !important;
|
| 60 |
+
left: 0;
|
| 61 |
+
}
|
| 62 |
+
|
| 63 |
+
.marginpar-ctrl:checked + label::before {
|
| 64 |
+
--anm: unset;
|
| 65 |
+
color: var(--ac);
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
.marginpar {
|
| 69 |
+
display: none;
|
| 70 |
+
float: unset;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
.marginpar-ctrl:checked + label + .marginpar {
|
| 74 |
+
display: block;
|
| 75 |
+
position: unset;
|
| 76 |
+
margin: 1ex 0;
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
}
|
assets/css/component/menu.css
ADDED
|
@@ -0,0 +1,553 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
ul.delimiter,
|
| 2 |
+
ul.breadcrumb,
|
| 3 |
+
nav > ul,
|
| 4 |
+
ul[role=presentation] {
|
| 5 |
+
margin: 0;
|
| 6 |
+
list-style: none;
|
| 7 |
+
font-size: inherit;
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
ul.delimiter,
|
| 11 |
+
ul.delimiter li,
|
| 12 |
+
ul.inline,
|
| 13 |
+
ul.inline li,
|
| 14 |
+
nav > ul,
|
| 15 |
+
nav > ul > li {
|
| 16 |
+
display: inline;
|
| 17 |
+
padding: 0;
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
/* container */
|
| 21 |
+
|
| 22 |
+
body > header,
|
| 23 |
+
body > header > nav {
|
| 24 |
+
display: flex;
|
| 25 |
+
z-index: 2;
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
#top-nav {
|
| 29 |
+
margin-left: auto;
|
| 30 |
+
font-weight: bold;
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
#top-nav[open],
|
| 34 |
+
#has-main-menu {
|
| 35 |
+
flex: 1;
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
#top-nav > nav {
|
| 39 |
+
display: flex;
|
| 40 |
+
justify-content: flex-end;
|
| 41 |
+
gap: 1ex;
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
#logo + #top-nav #main-menu,
|
| 45 |
+
#logo + #top-nav #main-menu .l1 {
|
| 46 |
+
/* flush item to right-end when logotype on the left */
|
| 47 |
+
justify-content: flex-end;
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
#main-menu .l1 {
|
| 51 |
+
display: flex;
|
| 52 |
+
gap: 1ex;
|
| 53 |
+
}
|
| 54 |
+
|
| 55 |
+
/* menu icon */
|
| 56 |
+
|
| 57 |
+
#top-nav .icon {
|
| 58 |
+
position: relative;
|
| 59 |
+
top: -0.05em;
|
| 60 |
+
margin-right: 0.3em;
|
| 61 |
+
}
|
| 62 |
+
|
| 63 |
+
.menu-icon::before {
|
| 64 |
+
padding: 1pt;
|
| 65 |
+
font-family: 'base-ui';
|
| 66 |
+
content: '\e90b';
|
| 67 |
+
}
|
| 68 |
+
|
| 69 |
+
#has-more-menu > summary {
|
| 70 |
+
width: 43pt;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
#has-i18n > summary::before,
|
| 74 |
+
#has-i18n a::before,
|
| 75 |
+
#has-l10n a::before {
|
| 76 |
+
background: var(--flag) center/cover;
|
| 77 |
+
content: '';
|
| 78 |
+
width: 1em;
|
| 79 |
+
height: 0.75em;
|
| 80 |
+
border-radius: 2pt;
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
#has-a11y[open] > summary .icon::before,
|
| 84 |
+
#has-search[open] .icon::before,
|
| 85 |
+
details[open] > summary > .menu-icon::before {
|
| 86 |
+
--anm: blinking 2s step-end infinite;
|
| 87 |
+
color: var(--ac);
|
| 88 |
+
}
|
| 89 |
+
|
| 90 |
+
/* on 'hull' viewport */
|
| 91 |
+
|
| 92 |
+
#i18n-menu,
|
| 93 |
+
#more-menu,
|
| 94 |
+
.on-hull,
|
| 95 |
+
.screening {
|
| 96 |
+
/* 'hull' --vbody container */
|
| 97 |
+
position: fixed;
|
| 98 |
+
top: var(--vhead);
|
| 99 |
+
left: 0;
|
| 100 |
+
width: 100vw;
|
| 101 |
+
height: var(--vbody);
|
| 102 |
+
}
|
| 103 |
+
|
| 104 |
+
.screening {
|
| 105 |
+
/* obscure main body */
|
| 106 |
+
--blur: blur(0.2vmin);
|
| 107 |
+
--dim: brightness(0.96);
|
| 108 |
+
z-index: -1;
|
| 109 |
+
background-color: #80808008;
|
| 110 |
+
-webkit-backdrop-filter: var(--blur) var(--dim);
|
| 111 |
+
backdrop-filter: var(--blur) var(--dim);
|
| 112 |
+
}
|
| 113 |
+
|
| 114 |
+
/* item on 'deck' */
|
| 115 |
+
|
| 116 |
+
.on-deck,
|
| 117 |
+
a#has-i18n {
|
| 118 |
+
display: flex;
|
| 119 |
+
align-items: center;
|
| 120 |
+
justify-content: center;
|
| 121 |
+
margin: auto 0;
|
| 122 |
+
padding: unset;
|
| 123 |
+
min-width: var(--vhead);
|
| 124 |
+
height: calc(var(--vhead) - 12pt);
|
| 125 |
+
max-height: 4.2rem;
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
+
#has-i18n > .on-deck {
|
| 129 |
+
padding: 0 1ex;
|
| 130 |
+
width: unset;
|
| 131 |
+
}
|
| 132 |
+
|
| 133 |
+
/* item on 'plank' */
|
| 134 |
+
|
| 135 |
+
.on-plank {
|
| 136 |
+
/* add on-plank */
|
| 137 |
+
display: flex;
|
| 138 |
+
flex-direction: column;
|
| 139 |
+
border: var(--border);
|
| 140 |
+
border-radius: 1ex;
|
| 141 |
+
background: var(--bg);
|
| 142 |
+
padding: 1.414ex;
|
| 143 |
+
width: fit-content;
|
| 144 |
+
max-height: calc(var(--vbody) - 2rem);
|
| 145 |
+
overflow-y: auto;
|
| 146 |
+
gap: 1ex;
|
| 147 |
+
}
|
| 148 |
+
|
| 149 |
+
.on-plank ul {
|
| 150 |
+
display: flex;
|
| 151 |
+
flex-direction: column;
|
| 152 |
+
margin: 0 1ex;
|
| 153 |
+
border-right: var(--bound);
|
| 154 |
+
padding: 1ex;
|
| 155 |
+
gap: 1ex;
|
| 156 |
+
}
|
| 157 |
+
|
| 158 |
+
details[open] .on-plank,
|
| 159 |
+
.l1 details[open] > ul,
|
| 160 |
+
.marginpar-ctrl:checked + label + .marginpar {
|
| 161 |
+
--anm: expand 99ms forwards;
|
| 162 |
+
--tso: top;
|
| 163 |
+
}
|
| 164 |
+
|
| 165 |
+
#main-menu .on-plank {
|
| 166 |
+
position: fixed;
|
| 167 |
+
top: calc(var(--vhead) + 1rem);
|
| 168 |
+
max-width: 21rem;
|
| 169 |
+
translate: -1.414ex;
|
| 170 |
+
}
|
| 171 |
+
|
| 172 |
+
#i18n-menu > .on-plank,
|
| 173 |
+
#more-menu > .on-plank {
|
| 174 |
+
/* .on-hull > .on-plank */
|
| 175 |
+
margin: 1rem var(--void) 1rem auto;
|
| 176 |
+
max-width: var(--max-width);
|
| 177 |
+
}
|
| 178 |
+
|
| 179 |
+
/* visible menu item */
|
| 180 |
+
|
| 181 |
+
#has-l10n a,
|
| 182 |
+
#top-nav a,
|
| 183 |
+
.anchor {
|
| 184 |
+
display: flex;
|
| 185 |
+
padding: 1ex;
|
| 186 |
+
width: 100%;
|
| 187 |
+
color: var(--fg);
|
| 188 |
+
}
|
| 189 |
+
|
| 190 |
+
#top-nav a.has-desc {
|
| 191 |
+
flex-direction: column;
|
| 192 |
+
}
|
| 193 |
+
|
| 194 |
+
summary.anchor .has-aria-label::after {
|
| 195 |
+
color: var(--mid);
|
| 196 |
+
font-size: 0.9em;
|
| 197 |
+
font-weight: normal;
|
| 198 |
+
}
|
| 199 |
+
|
| 200 |
+
.marginpar-ctrl + label::before,
|
| 201 |
+
.anchor:after {
|
| 202 |
+
/* add indicator [v] */
|
| 203 |
+
--tst: 200ms ease-out;
|
| 204 |
+
position: relative;
|
| 205 |
+
top: 0.23em;
|
| 206 |
+
left: 0.43em;
|
| 207 |
+
align-self: center;
|
| 208 |
+
margin-left: auto;
|
| 209 |
+
background: linear-gradient(to top, transparent 49%, var(--g18) 51%);
|
| 210 |
+
-webkit-background-clip: text;
|
| 211 |
+
background-clip: text;
|
| 212 |
+
color: transparent;
|
| 213 |
+
font: 8pt 'base-ui';
|
| 214 |
+
content: '\e913';
|
| 215 |
+
}
|
| 216 |
+
|
| 217 |
+
.anchor:hover::after {
|
| 218 |
+
background: linear-gradient(to top, transparent 49%, var(--ac) 51%);
|
| 219 |
+
-webkit-background-clip: text;
|
| 220 |
+
background-clip: text;
|
| 221 |
+
color: transparent;
|
| 222 |
+
}
|
| 223 |
+
|
| 224 |
+
#has-i18n .anchor::after {
|
| 225 |
+
left: unset;
|
| 226 |
+
}
|
| 227 |
+
|
| 228 |
+
.marginpar-ctrl:checked + label::before,
|
| 229 |
+
details[open] > .anchor:after {
|
| 230 |
+
/* change indicator state [x] */
|
| 231 |
+
--anm: blinking 3s step-end infinite;
|
| 232 |
+
background: unset;
|
| 233 |
+
top: 0;
|
| 234 |
+
color: var(--g18);
|
| 235 |
+
}
|
| 236 |
+
|
| 237 |
+
details[open] > .anchor.on-deck:after {
|
| 238 |
+
/* make opened <details> element more prominent */
|
| 239 |
+
color: red;
|
| 240 |
+
}
|
| 241 |
+
|
| 242 |
+
/* bilingual */
|
| 243 |
+
|
| 244 |
+
a#has-i18n {
|
| 245 |
+
align-items: end;
|
| 246 |
+
width: auto;
|
| 247 |
+
font-size: .9em;
|
| 248 |
+
font-weight: 550;
|
| 249 |
+
gap: 3pt;
|
| 250 |
+
}
|
| 251 |
+
|
| 252 |
+
a#has-i18n > .alt,
|
| 253 |
+
a#has-i18n:hover > .act,
|
| 254 |
+
a#has-i18n:focus > .act,
|
| 255 |
+
a#has-i18n:active > .act {
|
| 256 |
+
/* active/current language */
|
| 257 |
+
color: var(--g18);
|
| 258 |
+
}
|
| 259 |
+
|
| 260 |
+
a#has-i18n:hover > .alt,
|
| 261 |
+
a#has-i18n:focus > .alt,
|
| 262 |
+
a#has-i18n:active > .alt {
|
| 263 |
+
/* alternate language */
|
| 264 |
+
color: var(--fg);
|
| 265 |
+
}
|
| 266 |
+
|
| 267 |
+
/* multilingual */
|
| 268 |
+
|
| 269 |
+
#has-i18n .on-deck {
|
| 270 |
+
gap: 3pt;
|
| 271 |
+
}
|
| 272 |
+
|
| 273 |
+
#has-l10n {
|
| 274 |
+
display: inline-block;
|
| 275 |
+
}
|
| 276 |
+
|
| 277 |
+
#has-l10n summary {
|
| 278 |
+
display: block !important;
|
| 279 |
+
padding: 0 1.4ex 0 4pt;
|
| 280 |
+
font-size: 0.9em;
|
| 281 |
+
}
|
| 282 |
+
|
| 283 |
+
#has-l10n > summary::before {
|
| 284 |
+
font-family: 'base-ui';
|
| 285 |
+
content: '\e90a\a0';
|
| 286 |
+
}
|
| 287 |
+
|
| 288 |
+
#has-l10n a,
|
| 289 |
+
#i18n-menu a {
|
| 290 |
+
align-items: center;
|
| 291 |
+
gap: 1ex;
|
| 292 |
+
}
|
| 293 |
+
|
| 294 |
+
.iso639 {
|
| 295 |
+
padding-top: 1pt;
|
| 296 |
+
}
|
| 297 |
+
|
| 298 |
+
#has-l10n .on-plank {
|
| 299 |
+
position: absolute;
|
| 300 |
+
z-index: 1;
|
| 301 |
+
margin-top: 1ex;
|
| 302 |
+
border: var(--border);
|
| 303 |
+
background: var(--bg);
|
| 304 |
+
width: auto;
|
| 305 |
+
}
|
| 306 |
+
|
| 307 |
+
#main-footer a::after,
|
| 308 |
+
.parent-anchor a::after,
|
| 309 |
+
#i18n-menu a::after,
|
| 310 |
+
#content a::after {
|
| 311 |
+
--tsf: rotate(45deg);
|
| 312 |
+
display: inline-block;
|
| 313 |
+
margin-top: 0.3em;
|
| 314 |
+
margin-left: auto;
|
| 315 |
+
font: 0.7em 'base-ui';
|
| 316 |
+
content: '\e902';
|
| 317 |
+
}
|
| 318 |
+
|
| 319 |
+
.parent-anchor a::after,
|
| 320 |
+
#i18n-menu a::after {
|
| 321 |
+
color: var(--g18);
|
| 322 |
+
}
|
| 323 |
+
|
| 324 |
+
.hero nav a {
|
| 325 |
+
display: inline-block;
|
| 326 |
+
position: relative;
|
| 327 |
+
color: var(--fg);
|
| 328 |
+
}
|
| 329 |
+
|
| 330 |
+
.hero nav .t {
|
| 331 |
+
top: 150%;
|
| 332 |
+
}
|
| 333 |
+
|
| 334 |
+
.hero nav a .icon {
|
| 335 |
+
display: inline-flex;
|
| 336 |
+
margin: 2pt;
|
| 337 |
+
padding: 6pt;
|
| 338 |
+
font-size: var(--large);
|
| 339 |
+
}
|
| 340 |
+
|
| 341 |
+
@media (max-width: 640px) {
|
| 342 |
+
|
| 343 |
+
/* container behaviour */
|
| 344 |
+
|
| 345 |
+
#top-nav * {
|
| 346 |
+
outline: none !important;
|
| 347 |
+
}
|
| 348 |
+
|
| 349 |
+
#top-nav[open] > nav {
|
| 350 |
+
--anm: expand 99ms forwards;
|
| 351 |
+
--tso: top;
|
| 352 |
+
}
|
| 353 |
+
|
| 354 |
+
li.lfill {
|
| 355 |
+
margin-left: unset;
|
| 356 |
+
}
|
| 357 |
+
|
| 358 |
+
.has-childfree li,
|
| 359 |
+
.has-childfree li.lfill {
|
| 360 |
+
margin: auto;
|
| 361 |
+
}
|
| 362 |
+
|
| 363 |
+
#main-menu {
|
| 364 |
+
display: unset;
|
| 365 |
+
}
|
| 366 |
+
|
| 367 |
+
#main-menu .l1 {
|
| 368 |
+
flex-direction: column;
|
| 369 |
+
}
|
| 370 |
+
|
| 371 |
+
/* swap menu-icon */
|
| 372 |
+
|
| 373 |
+
#top-nav > summary,
|
| 374 |
+
#top-nav[open] > summary {
|
| 375 |
+
display: flex !important;
|
| 376 |
+
margin-left: auto;
|
| 377 |
+
width: 43pt;
|
| 378 |
+
}
|
| 379 |
+
|
| 380 |
+
#has-more-menu > summary {
|
| 381 |
+
width: 100%;
|
| 382 |
+
}
|
| 383 |
+
|
| 384 |
+
#has-more-menu .t,
|
| 385 |
+
#has-search .t {
|
| 386 |
+
display: initial;
|
| 387 |
+
position: unset;
|
| 388 |
+
visibility: unset;
|
| 389 |
+
background: unset;
|
| 390 |
+
width: 100%;
|
| 391 |
+
color: inherit;
|
| 392 |
+
font: inherit;
|
| 393 |
+
}
|
| 394 |
+
|
| 395 |
+
/* swap screen element */
|
| 396 |
+
|
| 397 |
+
#top-nav-screen.screening {
|
| 398 |
+
display: block;
|
| 399 |
+
background-color: var(--bg);
|
| 400 |
+
height: calc(100vh - var(--vhead));
|
| 401 |
+
}
|
| 402 |
+
|
| 403 |
+
/* swap hull element */
|
| 404 |
+
|
| 405 |
+
#top-nav > nav {
|
| 406 |
+
position: fixed;
|
| 407 |
+
top: var(--vhead);
|
| 408 |
+
left: 0;
|
| 409 |
+
flex-direction: column;
|
| 410 |
+
justify-content: unset;
|
| 411 |
+
z-index: 3;
|
| 412 |
+
padding: 1.414ex;
|
| 413 |
+
width: 101vw;
|
| 414 |
+
height: var(--vbody);
|
| 415 |
+
overflow-y: auto;
|
| 416 |
+
}
|
| 417 |
+
|
| 418 |
+
#i18n-menu,
|
| 419 |
+
#more-menu,
|
| 420 |
+
#has-search-fallback,
|
| 421 |
+
#main-menu .on-plank {
|
| 422 |
+
/* also unset main menu plank */
|
| 423 |
+
position: unset;
|
| 424 |
+
width: unset;
|
| 425 |
+
max-width: unset;
|
| 426 |
+
height: unset;
|
| 427 |
+
}
|
| 428 |
+
|
| 429 |
+
/* reorder hull item */
|
| 430 |
+
|
| 431 |
+
#has-search {
|
| 432 |
+
order: 1;
|
| 433 |
+
}
|
| 434 |
+
|
| 435 |
+
#has-main-menu {
|
| 436 |
+
flex: unset;
|
| 437 |
+
order: 2;
|
| 438 |
+
}
|
| 439 |
+
|
| 440 |
+
#has-more-menu {
|
| 441 |
+
order: 3;
|
| 442 |
+
}
|
| 443 |
+
|
| 444 |
+
#has-i18n,
|
| 445 |
+
#bi18n {
|
| 446 |
+
order: 4;
|
| 447 |
+
margin: auto 1ex 2rem;
|
| 448 |
+
}
|
| 449 |
+
|
| 450 |
+
/* redefine deck element */
|
| 451 |
+
|
| 452 |
+
#top-nav > nav .on-deck {
|
| 453 |
+
justify-content: unset;
|
| 454 |
+
height: unset;
|
| 455 |
+
}
|
| 456 |
+
|
| 457 |
+
#top-nav > nav #has-i18n .on-deck {
|
| 458 |
+
padding: 1ex;
|
| 459 |
+
}
|
| 460 |
+
|
| 461 |
+
/* swap plank element */
|
| 462 |
+
|
| 463 |
+
.on-plank {
|
| 464 |
+
border: unset;
|
| 465 |
+
background: unset;
|
| 466 |
+
min-width: unset;
|
| 467 |
+
max-height: unset;
|
| 468 |
+
}
|
| 469 |
+
|
| 470 |
+
#main-menu .on-plank {
|
| 471 |
+
margin: 0 1ex;
|
| 472 |
+
border-right: var(--bound);
|
| 473 |
+
border-radius: 0;
|
| 474 |
+
padding: 1ex;
|
| 475 |
+
translate: unset;
|
| 476 |
+
}
|
| 477 |
+
|
| 478 |
+
#i18n-menu > .on-plank ,
|
| 479 |
+
#more-menu > .on-plank {
|
| 480 |
+
/* .on-hull > .on-plank */
|
| 481 |
+
margin: unset;
|
| 482 |
+
padding: 0;
|
| 483 |
+
width: 100%;
|
| 484 |
+
}
|
| 485 |
+
|
| 486 |
+
#has-main-menu,
|
| 487 |
+
#has-more-menu,
|
| 488 |
+
#has-search {
|
| 489 |
+
/* make as plank */
|
| 490 |
+
margin: 1ex;
|
| 491 |
+
padding: 1ex;
|
| 492 |
+
}
|
| 493 |
+
|
| 494 |
+
#has-more-menu {
|
| 495 |
+
border: var(--border);
|
| 496 |
+
border-radius: 1ex;
|
| 497 |
+
}
|
| 498 |
+
|
| 499 |
+
#has-more-menu[open],
|
| 500 |
+
#author-name-menu {
|
| 501 |
+
border: none;
|
| 502 |
+
}
|
| 503 |
+
|
| 504 |
+
details[open] > .anchor.on-deck:after {
|
| 505 |
+
color: var(--g18);
|
| 506 |
+
}
|
| 507 |
+
|
| 508 |
+
/* bilingual */
|
| 509 |
+
|
| 510 |
+
#bi18n .t {
|
| 511 |
+
display: block !important;
|
| 512 |
+
position: unset;
|
| 513 |
+
visibility: unset;
|
| 514 |
+
background: unset;
|
| 515 |
+
width: unset;
|
| 516 |
+
color: unset;
|
| 517 |
+
font: unset;
|
| 518 |
+
}
|
| 519 |
+
|
| 520 |
+
a#has-i18n::before {
|
| 521 |
+
margin: auto 0;
|
| 522 |
+
border-radius: 2pt;
|
| 523 |
+
background: var(--flag) center/cover;
|
| 524 |
+
width: 1em;
|
| 525 |
+
height: 0.75em;
|
| 526 |
+
content: '';
|
| 527 |
+
}
|
| 528 |
+
|
| 529 |
+
/* multilingual */
|
| 530 |
+
|
| 531 |
+
#i18n-menu {
|
| 532 |
+
margin-top: 1ex;
|
| 533 |
+
}
|
| 534 |
+
|
| 535 |
+
.languangeName {
|
| 536 |
+
display: block !important;
|
| 537 |
+
margin-left: 0.5ex;
|
| 538 |
+
}
|
| 539 |
+
|
| 540 |
+
/* hide desktop element */
|
| 541 |
+
|
| 542 |
+
a#has-i18n > .t,
|
| 543 |
+
#top-nav > nav .screening,
|
| 544 |
+
#top-nav > summary > .t,
|
| 545 |
+
#has-search[open] > summary,
|
| 546 |
+
#has-more-menu[open] > summary,
|
| 547 |
+
#has-more-menu .menu-icon,
|
| 548 |
+
#has-search .icon,
|
| 549 |
+
.iso639 {
|
| 550 |
+
display: none;
|
| 551 |
+
}
|
| 552 |
+
|
| 553 |
+
}
|
assets/css/component/search.css
ADDED
|
@@ -0,0 +1,210 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#has-search > summary::before {
|
| 2 |
+
padding: 0 1ex;
|
| 3 |
+
font-family: 'base-ui';
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
content: '\e911';
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
.form.on-plank,
|
| 9 |
+
.pagefind-ui {
|
| 10 |
+
margin: 1rem var(--void) 1rem auto;
|
| 11 |
+
width: calc(var(--marginparwidth) - 1rem);
|
| 12 |
+
min-width: 17rem;
|
| 13 |
+
max-height: calc(var(--vbody) - 2rem);
|
| 14 |
+
font-weight: normal;
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
.pagefind-ui {
|
| 18 |
+
display: flex;
|
| 19 |
+
flex-direction: column;
|
| 20 |
+
border: var(--border);
|
| 21 |
+
border-radius: 1ex;
|
| 22 |
+
background: var(--bg);
|
| 23 |
+
padding: 1.414ex;
|
| 24 |
+
overflow-y: auto;
|
| 25 |
+
gap: 1ex;
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
#has-search[open] > summary > .t,
|
| 29 |
+
.pagefind-ui__search-clear {
|
| 30 |
+
display: none;
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
.pagefind-ui__drawer p {
|
| 34 |
+
margin: 0;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
.form.on-plank {
|
| 38 |
+
flex-direction: row;
|
| 39 |
+
}
|
| 40 |
+
|
| 41 |
+
.form {
|
| 42 |
+
align-items: center;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
/* the search box */
|
| 46 |
+
|
| 47 |
+
.form__input {
|
| 48 |
+
flex: 1;
|
| 49 |
+
border: none;
|
| 50 |
+
border-radius: 2rem 0 0 2rem;
|
| 51 |
+
background: none;
|
| 52 |
+
padding: 0;
|
| 53 |
+
padding-left: 1em;
|
| 54 |
+
color: var(--fg);
|
| 55 |
+
font-family: var(--sf), sans-serif;
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
.form.on-plank .form__input {
|
| 59 |
+
flex: 1;
|
| 60 |
+
border-bottom: 2pt solid var(--g18s);
|
| 61 |
+
border-radius: 0.25ex;
|
| 62 |
+
padding: 1ex;
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
#duckduckgo .form__input {
|
| 66 |
+
--ac: #de5833;
|
| 67 |
+
}
|
| 68 |
+
|
| 69 |
+
#mojeek .form__input {
|
| 70 |
+
--ac: #7ab93c;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
.pagefind-ui__search-input:hover,
|
| 74 |
+
.pagefind-ui__search-input:focus,
|
| 75 |
+
.form.on-plank .form__input:hover,
|
| 76 |
+
.form.on-plank .form__input:focus {
|
| 77 |
+
--anm: underline 127ms ease-in;
|
| 78 |
+
outline: none !important;
|
| 79 |
+
border-color: var(--ac);
|
| 80 |
+
-webkit-animation: var(--anm);
|
| 81 |
+
-moz-animation: var(--anm);
|
| 82 |
+
-o-animation: var(--anm);
|
| 83 |
+
animation: var(--anm);
|
| 84 |
+
}
|
| 85 |
+
|
| 86 |
+
/* the search button */
|
| 87 |
+
|
| 88 |
+
.pagefind-ui__button,
|
| 89 |
+
.form__reset,
|
| 90 |
+
.form__button {
|
| 91 |
+
display: inline-flex;
|
| 92 |
+
position: relative;
|
| 93 |
+
border: none;
|
| 94 |
+
border-radius: 0 50% 50% 0;
|
| 95 |
+
background: none;
|
| 96 |
+
padding: 0;
|
| 97 |
+
}
|
| 98 |
+
|
| 99 |
+
.form.on-plank .form__button,
|
| 100 |
+
.form.on-plank .form__button > img {
|
| 101 |
+
width: 2rem;
|
| 102 |
+
height: 2rem;
|
| 103 |
+
object-fit: contain;
|
| 104 |
+
}
|
| 105 |
+
|
| 106 |
+
#duckduckgo .form__input:hover + .form__button,
|
| 107 |
+
#duckduckgo .form__input:focus + .form__button {
|
| 108 |
+
--tsf: scaleX(-1);
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
.form.on-plank .form__button:hover,
|
| 112 |
+
.form.on-plank .form__button:focus {
|
| 113 |
+
--tsf: scale(1.1);
|
| 114 |
+
}
|
| 115 |
+
|
| 116 |
+
.form:invalid .form__reset {
|
| 117 |
+
opacity: 0;
|
| 118 |
+
pointer-events: none;
|
| 119 |
+
}
|
| 120 |
+
|
| 121 |
+
.form:valid .form__reset {
|
| 122 |
+
opacity: 1;
|
| 123 |
+
pointer-events: all;
|
| 124 |
+
}
|
| 125 |
+
|
| 126 |
+
/* additional pagefind styles */
|
| 127 |
+
|
| 128 |
+
.pagefind-ui__form {
|
| 129 |
+
display: flex;
|
| 130 |
+
flex-direction: column;
|
| 131 |
+
gap: 1ex;
|
| 132 |
+
}
|
| 133 |
+
|
| 134 |
+
.pagefind-ui__search-input {
|
| 135 |
+
margin: 1ex 1ex 0.5ex;
|
| 136 |
+
border: 0;
|
| 137 |
+
border-bottom: 2pt solid var(--g18s);
|
| 138 |
+
background: none;
|
| 139 |
+
padding: 1ex !important;
|
| 140 |
+
color: var(--fg);
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
.pagefind-ui__drawer {
|
| 144 |
+
margin: 0 1ex;
|
| 145 |
+
padding: 0 1ex;
|
| 146 |
+
}
|
| 147 |
+
|
| 148 |
+
p.pagefind-ui__message {
|
| 149 |
+
margin: 1ex 0;
|
| 150 |
+
}
|
| 151 |
+
|
| 152 |
+
.pagefind-ui__result-excerpt {
|
| 153 |
+
color: var(--mid);
|
| 154 |
+
font-size: var(--small);
|
| 155 |
+
}
|
| 156 |
+
|
| 157 |
+
ol.pagefind-ui__results {
|
| 158 |
+
margin: 0;
|
| 159 |
+
padding: 0;
|
| 160 |
+
list-style: none;
|
| 161 |
+
}
|
| 162 |
+
|
| 163 |
+
.pagefind-ui__result {
|
| 164 |
+
margin-bottom: 1rem;
|
| 165 |
+
}
|
| 166 |
+
|
| 167 |
+
a.pagefind-ui__result-link {
|
| 168 |
+
border-bottom: 0 !important;
|
| 169 |
+
padding: 1ex 1ex 0.5ex !important;
|
| 170 |
+
font-weight: 550;
|
| 171 |
+
}
|
| 172 |
+
|
| 173 |
+
.pagefind-ui__result-excerpt {
|
| 174 |
+
padding: 0 1ex;
|
| 175 |
+
font-size: 0.9em;
|
| 176 |
+
}
|
| 177 |
+
|
| 178 |
+
@media (max-width: 640px) {
|
| 179 |
+
|
| 180 |
+
#has-search .on-deck {
|
| 181 |
+
flex-direction: row-reverse;
|
| 182 |
+
}
|
| 183 |
+
|
| 184 |
+
#has-search .t {
|
| 185 |
+
padding: 1ex;
|
| 186 |
+
text-align: unset;
|
| 187 |
+
}
|
| 188 |
+
|
| 189 |
+
#search,
|
| 190 |
+
#has-search-fallback {
|
| 191 |
+
position: unset;
|
| 192 |
+
padding: 0;
|
| 193 |
+
width: unset;
|
| 194 |
+
height: unset;
|
| 195 |
+
}
|
| 196 |
+
|
| 197 |
+
.pagefind-ui,
|
| 198 |
+
.form.on-plank {
|
| 199 |
+
margin: 0;
|
| 200 |
+
border: unset;
|
| 201 |
+
background: unset;
|
| 202 |
+
padding: 0;
|
| 203 |
+
width: 100%;
|
| 204 |
+
}
|
| 205 |
+
|
| 206 |
+
#duckduckgo {
|
| 207 |
+
padding: 1ex;
|
| 208 |
+
}
|
| 209 |
+
|
| 210 |
+
}
|
assets/css/component/share.css
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
.form#mastodon {
|
| 2 |
+
display: inline-flex;
|
| 3 |
+
width: 100%;
|
| 4 |
+
}
|
| 5 |
+
|
| 6 |
+
#mastodonInstance {
|
| 7 |
+
/* passive mode; display as button */
|
| 8 |
+
display: none;
|
| 9 |
+
height: 2.654rem;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
#has-mastodon.active {
|
| 13 |
+
/* active mode display as form */
|
| 14 |
+
flex: 1;
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
#has-mastodon.active #mastodonInstance {
|
| 18 |
+
display: initial !important;
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
#has-mastodon.active #mastodon {
|
| 22 |
+
border: 3pt solid #563acc02;
|
| 23 |
+
border-radius: 2rem;
|
| 24 |
+
background: #563acc22;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
#mastodonInstance ~ button:focus .mastodon,
|
| 28 |
+
#mastodonInstance:focus ~ button .mastodon {
|
| 29 |
+
background: #4f36b5;
|
| 30 |
+
color: #fff;
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
#has-share {
|
| 34 |
+
margin:var(--vskip);
|
| 35 |
+
padding-bottom: 2pt;
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
#has-share[open] {
|
| 39 |
+
/* strut */
|
| 40 |
+
padding: 0;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
#share {
|
| 44 |
+
float: left;
|
| 45 |
+
margin: 5pt 0;
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
#has-share[open] #share {
|
| 49 |
+
background: unset;
|
| 50 |
+
color: unset;
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
#has-share[open] #share::after {
|
| 54 |
+
content: ':';
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
#has-share ul {
|
| 58 |
+
display: flex;
|
| 59 |
+
position: relative;
|
| 60 |
+
flex-wrap: wrap;
|
| 61 |
+
align-items: center;
|
| 62 |
+
justify-content: center;
|
| 63 |
+
text-align: center;
|
| 64 |
+
}
|
| 65 |
+
|
| 66 |
+
#has-share a {
|
| 67 |
+
display: inline-flex;
|
| 68 |
+
position: relative;
|
| 69 |
+
align-items: center;
|
| 70 |
+
border: none;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
#has-share i {
|
| 74 |
+
border-radius: 2rem;
|
| 75 |
+
padding: 0.62rem;
|
| 76 |
+
font-size: var(--Large);
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
#has-share i:hover {
|
| 80 |
+
--tst: 200ms ease-in;
|
| 81 |
+
opacity: 1;
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
#has-share a:focus i,
|
| 85 |
+
#has-share i:hover {
|
| 86 |
+
color: #fff !important;
|
| 87 |
+
}
|
| 88 |
+
|
| 89 |
+
/* Social sharing button */
|
| 90 |
+
#has-share .email {color: var(--mid)}
|
| 91 |
+
#has-share a:focus .email,
|
| 92 |
+
#has-share .email:hover {background: var(--mid)}
|
| 93 |
+
#has-share .bluesky {color: #1185fe}
|
| 94 |
+
#has-share a:focus .bluesky,
|
| 95 |
+
#has-share .bluesky:hover {background: #0072ce}
|
| 96 |
+
#has-share .facebook {color: #3b5998}
|
| 97 |
+
#has-share a:focus .facebook,
|
| 98 |
+
#has-share .facebook:hover {background: #2d4373}
|
| 99 |
+
#has-share .hackernews {color: #FF6600}
|
| 100 |
+
#has-share a:focus .hackernews,
|
| 101 |
+
#has-share .hackernews:hover {background: #FB6200}
|
| 102 |
+
#has-share .linkedin {color: #0077b5}
|
| 103 |
+
#has-share a:focus .linkedin,
|
| 104 |
+
#has-share .linkedin:hover {background: #046293}
|
| 105 |
+
#has-share .mastodon {color: #563acc}
|
| 106 |
+
#has-share a:focus .mastodon,
|
| 107 |
+
#has-share .mastodon:hover {background: #4f36b5}
|
| 108 |
+
#has-share .pinterest {color: #bd081c}
|
| 109 |
+
#has-share a:focus .pinterest,
|
| 110 |
+
#has-share .pinterest:hover {background: #8c0615}
|
| 111 |
+
#has-share .reddit {color: #5f99cf}
|
| 112 |
+
#has-share a:focus .reddit,
|
| 113 |
+
#has-share .reddit:hover {background: #3a80c1}
|
| 114 |
+
#has-share .telegram {color: #54A9EB}
|
| 115 |
+
#has-share a:focus .telegram,
|
| 116 |
+
#has-share .telegram:hover {background: #4B97D1}
|
| 117 |
+
#has-share .tumblr {color: #35465C}
|
| 118 |
+
#has-share a:focus .tumblr,
|
| 119 |
+
#has-share .tumblr:hover {background: #222d3c}
|
| 120 |
+
#has-share .twitter {color: #55acee}
|
| 121 |
+
#has-share a:focus .twitter,
|
| 122 |
+
#has-share .twitter:hover {background: #2795e9}
|
| 123 |
+
#has-share .vk {color: #507299}
|
| 124 |
+
#has-share a:focus .vk,
|
| 125 |
+
#has-share .vk:hover {background: #43648c}
|
| 126 |
+
#has-share .whatsapp {color: #25D366}
|
| 127 |
+
#has-share a:focus .whatsapp,
|
| 128 |
+
#has-share .whatsapp:hover {background: #1DA851}
|
| 129 |
+
#has-share .xing {color: #1a7576}
|
| 130 |
+
#has-share a:focus .xing,
|
| 131 |
+
#has-share .xing:hover {background: #114C4C}
|
| 132 |
+
|
| 133 |
+
@media (max-width: 844px) {
|
| 134 |
+
|
| 135 |
+
#share {
|
| 136 |
+
float: unset;
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
#has-mastodon.active {
|
| 140 |
+
flex: 0 0 100%;
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
#has-mastodon.active #mastodon {
|
| 144 |
+
margin-bottom: 1ex;
|
| 145 |
+
max-width: 27em;
|
| 146 |
+
}
|
| 147 |
+
|
| 148 |
+
}
|
assets/css/component/skipper.css
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#to-content {
|
| 2 |
+
/* displayed to screen reader,
|
| 3 |
+
but visually removed to oustide canvas */
|
| 4 |
+
--tsf: translateY(-100vmax);
|
| 5 |
+
display: flex;
|
| 6 |
+
position: fixed;
|
| 7 |
+
top: 0;
|
| 8 |
+
left: 0;
|
| 9 |
+
align-items: center;
|
| 10 |
+
justify-content: center;
|
| 11 |
+
z-index: 3;
|
| 12 |
+
outline: none !important;
|
| 13 |
+
background: var(--bg) !important;
|
| 14 |
+
width: 100vw;
|
| 15 |
+
height: var(--vhead);
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
#to-content:focus {
|
| 19 |
+
/* replace top nav on focus */
|
| 20 |
+
--tsf: translate(0);
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
body > footer > nav {
|
| 24 |
+
margin-left: auto;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
#to-top {
|
| 28 |
+
display: flex;
|
| 29 |
+
align-items: center;
|
| 30 |
+
justify-content: center;
|
| 31 |
+
border: none;
|
| 32 |
+
border-radius: 2rem;
|
| 33 |
+
background: var(--bg);
|
| 34 |
+
width: 2.7rem;
|
| 35 |
+
height: 2.7rem;
|
| 36 |
+
color: var(--fg);
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
#to-top::before {
|
| 40 |
+
--tsf: rotate(-45deg);
|
| 41 |
+
display: inline-flex;
|
| 42 |
+
transition: 0.2s;
|
| 43 |
+
font-family: 'base-ui';
|
| 44 |
+
content: '\e902';
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
#to-top:hover::before,
|
| 48 |
+
#to-top:focus::before {
|
| 49 |
+
--tsf: unset;
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
.to-content-top#to-top::before {
|
| 53 |
+
--tsf: rotate(180deg)
|
| 54 |
+
}
|
assets/css/component/slide.css
ADDED
|
@@ -0,0 +1,179 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* this style is used inline in list.html */
|
| 2 |
+
|
| 3 |
+
.carousel__nav {
|
| 4 |
+
display: flex;
|
| 5 |
+
position: absolute;
|
| 6 |
+
right: 2rem;
|
| 7 |
+
bottom: 1rem;
|
| 8 |
+
justify-content: flex-end;
|
| 9 |
+
z-index: 1;
|
| 10 |
+
width: calc(100% - 4rem);
|
| 11 |
+
font-size: var(--small);
|
| 12 |
+
}
|
| 13 |
+
|
| 14 |
+
.carousel__viewport__slide > .carousel__nav {
|
| 15 |
+
bottom: 0;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
.carousel__nav > ul {
|
| 19 |
+
overflow-x: auto;
|
| 20 |
+
white-space: nowrap;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
.carousel__viewport nav a {
|
| 24 |
+
display: flex;
|
| 25 |
+
z-index: 2;
|
| 26 |
+
font-size: var(--small);
|
| 27 |
+
}
|
| 28 |
+
|
| 29 |
+
.carousel__viewport__slide__cover {
|
| 30 |
+
flex: 1 1 40%;
|
| 31 |
+
padding: 1.5rem 0 3.6rem 1.5rem;
|
| 32 |
+
height: 100%;
|
| 33 |
+
max-height: 1024px;
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
.carousel__viewport__slide__content {
|
| 37 |
+
margin-bottom: auto;
|
| 38 |
+
padding: 0 2rem;
|
| 39 |
+
width: 100%;
|
| 40 |
+
max-height: calc(100% - 3.6rem);
|
| 41 |
+
overflow-y: auto;
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
.carousel__viewport__slide__content h1.section-title {
|
| 45 |
+
margin: 0 !important;
|
| 46 |
+
padding: var(--smallskip) 0 1ex;
|
| 47 |
+
font-size: var(--Large);
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
.carousel__viewport__slide__content h2 {
|
| 51 |
+
font-size: var(--large);
|
| 52 |
+
}
|
| 53 |
+
|
| 54 |
+
.carousel__viewport__slide__content h3 {
|
| 55 |
+
font-size: var(--normalsize);
|
| 56 |
+
}
|
| 57 |
+
|
| 58 |
+
.carousel__viewport__slide__content p {
|
| 59 |
+
max-width: var(--canonic);
|
| 60 |
+
}
|
| 61 |
+
|
| 62 |
+
|
| 63 |
+
.carousel__viewport__slide__content .footnotes p,
|
| 64 |
+
.carousel__viewport__slide__cover + .carousel__viewport__slide__content p {
|
| 65 |
+
max-width: unset;
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
.carousel__viewport__slide__cover + .carousel__viewport__slide__content {
|
| 69 |
+
flex: 1 1 60%;
|
| 70 |
+
margin-bottom: 5rem;
|
| 71 |
+
height: unset;
|
| 72 |
+
}
|
| 73 |
+
|
| 74 |
+
.carousel__viewport__slide__cover img {
|
| 75 |
+
border-radius: 1ex;
|
| 76 |
+
width: 100%;
|
| 77 |
+
height: 100%;
|
| 78 |
+
object-fit: cover;
|
| 79 |
+
}
|
| 80 |
+
|
| 81 |
+
/* 2 item */
|
| 82 |
+
|
| 83 |
+
.carousel__viewport__slide > nav a {
|
| 84 |
+
text-transform: uppercase;
|
| 85 |
+
letter-spacing: 0.1em;
|
| 86 |
+
color: var(--fg);
|
| 87 |
+
}
|
| 88 |
+
|
| 89 |
+
@media (max-width: 960px) {
|
| 90 |
+
|
| 91 |
+
aside.carousel {
|
| 92 |
+
width: unset;
|
| 93 |
+
}
|
| 94 |
+
|
| 95 |
+
}
|
| 96 |
+
|
| 97 |
+
@media (max-width: 640px) {
|
| 98 |
+
|
| 99 |
+
.carousel__nav {
|
| 100 |
+
right: 0;
|
| 101 |
+
bottom: 0;
|
| 102 |
+
width: 100%;
|
| 103 |
+
}
|
| 104 |
+
|
| 105 |
+
.carousel__viewport__slide__cover img,
|
| 106 |
+
.carousel__nav + .carousel__viewport,
|
| 107 |
+
.carousel__viewport__slide__content {
|
| 108 |
+
height: calc(100% - 3rem);
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
.carousel__viewport__slide > .carousel__nav {
|
| 112 |
+
position: sticky;
|
| 113 |
+
position: -webkit-sticky;
|
| 114 |
+
padding-right: 2ex;
|
| 115 |
+
}
|
| 116 |
+
|
| 117 |
+
aside .carousel__viewport > div,
|
| 118 |
+
aside .carousel__viewport > section,
|
| 119 |
+
aside .carousel__viewport__slide {
|
| 120 |
+
flex-direction: column;
|
| 121 |
+
justify-content: end;
|
| 122 |
+
height: 100%;
|
| 123 |
+
overflow-x: hidden;
|
| 124 |
+
overflow-y: auto;
|
| 125 |
+
}
|
| 126 |
+
|
| 127 |
+
.carousel__viewport__slide__cover {
|
| 128 |
+
padding: unset;
|
| 129 |
+
height: unset;
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
.carousel__viewport__slide__cover img {
|
| 133 |
+
position: absolute;
|
| 134 |
+
left: 0;
|
| 135 |
+
border-radius: 1ex;
|
| 136 |
+
padding: 1rem;
|
| 137 |
+
max-width: 100%;
|
| 138 |
+
}
|
| 139 |
+
|
| 140 |
+
.carousel__nav + .carousel__viewport .carousel__viewport__slide__cover img {
|
| 141 |
+
height: 100%;
|
| 142 |
+
}
|
| 143 |
+
|
| 144 |
+
.carousel__viewport__slide__content {
|
| 145 |
+
padding: 1rem 2rem;
|
| 146 |
+
max-height: unset;
|
| 147 |
+
}
|
| 148 |
+
|
| 149 |
+
.carousel__nav + .carousel__viewport .carousel__viewport__slide__content:first-child {
|
| 150 |
+
margin-bottom: 1rem;
|
| 151 |
+
}
|
| 152 |
+
|
| 153 |
+
.carousel__viewport__slide__cover + .carousel__viewport__slide__content {
|
| 154 |
+
flex: unset;
|
| 155 |
+
z-index: 0;
|
| 156 |
+
margin: 1rem 2rem 2rem;
|
| 157 |
+
border-radius: 1ex;
|
| 158 |
+
background: var(--bg);
|
| 159 |
+
padding: 1rem;
|
| 160 |
+
width: auto;
|
| 161 |
+
}
|
| 162 |
+
|
| 163 |
+
.carousel__viewport__slide__cover + .carousel__viewport__slide__content.white {
|
| 164 |
+
background: none;
|
| 165 |
+
color: #fff;
|
| 166 |
+
}
|
| 167 |
+
|
| 168 |
+
.carousel__viewport__slide__cover + .carousel__viewport__slide__content.black {
|
| 169 |
+
background: none;
|
| 170 |
+
color: #000;
|
| 171 |
+
}
|
| 172 |
+
|
| 173 |
+
.carousel__nav > ul.rounded {
|
| 174 |
+
padding: 1ex;
|
| 175 |
+
width: 100%;
|
| 176 |
+
text-align: right;
|
| 177 |
+
}
|
| 178 |
+
|
| 179 |
+
}
|
assets/css/custom.css
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
:root {
|
| 2 |
+
/* default contrast */
|
| 3 |
+
--ac-light: #36c;
|
| 4 |
+
--fg-light: #111;
|
| 5 |
+
--bg-light: #f9f9fb;
|
| 6 |
+
--midtone: gray;
|
| 7 |
+
--fg-dark: #f9f9fb;
|
| 8 |
+
--bg-dark: #111;
|
| 9 |
+
--ac-dark: #fa0;
|
| 10 |
+
|
| 11 |
+
/* less contrast */
|
| 12 |
+
--ac-light-less: #36c;
|
| 13 |
+
--fg-light-less: #13253d;
|
| 14 |
+
--bg-light-less: #e7e2e2;
|
| 15 |
+
--midtone-less: #7d8490;
|
| 16 |
+
--fg-dark-less: #e7e2e2;
|
| 17 |
+
--bg-dark-less: #13253d;
|
| 18 |
+
--ac-dark-less: #fa0;
|
| 19 |
+
|
| 20 |
+
/* more contrast */
|
| 21 |
+
--ac-light-more: #36c;
|
| 22 |
+
--fg-light-more: #000;
|
| 23 |
+
--bg-light-more: #fff;
|
| 24 |
+
--midtone-more: gray;
|
| 25 |
+
--fg-dark-more: #fff;
|
| 26 |
+
--bg-dark-more: #000;
|
| 27 |
+
--ac-dark-more: #fa0;
|
| 28 |
+
|
| 29 |
+
/* mark & selector highlight color */
|
| 30 |
+
--hl: yellow;
|
| 31 |
+
}
|
assets/css/layout/_default/baseof.css
ADDED
|
@@ -0,0 +1,332 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*
|
| 2 |
+
<body
|
| 3 |
+
id='$layout'
|
| 4 |
+
class='$colorpalette'
|
| 5 |
+
>
|
| 6 |
+
<header>=====[sticky]======</header>
|
| 7 |
+
<main id='$kind'>
|
| 8 |
+
<footer id=main-footer></footer>
|
| 9 |
+
</main>
|
| 10 |
+
<footer>=====[sticky]======<</footer>
|
| 11 |
+
</body>
|
| 12 |
+
*/
|
| 13 |
+
|
| 14 |
+
:root {
|
| 15 |
+
--golden-ratio: 61.803398%;
|
| 16 |
+
--canonic: 70.710678%;
|
| 17 |
+
--max-width: 67rem;
|
| 18 |
+
--void: calc((29.289322vw - 1rem) / 2); /* 100vw - 70.710678vw */
|
| 19 |
+
--vhead: 4.2rem;
|
| 20 |
+
--vfoot: 3.33rem;
|
| 21 |
+
--vbody: calc(100vh - var(--vhead) - var(--vfoot));
|
| 22 |
+
--marginparwidth: 27vw; /* --canonic - ( --canonic * --golden-ratio) */
|
| 23 |
+
--g18: #80808080;
|
| 24 |
+
--g18s: #80808022;
|
| 25 |
+
--bound: 1pt dotted var(--g18);
|
| 26 |
+
--border: 1pt solid var(--g18s);
|
| 27 |
+
--box-shadow: 0 1px 0.5px var(--g18);
|
| 28 |
+
--box-shadow-inset: inset 0 1px 5px #0001, 0 1px 0 #fff5, 0 -1px 0 #0005;
|
| 29 |
+
font-size: calc(var(--fontScale) * 10pt);
|
| 30 |
+
}
|
| 31 |
+
|
| 32 |
+
::-webkit-scrollbar {
|
| 33 |
+
/* width: 8pt;
|
| 34 |
+
height: 8pt; */
|
| 35 |
+
scroll-behavior: smooth;
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
::-webkit-scrollbar-track {
|
| 39 |
+
background: transparent;
|
| 40 |
+
border-radius: 9pt !important;
|
| 41 |
+
}
|
| 42 |
+
|
| 43 |
+
::-webkit-scrollbar-thumb {
|
| 44 |
+
background: var(--g18);
|
| 45 |
+
opacity: 0.86;
|
| 46 |
+
border-radius: 9pt !important;
|
| 47 |
+
}
|
| 48 |
+
|
| 49 |
+
* {
|
| 50 |
+
box-sizing: border-box;
|
| 51 |
+
scrollbar-color: var(--g18) transparent;
|
| 52 |
+
scrollbar-width: thin;
|
| 53 |
+
text-rendering: optimizeLegibility;
|
| 54 |
+
kerning: auto;
|
| 55 |
+
font-kerning: auto;
|
| 56 |
+
-webkit-font-feature-settings: 'kern' 1;
|
| 57 |
+
-moz-font-feature-settings: 'kern' 1;
|
| 58 |
+
font-feature-settings: 'kern' 1;
|
| 59 |
+
-webkit-hyphens: auto;
|
| 60 |
+
-moz-hyphens: auto;
|
| 61 |
+
hyphens: auto;
|
| 62 |
+
-webkit-hyphenate-after: 3;
|
| 63 |
+
hyphenate-after: 3;
|
| 64 |
+
-webkit-hyphenate-before: 3;
|
| 65 |
+
hyphenate-before: 3;
|
| 66 |
+
-webkit-hyphenate-lines: 2;
|
| 67 |
+
hyphenate-lines: 2;
|
| 68 |
+
orphans: 2;
|
| 69 |
+
widows: 2;
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
html {
|
| 73 |
+
scroll-behavior: smooth;
|
| 74 |
+
scroll-padding-block-start: var(--vhead);
|
| 75 |
+
}
|
| 76 |
+
|
| 77 |
+
body {
|
| 78 |
+
--y6a: #af7c9d; --w8u: #628618; --s8i: #ed7495; --n8e: #6c80b3;
|
| 79 |
+
--m4i: #355240; --y4i: #921823; --f8a: #7972b6; --s4n: #018ace;
|
| 80 |
+
--d3u: #654b3c; --r6a: #534b1a; --y4a: #13355b; --k8i: #ee850f;
|
| 81 |
+
--y6i: #00728c; --o5a: #8d2f4a; --c3u: #5b516a; --s5o: #365b75;
|
| 82 |
+
--s5e: #493280; --y7i: #00b1dd; --i3i: #e9142a; --t9u: #014d1f;
|
| 83 |
+
min-height: var(--vbody);
|
| 84 |
+
line-height: calc(var(--baselineStretch) * 1.414);
|
| 85 |
+
color: var(--fg);
|
| 86 |
+
font-family: var(--sf), sans-serif;
|
| 87 |
+
font-size: var(--normalsize);
|
| 88 |
+
}
|
| 89 |
+
|
| 90 |
+
body > header {
|
| 91 |
+
position: -webkit-sticky;
|
| 92 |
+
position: sticky;
|
| 93 |
+
top: 0;
|
| 94 |
+
align-items: center;
|
| 95 |
+
justify-content: space-between;
|
| 96 |
+
height: var(--vhead);
|
| 97 |
+
}
|
| 98 |
+
|
| 99 |
+
.marginpar,
|
| 100 |
+
body > main > aside {
|
| 101 |
+
position: relative;
|
| 102 |
+
float: right;
|
| 103 |
+
clear: right;
|
| 104 |
+
padding-left: var(--indent);
|
| 105 |
+
width: var(--marginparwidth);
|
| 106 |
+
}
|
| 107 |
+
|
| 108 |
+
body > footer {
|
| 109 |
+
display: flex !important;
|
| 110 |
+
position: -webkit-sticky;
|
| 111 |
+
position: sticky;
|
| 112 |
+
bottom: 0;
|
| 113 |
+
align-items: center;
|
| 114 |
+
justify-content: space-between;
|
| 115 |
+
z-index: 2;
|
| 116 |
+
height: var(--vfoot);
|
| 117 |
+
font-size: var(--small);
|
| 118 |
+
}
|
| 119 |
+
|
| 120 |
+
#top,
|
| 121 |
+
.pagewidth {
|
| 122 |
+
padding-right: var(--void);
|
| 123 |
+
padding-left: var(--void);
|
| 124 |
+
/* width: var(--canonic);
|
| 125 |
+
max-width: var(--max-width); */
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
+
.textwidth {
|
| 129 |
+
width: var(--golden-ratio);
|
| 130 |
+
}
|
| 131 |
+
|
| 132 |
+
#main-footer {
|
| 133 |
+
position: relative;
|
| 134 |
+
margin: 1in 1em 1em;
|
| 135 |
+
padding: 1.618rem;
|
| 136 |
+
width: calc(100% - 2em);
|
| 137 |
+
font-size: var(--small);
|
| 138 |
+
}
|
| 139 |
+
|
| 140 |
+
#main-footer > div {
|
| 141 |
+
padding: 0 calc(var(--void) - 1em - 1.618rem);
|
| 142 |
+
}
|
| 143 |
+
|
| 144 |
+
#main-footer strong,
|
| 145 |
+
#main-footer b,
|
| 146 |
+
#main-footer .section-title,
|
| 147 |
+
#menu-footer::before {
|
| 148 |
+
padding-bottom: 1ex;
|
| 149 |
+
}
|
| 150 |
+
|
| 151 |
+
#main-footer ul {
|
| 152 |
+
list-style: none;
|
| 153 |
+
margin: 0;
|
| 154 |
+
padding: 0;
|
| 155 |
+
line-height: 2;
|
| 156 |
+
}
|
| 157 |
+
|
| 158 |
+
#main-footer a {
|
| 159 |
+
margin: 1pt 0;
|
| 160 |
+
padding: 2pt 0;
|
| 161 |
+
}
|
| 162 |
+
|
| 163 |
+
#main-footer-primary,
|
| 164 |
+
#main-footer-secondary > * {
|
| 165 |
+
border: 0.1pt solid transparent;
|
| 166 |
+
break-inside: avoid-column;
|
| 167 |
+
}
|
| 168 |
+
|
| 169 |
+
#main-footer p {
|
| 170 |
+
margin: 0;
|
| 171 |
+
}
|
| 172 |
+
|
| 173 |
+
#menu-footer:first-child {
|
| 174 |
+
column-span: all;
|
| 175 |
+
text-align: center;
|
| 176 |
+
}
|
| 177 |
+
|
| 178 |
+
#license + #menu-footer::before,
|
| 179 |
+
#menu-footer a::after {
|
| 180 |
+
content: unset !important;
|
| 181 |
+
}
|
| 182 |
+
|
| 183 |
+
div + #unified-footer {
|
| 184 |
+
margin-top: 1.618rem;
|
| 185 |
+
border-top: var(--bound);
|
| 186 |
+
padding-top: 1.618rem !important;
|
| 187 |
+
}
|
| 188 |
+
|
| 189 |
+
#unified-footer {
|
| 190 |
+
text-align: center;
|
| 191 |
+
}
|
| 192 |
+
|
| 193 |
+
#unified-footer p {
|
| 194 |
+
padding: 1ex 1em;
|
| 195 |
+
font-size: var(--footnotesize);
|
| 196 |
+
}
|
| 197 |
+
|
| 198 |
+
@media screen {
|
| 199 |
+
|
| 200 |
+
body {
|
| 201 |
+
/* exit graceful degradation mode inline css */
|
| 202 |
+
margin: 0 !important;
|
| 203 |
+
padding: unset !important;
|
| 204 |
+
max-width: unset !important;
|
| 205 |
+
}
|
| 206 |
+
|
| 207 |
+
}
|
| 208 |
+
|
| 209 |
+
@media (min-width: 1440px) {
|
| 210 |
+
|
| 211 |
+
:root {
|
| 212 |
+
--void: calc((100vw - var(--max-width) - 1rem) / 2) !important;
|
| 213 |
+
--marginparwidth: calc(var(--max-width) * 0.38196602) !important;
|
| 214 |
+
/* --max-width - (100% - --golden-ratio) */
|
| 215 |
+
}
|
| 216 |
+
|
| 217 |
+
}
|
| 218 |
+
|
| 219 |
+
@media (max-width: 960px) {
|
| 220 |
+
|
| 221 |
+
:root {
|
| 222 |
+
--void: calc(29.289322vw - var(--vfoot) - var(--vhead)) / 2);
|
| 223 |
+
}
|
| 224 |
+
|
| 225 |
+
}
|
| 226 |
+
|
| 227 |
+
@media (max-width: 640px) {
|
| 228 |
+
|
| 229 |
+
:root {
|
| 230 |
+
--void: var(--vfoot) !important;
|
| 231 |
+
--marginparwidth: 100% !important;
|
| 232 |
+
--canonic: 86%;
|
| 233 |
+
--golden-ratio: 100%;
|
| 234 |
+
}
|
| 235 |
+
|
| 236 |
+
.katex-display {
|
| 237 |
+
overflow-x: auto;
|
| 238 |
+
}
|
| 239 |
+
|
| 240 |
+
}
|
| 241 |
+
|
| 242 |
+
@media (max-width: 540px) {
|
| 243 |
+
|
| 244 |
+
:root {
|
| 245 |
+
--void: calc(var(--vfoot) / 1.414) !important;
|
| 246 |
+
}
|
| 247 |
+
|
| 248 |
+
#main-footer-primary,
|
| 249 |
+
#main-footer-secondary {
|
| 250 |
+
column-span: all;
|
| 251 |
+
}
|
| 252 |
+
|
| 253 |
+
}
|
| 254 |
+
|
| 255 |
+
@media (max-width: 480px) {
|
| 256 |
+
|
| 257 |
+
header.pagewidth,
|
| 258 |
+
footer.pagewidth {
|
| 259 |
+
--void: calc(var(--vfoot) / 2) !important;
|
| 260 |
+
}
|
| 261 |
+
|
| 262 |
+
}
|
| 263 |
+
|
| 264 |
+
@media (prefers-color-scheme: light) {
|
| 265 |
+
|
| 266 |
+
body {
|
| 267 |
+
--bg: var(--bg-light);
|
| 268 |
+
--mid: var(--midtone);
|
| 269 |
+
--fg: var(--fg-light);
|
| 270 |
+
--ac: var(--ac-light);
|
| 271 |
+
--off: #000;
|
| 272 |
+
}
|
| 273 |
+
|
| 274 |
+
@media (prefers-contrast: more),
|
| 275 |
+
(-ms-high-contrast: active) {
|
| 276 |
+
|
| 277 |
+
body {
|
| 278 |
+
--bg: var(--bg-light-more);
|
| 279 |
+
--mid: var(--midtone-more);
|
| 280 |
+
--fg: var(--fg-light-more);
|
| 281 |
+
--ac: var(--ac-light-more);
|
| 282 |
+
}
|
| 283 |
+
|
| 284 |
+
}
|
| 285 |
+
|
| 286 |
+
@media (prefers-contrast: less) {
|
| 287 |
+
|
| 288 |
+
body {
|
| 289 |
+
--bg: var(--bg-light-less);
|
| 290 |
+
--mid: var(--midtone-less);
|
| 291 |
+
--fg: var(--fg-light-less);
|
| 292 |
+
--ac: var(--ac-light-less);
|
| 293 |
+
}
|
| 294 |
+
|
| 295 |
+
}
|
| 296 |
+
|
| 297 |
+
}
|
| 298 |
+
|
| 299 |
+
@media (prefers-color-scheme: dark) {
|
| 300 |
+
|
| 301 |
+
body {
|
| 302 |
+
--bg: var(--bg-dark);
|
| 303 |
+
--mid: var(--midtone);
|
| 304 |
+
--fg: var(--fg-dark);
|
| 305 |
+
--ac: var(--ac-dark);
|
| 306 |
+
--off: #fff;
|
| 307 |
+
}
|
| 308 |
+
|
| 309 |
+
@media (prefers-contrast: more),
|
| 310 |
+
(-ms-high-contrast: active) {
|
| 311 |
+
|
| 312 |
+
body {
|
| 313 |
+
--bg: var(--bg-dark-more);
|
| 314 |
+
--mid: var(--midtone-more);
|
| 315 |
+
--fg: var(--fg-dark-more);
|
| 316 |
+
--ac: var(--ac-dark-more);
|
| 317 |
+
}
|
| 318 |
+
|
| 319 |
+
}
|
| 320 |
+
|
| 321 |
+
@media (prefers-contrast: less) {
|
| 322 |
+
|
| 323 |
+
body {
|
| 324 |
+
--bg: var(--bg-dark-less);
|
| 325 |
+
--mid: var(--midtone-less);
|
| 326 |
+
--fg: var(--fg-dark-less);
|
| 327 |
+
--ac: var(--ac-dark-less);
|
| 328 |
+
}
|
| 329 |
+
|
| 330 |
+
}
|
| 331 |
+
|
| 332 |
+
}
|
assets/css/layout/_default/home.css
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/* this style is used inline in list.html */
|
| 2 |
+
|
| 3 |
+
body {
|
| 4 |
+
margin: auto !important;
|
| 5 |
+
max-width: 2560px !important;
|
| 6 |
+
}
|
| 7 |
+
|
| 8 |
+
body > footer.pagewidth,
|
| 9 |
+
body > header.pagewidth {
|
| 10 |
+
padding: 0 calc(1.5rem + 1ex);
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
body > aside.carousel {
|
| 14 |
+
position: sticky;
|
| 15 |
+
position: -webkit-sticky;
|
| 16 |
+
left: 0;
|
| 17 |
+
float: left;
|
| 18 |
+
/* border: var(--border);
|
| 19 |
+
border-radius: 1ex; */
|
| 20 |
+
padding: 1rem;
|
| 21 |
+
width: 38vw;
|
| 22 |
+
height: var(--vbody);
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
body > main#home {
|
| 26 |
+
height: var(--vbody);
|
| 27 |
+
min-height: unset;
|
| 28 |
+
overflow-y: auto;
|
| 29 |
+
}
|
| 30 |
+
|
| 31 |
+
body > main#home > aside#list-tags {
|
| 32 |
+
top: 0;
|
| 33 |
+
right: 0;
|
| 34 |
+
margin: 1rem auto;
|
| 35 |
+
width: calc(100% - var(--golden-ratio));
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
#home #top {
|
| 39 |
+
padding: 0 1rem;
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
#home #list-posts {
|
| 43 |
+
padding: 1rem;
|
| 44 |
+
width: var(--golden-ratio);
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
div[role="feed"] {
|
| 48 |
+
padding: 0 1ex;
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
.carousel .feed-item,
|
| 52 |
+
#home .feed-item,
|
| 53 |
+
hr.ldots {
|
| 54 |
+
width: unset;
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
#main-footer > .pagewidth {
|
| 58 |
+
padding: 0;
|
| 59 |
+
}
|
| 60 |
+
|
| 61 |
+
#i18n-menu > .on-plank,
|
| 62 |
+
#more-menu > .on-plank,
|
| 63 |
+
#duckduckgo,
|
| 64 |
+
.pagefind-ui {
|
| 65 |
+
margin-right: 1rem;
|
| 66 |
+
}
|
| 67 |
+
|
| 68 |
+
#has-search-fallback.pagewidth {
|
| 69 |
+
padding-right: 1rem;
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
#grain {
|
| 73 |
+
display: none;
|
| 74 |
+
}
|
| 75 |
+
|
| 76 |
+
@media (max-width: 960px) {
|
| 77 |
+
body > aside.carousel {
|
| 78 |
+
float: unset;
|
| 79 |
+
padding: 0;
|
| 80 |
+
width: unset;
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
body > main#home {
|
| 84 |
+
height: unset;
|
| 85 |
+
overflow-y: unset;
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
aside + main#home {
|
| 89 |
+
margin-top: var(--vhead);
|
| 90 |
+
}
|
| 91 |
+
|
| 92 |
+
body > main#home > aside#list-tags {
|
| 93 |
+
top: var(--vhead);
|
| 94 |
+
}
|
| 95 |
+
|
| 96 |
+
}
|
| 97 |
+
|
| 98 |
+
@media (max-width: 640px) {
|
| 99 |
+
|
| 100 |
+
body > main#home > aside#list-tags,
|
| 101 |
+
#home #list-posts {
|
| 102 |
+
margin: var(--bigskip) auto;
|
| 103 |
+
padding: 0 var(--void);
|
| 104 |
+
width: var(--golden-ratio);
|
| 105 |
+
}
|
| 106 |
+
|
| 107 |
+
div[role="feed"] {
|
| 108 |
+
padding: 0;
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
.form.on-plank,
|
| 112 |
+
.pagefind-ui {
|
| 113 |
+
margin-right: 1ex;
|
| 114 |
+
}
|
| 115 |
+
|
| 116 |
+
}
|
assets/css/layout/_default/list.css
ADDED
|
@@ -0,0 +1,148 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
hr.ldots {
|
| 2 |
+
margin-left: 0;
|
| 3 |
+
border: none;
|
| 4 |
+
width: var(--golden-ratio);
|
| 5 |
+
}
|
| 6 |
+
|
| 7 |
+
hr.ldots::after {
|
| 8 |
+
--tsf: translateY(-2.3rem);
|
| 9 |
+
display: block;
|
| 10 |
+
width: 100%;
|
| 11 |
+
height: 1rem;
|
| 12 |
+
text-align: center;
|
| 13 |
+
color: var(--g18s);
|
| 14 |
+
font-size: 3rem;
|
| 15 |
+
content: '…';
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
#list-subsection {
|
| 19 |
+
padding: 0 calc(1rem - 1ex);
|
| 20 |
+
}
|
| 21 |
+
|
| 22 |
+
#list-subsection .carousel__viewport,
|
| 23 |
+
#taxonomy .carousel__viewport {
|
| 24 |
+
padding: 0 1rem;
|
| 25 |
+
}
|
| 26 |
+
|
| 27 |
+
#list-taxonomy .carousel {
|
| 28 |
+
display: flex;
|
| 29 |
+
flex-direction: row-reverse;
|
| 30 |
+
flex-wrap: nowrap;
|
| 31 |
+
align-items: flex-start;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
#list-taxonomy .section-title {
|
| 35 |
+
margin: var(--smallskip);
|
| 36 |
+
writing-mode: tb;
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
#list-tags {
|
| 40 |
+
position: sticky;
|
| 41 |
+
position: -webkit-sticky;
|
| 42 |
+
top: var(--vhead);
|
| 43 |
+
right: var(--void);
|
| 44 |
+
}
|
| 45 |
+
|
| 46 |
+
#term section.pagewidth,
|
| 47 |
+
#taxonomy section.pagewidth,
|
| 48 |
+
#list-posts {
|
| 49 |
+
min-height: calc(var(--vbody) - 7.258rem);
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
#taxonomy #list-tags {
|
| 53 |
+
position: unset;
|
| 54 |
+
float: unset;
|
| 55 |
+
margin: unset;
|
| 56 |
+
padding: 0 var(--void) 3ex;
|
| 57 |
+
width: unset;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
#taxonomy .carousel .section-title {
|
| 61 |
+
margin: var(--bigskip) 0 var(--smallskip);
|
| 62 |
+
writing-mode: unset;
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
.carousel + .carousel {
|
| 66 |
+
margin-top: 2rem;
|
| 67 |
+
}
|
| 68 |
+
|
| 69 |
+
#has-pagination {
|
| 70 |
+
margin-top: 1in;
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
.section-title#series {
|
| 74 |
+
margin-left: auto;
|
| 75 |
+
width: var(--golden-ratio);
|
| 76 |
+
}
|
| 77 |
+
|
| 78 |
+
.list-year {
|
| 79 |
+
display: flex;
|
| 80 |
+
position: relative;
|
| 81 |
+
align-items: baseline;
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
.list-year.descending {
|
| 85 |
+
margin-left: auto;
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
.list-year > .section-title {
|
| 89 |
+
width: 52pt;
|
| 90 |
+
text-align: right;
|
| 91 |
+
}
|
| 92 |
+
|
| 93 |
+
|
| 94 |
+
.list-year > div {
|
| 95 |
+
flex: 1;
|
| 96 |
+
}
|
| 97 |
+
|
| 98 |
+
.list-month > summary {
|
| 99 |
+
padding-left: 1rem;
|
| 100 |
+
list-style: none;
|
| 101 |
+
}
|
| 102 |
+
|
| 103 |
+
.list-month > summary::after {
|
| 104 |
+
margin-left: 1ex;
|
| 105 |
+
}
|
| 106 |
+
|
| 107 |
+
.list-day a {
|
| 108 |
+
display: block;
|
| 109 |
+
margin: 1ex 1rem;
|
| 110 |
+
border: none;
|
| 111 |
+
padding: 1ex 0;
|
| 112 |
+
width: 100%;
|
| 113 |
+
font-size: var(--normalsize);
|
| 114 |
+
}
|
| 115 |
+
|
| 116 |
+
.list-day a.has-pre::before {
|
| 117 |
+
position: absolute;
|
| 118 |
+
left: 0;
|
| 119 |
+
padding: 0.25rem 0;
|
| 120 |
+
width: 5rem;
|
| 121 |
+
text-align: right;
|
| 122 |
+
text-transform: uppercase;
|
| 123 |
+
letter-spacing: .1em;
|
| 124 |
+
font-size: var(--footnotesize);
|
| 125 |
+
}
|
| 126 |
+
|
| 127 |
+
#feed ul.rounded.invert a {
|
| 128 |
+
font-size: var(--footnotesize);
|
| 129 |
+
}
|
| 130 |
+
|
| 131 |
+
@media (max-width: 640px) {
|
| 132 |
+
|
| 133 |
+
body > main > aside#list-tags {
|
| 134 |
+
position: unset;
|
| 135 |
+
float: unset;
|
| 136 |
+
padding: 0 var(--void);
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
#list-tags > nav {
|
| 140 |
+
padding: 0 1ex;
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
#home #list-tags .section-title,
|
| 144 |
+
#home #list-posts .section-title {
|
| 145 |
+
padding-left: 1rem;
|
| 146 |
+
}
|
| 147 |
+
|
| 148 |
+
}
|
assets/css/layout/_default/single.css
ADDED
|
@@ -0,0 +1,243 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#main-article {
|
| 2 |
+
margin-top: 1in;
|
| 3 |
+
line-height: calc(var(--baselineStretch) * 1.618);
|
| 4 |
+
counter-reset: marginnote;
|
| 5 |
+
}
|
| 6 |
+
|
| 7 |
+
#main-article.sf h1 {
|
| 8 |
+
font-weight: 550;
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
#main-article.sf header time,
|
| 12 |
+
#main-article.sf .subtitle,
|
| 13 |
+
#main-article.sf #doc-author,
|
| 14 |
+
#main-article.sf #doc-author a,
|
| 15 |
+
#main-article.sf h2,
|
| 16 |
+
#main-article.sf h3 {
|
| 17 |
+
font-style: normal;
|
| 18 |
+
}
|
| 19 |
+
|
| 20 |
+
/* article frontmatter */
|
| 21 |
+
|
| 22 |
+
#main-article > header {
|
| 23 |
+
display: flex;
|
| 24 |
+
flex-direction: column;
|
| 25 |
+
margin:var(--vskip);
|
| 26 |
+
gap: 1rem;
|
| 27 |
+
}
|
| 28 |
+
|
| 29 |
+
#has-stage {
|
| 30 |
+
display: flex;
|
| 31 |
+
align-items: center;
|
| 32 |
+
font-family: var(--sf);
|
| 33 |
+
font-size: var(--footnotesize);
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
#series,
|
| 37 |
+
#stage {
|
| 38 |
+
opacity: 0.8;
|
| 39 |
+
color: var(--fg);
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
#series + .emoji--stage,
|
| 43 |
+
#series + .stage-indicator {
|
| 44 |
+
margin: 0 8pt;
|
| 45 |
+
}
|
| 46 |
+
|
| 47 |
+
.subtitle {
|
| 48 |
+
opacity: 0.86;
|
| 49 |
+
margin: 1ex 0 0;
|
| 50 |
+
font-style: italic;
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
#main-article [role=doc-credit],
|
| 54 |
+
#main-article [role=doc-colophon],
|
| 55 |
+
#join-discussion {
|
| 56 |
+
font-size: var(--small);
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
+
#doc-cover > img {
|
| 60 |
+
margin: 2rem 0;
|
| 61 |
+
aspect-ratio: 10 / 8;
|
| 62 |
+
}
|
| 63 |
+
|
| 64 |
+
/* with avatar */
|
| 65 |
+
#avatar,
|
| 66 |
+
.author {
|
| 67 |
+
display: flex;
|
| 68 |
+
align-items: center;
|
| 69 |
+
line-height: 1.272;
|
| 70 |
+
}
|
| 71 |
+
|
| 72 |
+
#doc-author .has-aria-label::after {
|
| 73 |
+
font: 1rem var(--sf);
|
| 74 |
+
}
|
| 75 |
+
|
| 76 |
+
#avatar {
|
| 77 |
+
margin-right: 12pt;
|
| 78 |
+
}
|
| 79 |
+
|
| 80 |
+
.author img {
|
| 81 |
+
border-radius: 50%;
|
| 82 |
+
width: 3rem;
|
| 83 |
+
height: 3rem;
|
| 84 |
+
object-fit: cover;
|
| 85 |
+
}
|
| 86 |
+
|
| 87 |
+
.author > a::after {
|
| 88 |
+
font-size: 0.9em;
|
| 89 |
+
color: var(--mid);
|
| 90 |
+
}
|
| 91 |
+
|
| 92 |
+
.author > a > span {
|
| 93 |
+
color: var(--fg);
|
| 94 |
+
font-weight: bold;
|
| 95 |
+
}
|
| 96 |
+
|
| 97 |
+
.author > a > span img {
|
| 98 |
+
width: 1em;
|
| 99 |
+
height: 1em;
|
| 100 |
+
vertical-align: text-top;
|
| 101 |
+
}
|
| 102 |
+
|
| 103 |
+
header time {
|
| 104 |
+
font-style: italic;
|
| 105 |
+
-webkit-font-feature-settings:'onum' 1;
|
| 106 |
+
-moz-font-feature-settings:'onum' 1;
|
| 107 |
+
font-feature-settings:'onum' 1;
|
| 108 |
+
font-variant-numeric: oldstyle-nums;
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
#page .date-has-label > time:before {
|
| 112 |
+
content: attr(data-time-label)' ';
|
| 113 |
+
}
|
| 114 |
+
|
| 115 |
+
.doc-lastmod-date:before {
|
| 116 |
+
text-transform: lowercase;
|
| 117 |
+
}
|
| 118 |
+
|
| 119 |
+
#has-TableOfContents,
|
| 120 |
+
#comments-error {
|
| 121 |
+
margin: var(--medskip) 0;
|
| 122 |
+
}
|
| 123 |
+
|
| 124 |
+
#has-TableOfContents ul {
|
| 125 |
+
list-style: none;
|
| 126 |
+
font-style: italic;
|
| 127 |
+
}
|
| 128 |
+
|
| 129 |
+
#main-article audio {
|
| 130 |
+
border-radius: 2rem;
|
| 131 |
+
}
|
| 132 |
+
|
| 133 |
+
#main-article audio,
|
| 134 |
+
#main-article section > p {
|
| 135 |
+
margin: 0.618pc 0;
|
| 136 |
+
width: var(--golden-ratio);
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
/* article mainmatter */
|
| 140 |
+
|
| 141 |
+
#content hr {
|
| 142 |
+
display: block;
|
| 143 |
+
margin: 0.618pc 0;
|
| 144 |
+
border: 0;
|
| 145 |
+
border-bottom: var(--bound);
|
| 146 |
+
}
|
| 147 |
+
|
| 148 |
+
#content table {
|
| 149 |
+
margin: 0.618pc 0;
|
| 150 |
+
width: 100%;
|
| 151 |
+
overflow-x: auto;
|
| 152 |
+
}
|
| 153 |
+
|
| 154 |
+
#content figure.fullwidth {
|
| 155 |
+
max-width: none;
|
| 156 |
+
}
|
| 157 |
+
|
| 158 |
+
#content p:not(:first-of-type) {
|
| 159 |
+
text-indent: var(--indent);
|
| 160 |
+
}
|
| 161 |
+
|
| 162 |
+
#content p img {
|
| 163 |
+
width: calc(100% - var(--indent));
|
| 164 |
+
}
|
| 165 |
+
|
| 166 |
+
/* article backmatter */
|
| 167 |
+
|
| 168 |
+
#main-article > footer {
|
| 169 |
+
margin: var(--vskip);
|
| 170 |
+
border-bottom: var(--bound) ;
|
| 171 |
+
}
|
| 172 |
+
|
| 173 |
+
.footnote-ref {
|
| 174 |
+
padding: 0 0.5ex;
|
| 175 |
+
font-size: var(--footnotesize);
|
| 176 |
+
}
|
| 177 |
+
|
| 178 |
+
.footnotes {
|
| 179 |
+
font-size: var(--footnotesize);
|
| 180 |
+
}
|
| 181 |
+
|
| 182 |
+
.footnotes hr {
|
| 183 |
+
margin: 3rem 0 0;
|
| 184 |
+
border-bottom: 1px solid;
|
| 185 |
+
width: 16.18rem;
|
| 186 |
+
}
|
| 187 |
+
|
| 188 |
+
#has-stage + #title,
|
| 189 |
+
#has-timeline > p,
|
| 190 |
+
.footnotes ol {
|
| 191 |
+
margin-top: 0;
|
| 192 |
+
padding: 0;
|
| 193 |
+
}
|
| 194 |
+
|
| 195 |
+
.footnotes li::marker {
|
| 196 |
+
font-feature-settings: 'sups' 1;
|
| 197 |
+
font-variant-position: super;
|
| 198 |
+
}
|
| 199 |
+
|
| 200 |
+
#main-article.sf > header,
|
| 201 |
+
#content,
|
| 202 |
+
#keywords,
|
| 203 |
+
#contentinfo {
|
| 204 |
+
margin: var(--vskip);
|
| 205 |
+
overflow-wrap: break-word;
|
| 206 |
+
}
|
| 207 |
+
|
| 208 |
+
.verbose {
|
| 209 |
+
font: 1rem/2rem monospace;
|
| 210 |
+
overflow-wrap: anywhere;
|
| 211 |
+
}
|
| 212 |
+
|
| 213 |
+
#has-share,
|
| 214 |
+
#comments {
|
| 215 |
+
grid-column: 1 / 3;
|
| 216 |
+
}
|
| 217 |
+
|
| 218 |
+
#discussion-starter > nav {
|
| 219 |
+
display: flex;
|
| 220 |
+
justify-content: end;
|
| 221 |
+
flex-direction: row-reverse;
|
| 222 |
+
}
|
| 223 |
+
|
| 224 |
+
#join-discussion:hover,
|
| 225 |
+
#join-discussion:focus {
|
| 226 |
+
background: var(--ac);
|
| 227 |
+
}
|
| 228 |
+
|
| 229 |
+
#join-discussion-bluesky {
|
| 230 |
+
--anm: none;
|
| 231 |
+
margin-right: 5pt;
|
| 232 |
+
border-right: var(--border);
|
| 233 |
+
color: #1185fe;
|
| 234 |
+
}
|
| 235 |
+
|
| 236 |
+
#content > blockquote,
|
| 237 |
+
.epigraph > blockquote,
|
| 238 |
+
#content > ul,
|
| 239 |
+
#content > ol,
|
| 240 |
+
#comments > *,
|
| 241 |
+
.giscus {
|
| 242 |
+
width: var(--golden-ratio);
|
| 243 |
+
}
|
assets/css/media/print.css
ADDED
|
@@ -0,0 +1,243 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@media print {
|
| 2 |
+
|
| 3 |
+
:root {
|
| 4 |
+
font-size: calc(10pt / 1.272 * var(--fontScale)) ;
|
| 5 |
+
}
|
| 6 |
+
|
| 7 |
+
body {
|
| 8 |
+
/* 1in target on a4 */
|
| 9 |
+
margin: 8vmin !important;
|
| 10 |
+
/* ragged bottom if supported */
|
| 11 |
+
margin-bottom: clamp(8vmin, 10vmin, 12vmin) !important;
|
| 12 |
+
background: none;
|
| 13 |
+
padding-left: 0 !important;
|
| 14 |
+
max-width: 100vw !important;
|
| 15 |
+
}
|
| 16 |
+
|
| 17 |
+
body > header,
|
| 18 |
+
body > footer,
|
| 19 |
+
#background-footer,
|
| 20 |
+
body > footer *,
|
| 21 |
+
body > div,
|
| 22 |
+
body > aside,
|
| 23 |
+
body > main > header,
|
| 24 |
+
audio,
|
| 25 |
+
#has-share,
|
| 26 |
+
#background-body,
|
| 27 |
+
#contribute,
|
| 28 |
+
#related,
|
| 29 |
+
#unified-footer,
|
| 30 |
+
#menu-footer,
|
| 31 |
+
#has-timeline ol li::before,
|
| 32 |
+
.has-details .emoji--stage,
|
| 33 |
+
#discussion-starter,
|
| 34 |
+
.giscus {
|
| 35 |
+
display: none;
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
body > main {
|
| 39 |
+
height: unset;
|
| 40 |
+
}
|
| 41 |
+
|
| 42 |
+
body > main > #main-footer {
|
| 43 |
+
border: unset;
|
| 44 |
+
margin:var(--vskip);
|
| 45 |
+
padding: unset;
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
figure {
|
| 49 |
+
position: relative
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
.pagewidth,
|
| 53 |
+
#main-footer .pagewidth {
|
| 54 |
+
padding: 0;
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
body > main > #main-footer {
|
| 58 |
+
background: none;
|
| 59 |
+
color: var(--fg);
|
| 60 |
+
}
|
| 61 |
+
|
| 62 |
+
#main-footer a {
|
| 63 |
+
color: var(--fg);
|
| 64 |
+
}
|
| 65 |
+
|
| 66 |
+
#main-article,
|
| 67 |
+
body h1:first-of-type {
|
| 68 |
+
margin-top: 0;
|
| 69 |
+
}
|
| 70 |
+
|
| 71 |
+
#comments > summary,
|
| 72 |
+
h1,
|
| 73 |
+
h2,
|
| 74 |
+
h3,
|
| 75 |
+
h4,
|
| 76 |
+
h5,
|
| 77 |
+
h6,
|
| 78 |
+
.section-title {
|
| 79 |
+
break-before: auto;
|
| 80 |
+
break-after: avoid;
|
| 81 |
+
}
|
| 82 |
+
|
| 83 |
+
table,
|
| 84 |
+
img,
|
| 85 |
+
svg,
|
| 86 |
+
figure,
|
| 87 |
+
.sidenote,
|
| 88 |
+
.marginnote,
|
| 89 |
+
#comments article,
|
| 90 |
+
article#feed-item {
|
| 91 |
+
break-inside: avoid;
|
| 92 |
+
}
|
| 93 |
+
|
| 94 |
+
pre > code {
|
| 95 |
+
margin-left: 0;
|
| 96 |
+
min-width: 62%;
|
| 97 |
+
max-width: 100%;
|
| 98 |
+
white-space: pre-wrap;
|
| 99 |
+
word-break: break-all;
|
| 100 |
+
word-wrap: break-word;
|
| 101 |
+
}
|
| 102 |
+
|
| 103 |
+
#main-footer a::after,
|
| 104 |
+
#content a::after {
|
| 105 |
+
--tsf: unset;
|
| 106 |
+
-webkit-transform: var(--tsf);
|
| 107 |
+
-moz-transform: var(--tsf);
|
| 108 |
+
-ms-transform: var(--tsf);
|
| 109 |
+
-o-transform: var(--tsf);
|
| 110 |
+
transform: var(--tsf);
|
| 111 |
+
font: unset;
|
| 112 |
+
content: '\a0('attr(href)')';
|
| 113 |
+
}
|
| 114 |
+
|
| 115 |
+
#keywords a::after {
|
| 116 |
+
content: unset;
|
| 117 |
+
}
|
| 118 |
+
|
| 119 |
+
.marginpar {
|
| 120 |
+
width: var(--golden-ratio);
|
| 121 |
+
margin-left: calc(var(--golden-ratio) * -1);
|
| 122 |
+
}
|
| 123 |
+
|
| 124 |
+
.marginpar.abs {
|
| 125 |
+
right: 0;
|
| 126 |
+
width: 38%;
|
| 127 |
+
}
|
| 128 |
+
|
| 129 |
+
#contentinfo {
|
| 130 |
+
display: flex;
|
| 131 |
+
break-before: auto;
|
| 132 |
+
break-inside: avoid;
|
| 133 |
+
}
|
| 134 |
+
|
| 135 |
+
#colophon {
|
| 136 |
+
width: 38%;
|
| 137 |
+
}
|
| 138 |
+
|
| 139 |
+
#colophon > div {
|
| 140 |
+
display: block;
|
| 141 |
+
}
|
| 142 |
+
|
| 143 |
+
#qr {
|
| 144 |
+
float: right;
|
| 145 |
+
padding: 0;
|
| 146 |
+
height: 96px;
|
| 147 |
+
}
|
| 148 |
+
|
| 149 |
+
#has-timeline {
|
| 150 |
+
flex: 1;
|
| 151 |
+
}
|
| 152 |
+
|
| 153 |
+
.has-details ol {
|
| 154 |
+
column-width: 1in;
|
| 155 |
+
}
|
| 156 |
+
|
| 157 |
+
.has-details time {
|
| 158 |
+
font-weight: 550;
|
| 159 |
+
padding-top: 1ex;
|
| 160 |
+
}
|
| 161 |
+
|
| 162 |
+
#has-timeline ol,
|
| 163 |
+
#has-timeline li {
|
| 164 |
+
margin: 0;
|
| 165 |
+
border: none;
|
| 166 |
+
list-style: inherit;
|
| 167 |
+
break-inside: avoid;
|
| 168 |
+
}
|
| 169 |
+
|
| 170 |
+
}
|
| 171 |
+
|
| 172 |
+
/* font-size scaling = 1/sqrt(640/device-width)
|
| 173 |
+
@media (max-width: 640px) {
|
| 174 |
+
:root {
|
| 175 |
+
font-size: calc(var(--fontScale)*100%);
|
| 176 |
+
}
|
| 177 |
+
}
|
| 178 |
+
|
| 179 |
+
@media (max-width: 601px) {
|
| 180 |
+
:root {
|
| 181 |
+
font-size: calc(var(--fontScale)*96.9%);
|
| 182 |
+
}
|
| 183 |
+
}
|
| 184 |
+
|
| 185 |
+
@media (max-width: 576px) {
|
| 186 |
+
:root {
|
| 187 |
+
font-size: calc(var(--fontScale)*94.8%);
|
| 188 |
+
}
|
| 189 |
+
}
|
| 190 |
+
|
| 191 |
+
@media (max-width: 540px) {
|
| 192 |
+
:root {
|
| 193 |
+
font-size: calc(var(--fontScale)*91.8%);
|
| 194 |
+
}
|
| 195 |
+
}
|
| 196 |
+
|
| 197 |
+
@media (max-width: 512px) {
|
| 198 |
+
:root {
|
| 199 |
+
font-size: calc(var(--fontScale)*89.4%);
|
| 200 |
+
}
|
| 201 |
+
}
|
| 202 |
+
|
| 203 |
+
@media (max-width: 480px) {
|
| 204 |
+
:root {
|
| 205 |
+
font-size: calc(var(--fontScale)*86.6%);
|
| 206 |
+
}
|
| 207 |
+
}
|
| 208 |
+
|
| 209 |
+
@media (max-width: 428px) {
|
| 210 |
+
:root {
|
| 211 |
+
font-size: calc(var(--fontScale)*81.7%);
|
| 212 |
+
}
|
| 213 |
+
}
|
| 214 |
+
|
| 215 |
+
@media (max-width: 414px) {
|
| 216 |
+
:root {
|
| 217 |
+
font-size: calc(var(--fontScale)*80.4%);
|
| 218 |
+
}
|
| 219 |
+
}
|
| 220 |
+
|
| 221 |
+
@media (max-width: 390px) {
|
| 222 |
+
:root {
|
| 223 |
+
font-size: calc(var(--fontScale)*78%);
|
| 224 |
+
}
|
| 225 |
+
}
|
| 226 |
+
|
| 227 |
+
@media (max-width: 375px) {
|
| 228 |
+
:root {
|
| 229 |
+
font-size: calc(var(--fontScale)*76.5%);
|
| 230 |
+
}
|
| 231 |
+
}
|
| 232 |
+
|
| 233 |
+
@media (max-width: 360px) {
|
| 234 |
+
:root {
|
| 235 |
+
font-size: calc(var(--fontScale)*75%);
|
| 236 |
+
}
|
| 237 |
+
}
|
| 238 |
+
|
| 239 |
+
@media (max-width: 320px) {
|
| 240 |
+
:root {
|
| 241 |
+
font-size: calc(var(--fontScale)*70.7%);
|
| 242 |
+
}
|
| 243 |
+
} */
|
assets/css/optimize.css
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
a,
|
| 2 |
+
a.replies.active,
|
| 3 |
+
a.reblogs.active,
|
| 4 |
+
#has-author-name-menu a:hover,
|
| 5 |
+
#has-author-name-menu a:focus,
|
| 6 |
+
#contentinfo a:hover,
|
| 7 |
+
#contentinfo a:focus {
|
| 8 |
+
color: var(--ac);
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
.feed-item > hgroup > div a,
|
| 12 |
+
#contentinfo a {
|
| 13 |
+
color: var(--fg);
|
| 14 |
+
}
|
| 15 |
+
|
| 16 |
+
.readingTime,
|
| 17 |
+
.feed-item > section > div,
|
| 18 |
+
.feed-item > hgroup > div,
|
| 19 |
+
.feed-item:hover img {
|
| 20 |
+
opacity: 0.86;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
.feed-item:hover .par,
|
| 24 |
+
.feed-item:focus .par,
|
| 25 |
+
ul.invert a:hover,
|
| 26 |
+
::-webkit-scrollbar-thumb:hover {
|
| 27 |
+
opacity: 1;
|
| 28 |
+
}
|
| 29 |
+
|
| 30 |
+
#TableOfContents + nav > ul,
|
| 31 |
+
#TableOfContents + nav > ul > li,
|
| 32 |
+
.has-desc:after {
|
| 33 |
+
display: block;
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
#has-breadcrumb summary,
|
| 37 |
+
#has-pagination summary,
|
| 38 |
+
#page #back,
|
| 39 |
+
.feed-item > footer > ul::-webkit-scrollbar,
|
| 40 |
+
.feed-item > hgroup > div > span::-webkit-scrollbar,
|
| 41 |
+
.feed-item .date-has-label .doc-publish-date,
|
| 42 |
+
.carousel__viewport::-webkit-scrollbar,
|
| 43 |
+
#logomark--dark,
|
| 44 |
+
#top-nav[open] > summary,
|
| 45 |
+
#top-nav-screen,
|
| 46 |
+
#has-more-menu[open] > summary > .t,
|
| 47 |
+
.languangeName,
|
| 48 |
+
a#has-i18n > img,
|
| 49 |
+
.list-month > summary::marker,
|
| 50 |
+
.list-month > summary::-webkit-details-marker,
|
| 51 |
+
#series ~ .list-year .has-post::after,
|
| 52 |
+
#content a.footnote-ref::after,
|
| 53 |
+
#content a.footnote-backref::after,
|
| 54 |
+
details.presentation > summary::-webkit-details-marker,
|
| 55 |
+
details.presentation > summary::marker,
|
| 56 |
+
td.lntd:first-child code.hljs {
|
| 57 |
+
display: none;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
a,
|
| 61 |
+
#has-a11y[open] #a11y,
|
| 62 |
+
#logo #logotype__text,
|
| 63 |
+
.marginpar-ctrl:checked + label::before,
|
| 64 |
+
details[open] > .anchor:after,
|
| 65 |
+
details[open] .on-plank,
|
| 66 |
+
.l1 details[open] > ul,
|
| 67 |
+
.marginpar-ctrl:checked + label + .marginpar,
|
| 68 |
+
#has-a11y[open] > summary::before,
|
| 69 |
+
#has-a11y[open] #a11y,
|
| 70 |
+
#has-search[open] .icon::before,
|
| 71 |
+
details[open] > summary > .menu-icon::before,
|
| 72 |
+
.loading:after,
|
| 73 |
+
#top-nav[open] > nav {
|
| 74 |
+
-webkit-animation: var(--anm);
|
| 75 |
+
-moz-animation: var(--anm);
|
| 76 |
+
-o-animation: var(--anm);
|
| 77 |
+
animation: var(--anm);
|
| 78 |
+
}
|
| 79 |
+
|
| 80 |
+
a::after,
|
| 81 |
+
#main-footer a::after,
|
| 82 |
+
hr.ldots::after,
|
| 83 |
+
#to-top::before,
|
| 84 |
+
#lightSwitch + label::before,
|
| 85 |
+
.hand,
|
| 86 |
+
.carousel__viewport__slide:last-child > nav a::before,
|
| 87 |
+
#back::before,
|
| 88 |
+
.feed-item,
|
| 89 |
+
ul.carousel__viewport > li,
|
| 90 |
+
.pagination .rfill a::before,
|
| 91 |
+
.pagination .lfill a::after,
|
| 92 |
+
.tr::after,
|
| 93 |
+
.carousel__viewport__slide:first-child > nav a::after,
|
| 94 |
+
.parent-anchor a::after,
|
| 95 |
+
#i18n-menu a::after,
|
| 96 |
+
#content a::after,
|
| 97 |
+
.form.on-plank .form__button,
|
| 98 |
+
#to-content,
|
| 99 |
+
.t {
|
| 100 |
+
-webkit-transform: var(--tsf);
|
| 101 |
+
-moz-transform: var(--tsf);
|
| 102 |
+
-ms-transform: var(--tsf);
|
| 103 |
+
-o-transform: var(--tsf);
|
| 104 |
+
transform: var(--tsf);
|
| 105 |
+
}
|
| 106 |
+
|
| 107 |
+
input.toggle + label::after,
|
| 108 |
+
#setContrast label,
|
| 109 |
+
.marginpar-ctrl + label::before,
|
| 110 |
+
.anchor:after,
|
| 111 |
+
#has-share i {
|
| 112 |
+
-webkit-transition: var(--tst);
|
| 113 |
+
-moz-transition: var(--tst);
|
| 114 |
+
-o-transition: var(--tst);
|
| 115 |
+
transition: var(--tst);
|
| 116 |
+
}
|
| 117 |
+
|
| 118 |
+
#has-a11y[open] #a11y,
|
| 119 |
+
details[open] .on-plank,
|
| 120 |
+
.l1 details[open] > ul,
|
| 121 |
+
.marginpar-ctrl:checked + label + .marginpar,
|
| 122 |
+
#top-nav[open] > nav {
|
| 123 |
+
-webkit-transform-origin: var(--tso);
|
| 124 |
+
-moz-transform-origin: var(--tso);
|
| 125 |
+
-ms-transform-origin: var(--tso);
|
| 126 |
+
-o-transform-origin: var(--tso);
|
| 127 |
+
transform-origin: var(--tso);
|
| 128 |
+
}
|
| 129 |
+
|
| 130 |
+
#has-share a:focus,
|
| 131 |
+
.form > *:focus {
|
| 132 |
+
outline: none !important;
|
| 133 |
+
}
|
| 134 |
+
|
| 135 |
+
hgroup,
|
| 136 |
+
hgroup > h1,
|
| 137 |
+
figure {
|
| 138 |
+
margin: 0;
|
| 139 |
+
}
|
| 140 |
+
|
| 141 |
+
ul.rounded,
|
| 142 |
+
.list-day {
|
| 143 |
+
padding: 0;
|
| 144 |
+
}
|
| 145 |
+
|
| 146 |
+
ul.delimiter:first-child li:first-child:before,
|
| 147 |
+
.feed-item > hgroup ul.delimiter:first-child li:last-child::after,
|
| 148 |
+
#content a.has-img::after,
|
| 149 |
+
#doc-author .delimiter li:last-child::after {
|
| 150 |
+
content: '';
|
| 151 |
+
}
|
assets/css/support.css
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@supports (height: 0svh) {
|
| 2 |
+
:root {
|
| 3 |
+
--vbody: calc(100svh - var(--vhead) - var(--vfoot));
|
| 4 |
+
}
|
| 5 |
+
}
|
| 6 |
+
|
| 7 |
+
/* @supports (backdrop-filter: blur(0)) {
|
| 8 |
+
@media (max-width: 640px) {
|
| 9 |
+
#top-nav-screen.screening {
|
| 10 |
+
backdrop-filter: blur(2rem);
|
| 11 |
+
background: none;
|
| 12 |
+
}
|
| 13 |
+
} */
|
assets/css/typeface-local/Cormorant.css
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'Cormorant';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: url(/css/fonts/Cormorant-Regular.woff2) format('woff2');
|
| 7 |
+
size-adjust: 110%;
|
| 8 |
+
ascent-override: 80%;
|
| 9 |
+
descent-override: 28%;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
@font-face {
|
| 13 |
+
font-family: 'Cormorant';
|
| 14 |
+
font-style: italic;
|
| 15 |
+
font-weight: 400;
|
| 16 |
+
font-display: swap;
|
| 17 |
+
src: url(/css/fonts/Cormorant-Italic.woff2) format('woff2');
|
| 18 |
+
size-adjust: 110%;
|
| 19 |
+
ascent-override: 80%;
|
| 20 |
+
descent-override: 28%;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
@font-face {
|
| 24 |
+
font-family: 'Cormorant';
|
| 25 |
+
font-style: normal;
|
| 26 |
+
font-weight: 700;
|
| 27 |
+
font-display: swap;
|
| 28 |
+
src: url(/css/fonts/Cormorant-Bold.woff2) format('woff2');
|
| 29 |
+
size-adjust: 110%;
|
| 30 |
+
ascent-override: 80%;
|
| 31 |
+
descent-override: 28%;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
@font-face {
|
| 35 |
+
font-family: 'Cormorant';
|
| 36 |
+
font-style: italic;
|
| 37 |
+
font-weight: 700;
|
| 38 |
+
font-display: swap;
|
| 39 |
+
src: url(/css/fonts/Cormorant-BoldItalic.woff2) format('woff2');
|
| 40 |
+
size-adjust: 110%;
|
| 41 |
+
ascent-override: 80%;
|
| 42 |
+
descent-override: 28%;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
:root {
|
| 46 |
+
--rm: 'Cormorant';
|
| 47 |
+
}
|
assets/css/typeface-local/Crimson.css
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'crimson';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: local('Crimson Roman'),
|
| 7 |
+
url(/css/fonts/crimson-roman-webfont.woff2) format('woff2');
|
| 8 |
+
size-adjust: 95%;
|
| 9 |
+
}
|
| 10 |
+
|
| 11 |
+
@font-face {
|
| 12 |
+
font-family: 'crimson';
|
| 13 |
+
font-style: italic;
|
| 14 |
+
font-weight: 400;
|
| 15 |
+
font-display: swap;
|
| 16 |
+
src: local('Crimson Italic'),
|
| 17 |
+
url(/css/fonts/crimson-italic-webfont.woff2) format('woff2');
|
| 18 |
+
size-adjust: 95%;
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
@font-face {
|
| 22 |
+
font-family: 'crimson';
|
| 23 |
+
font-style: normal;
|
| 24 |
+
font-weight: 700;
|
| 25 |
+
font-display: swap;
|
| 26 |
+
src: local('Crimson Bold'),
|
| 27 |
+
url(/css/fonts/crimson-bold-webfont.woff2) format('woff2');
|
| 28 |
+
size-adjust: 95%;
|
| 29 |
+
}
|
| 30 |
+
|
| 31 |
+
@font-face {
|
| 32 |
+
font-family: 'crimson';
|
| 33 |
+
font-style: italic;
|
| 34 |
+
font-weight: 700;
|
| 35 |
+
font-display: swap;
|
| 36 |
+
src: local('Crimson BoldItalic'),
|
| 37 |
+
url(/css/fonts/crimson-bolditalic-webfont.woff2) format('woff2');
|
| 38 |
+
size-adjust: 95%;
|
| 39 |
+
}
|
| 40 |
+
|
| 41 |
+
:root {
|
| 42 |
+
--rm: 'crimson';
|
| 43 |
+
}
|
assets/css/typeface-local/EBGaramond.css
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'EB Garamond';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: url(/css/fonts/EBGaramond12-Regular.woff2) format('woff2');
|
| 7 |
+
size-adjust: 102%;
|
| 8 |
+
ascent-override: 87%;
|
| 9 |
+
descent-override: 30%;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
@font-face {
|
| 13 |
+
font-family: 'EB Garamond';
|
| 14 |
+
font-style: italic;
|
| 15 |
+
font-weight: 400;
|
| 16 |
+
font-display: swap;
|
| 17 |
+
src: url(/css/fonts/EBGaramond12-Italic.woff2) format('woff2');
|
| 18 |
+
size-adjust: 102%;
|
| 19 |
+
ascent-override: 87%;
|
| 20 |
+
descent-override: 30%;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
@font-face {
|
| 24 |
+
font-family: 'EB Garamond';
|
| 25 |
+
font-style: normal;
|
| 26 |
+
font-weight: 700;
|
| 27 |
+
font-display: swap;
|
| 28 |
+
src: url(/css/fonts/EBGaramond12-Bold.woff) format('woff');
|
| 29 |
+
size-adjust: 102%;
|
| 30 |
+
ascent-override: 87%;
|
| 31 |
+
descent-override: 30%;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
@font-face {
|
| 35 |
+
font-family: 'EB Garamond';
|
| 36 |
+
font-style: italic;
|
| 37 |
+
font-weight: 700;
|
| 38 |
+
font-display: swap;
|
| 39 |
+
src: url(/css/fonts/EBGaramond12-BoldItalic.woff) format('woff');
|
| 40 |
+
size-adjust: 102%;
|
| 41 |
+
ascent-override: 87%;
|
| 42 |
+
descent-override: 30%;
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
:root {
|
| 46 |
+
--rm: 'EB Garamond';
|
| 47 |
+
}
|
assets/css/typeface-local/Inconsolata.css
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'Inconsolata';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: local('Inconsolata'),
|
| 7 |
+
url(/css/fonts/Inconsolata-Regular.woff2) format('woff2');
|
| 8 |
+
ascent-override: 88%;
|
| 9 |
+
descent-override: 30%;
|
| 10 |
+
}
|
| 11 |
+
|
| 12 |
+
@font-face {
|
| 13 |
+
font-family: 'Inconsolata';
|
| 14 |
+
font-style: normal;
|
| 15 |
+
font-weight: 700;
|
| 16 |
+
font-display: swap;
|
| 17 |
+
src: local('Inconsolata Bold'),
|
| 18 |
+
url(/css/fonts/Inconsolata-Bold.woff2) format('woff2');
|
| 19 |
+
ascent-override: 88%;
|
| 20 |
+
descent-override: 30%;
|
| 21 |
+
}
|
| 22 |
+
|
| 23 |
+
:root {
|
| 24 |
+
--tt: 'Inconsolata';
|
| 25 |
+
}
|
assets/css/typeface-local/Inter.css
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'Inter';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: local('Inter'),
|
| 7 |
+
url(/css/fonts/Inter-Regular.woff2) format('woff2');
|
| 8 |
+
size-adjust: 84%;
|
| 9 |
+
ascent-override: 104%;
|
| 10 |
+
descent-override: 36%;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
@font-face {
|
| 14 |
+
font-family: 'Inter';
|
| 15 |
+
font-style: italic;
|
| 16 |
+
font-weight: 400;
|
| 17 |
+
font-display: swap;
|
| 18 |
+
src: local('Inter Italic'),
|
| 19 |
+
url(/css/fonts/Inter-Italic.woff2) format('woff2');
|
| 20 |
+
size-adjust: 84%;
|
| 21 |
+
ascent-override: 104%;
|
| 22 |
+
descent-override: 36%;
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
@font-face {
|
| 26 |
+
font-family: 'Inter';
|
| 27 |
+
font-style: normal;
|
| 28 |
+
font-weight: 700;
|
| 29 |
+
font-display: swap;
|
| 30 |
+
src: local('Inter Bold'),
|
| 31 |
+
url(/css/fonts/Inter-Bold.woff2) format('woff2');
|
| 32 |
+
size-adjust: 84%;
|
| 33 |
+
ascent-override: 104%;
|
| 34 |
+
descent-override: 36%;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
@font-face {
|
| 38 |
+
font-family: 'Inter';
|
| 39 |
+
font-style: italic;
|
| 40 |
+
font-weight: 700;
|
| 41 |
+
font-display: swap;
|
| 42 |
+
src: local('Inter Bold Italic'),
|
| 43 |
+
url(/css/fonts/Inter-BoldItalic.woff2) format('woff2');
|
| 44 |
+
size-adjust: 84%;
|
| 45 |
+
ascent-override: 104%;
|
| 46 |
+
descent-override: 36%;
|
| 47 |
+
}
|
| 48 |
+
|
| 49 |
+
:root {
|
| 50 |
+
--sf: 'Inter';
|
| 51 |
+
}
|
assets/css/typeface-local/LexicaUltralegible.css
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'Lexica Ultralegible';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: local('Lexica Ultralegible'),
|
| 7 |
+
url(/css/fonts/LexicaUltralegible-Regular.woff2) format('woff2');
|
| 8 |
+
size-adjust: 93%;
|
| 9 |
+
ascent-override: 95%;
|
| 10 |
+
descent-override: 33%;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
@font-face {
|
| 14 |
+
font-family: 'Lexica Ultralegible';
|
| 15 |
+
font-style: italic;
|
| 16 |
+
font-weight: 400;
|
| 17 |
+
font-display: swap;
|
| 18 |
+
src: local('Lexica Ultralegible Italic'),
|
| 19 |
+
url(/css/fonts/LexicaUltralegible-Italic.woff2) format('woff2');
|
| 20 |
+
size-adjust: 93%;
|
| 21 |
+
ascent-override: 95%;
|
| 22 |
+
descent-override: 33%;
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
@font-face {
|
| 26 |
+
font-family: 'Lexica Ultralegible';
|
| 27 |
+
font-style: normal;
|
| 28 |
+
font-weight: 700;
|
| 29 |
+
font-display: swap;
|
| 30 |
+
src: local('Lexica Ultralegible Bold'),
|
| 31 |
+
url(/css/fonts/LexicaUltralegible-Bold.woff2) format('woff2');
|
| 32 |
+
size-adjust: 93%;
|
| 33 |
+
ascent-override: 95%;
|
| 34 |
+
descent-override: 33%;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
@font-face {
|
| 38 |
+
font-family: 'Lexica Ultralegible';
|
| 39 |
+
font-style: italic;
|
| 40 |
+
font-weight: 700;
|
| 41 |
+
font-display: swap;
|
| 42 |
+
src: local('Lexica Ultralegible Bold Italic'),
|
| 43 |
+
url(/css/fonts/LexicaUltralegible-BoldItalic.woff2) format('woff2');
|
| 44 |
+
size-adjust: 93%;
|
| 45 |
+
ascent-override: 95%;
|
| 46 |
+
descent-override: 33%;
|
| 47 |
+
}
|
| 48 |
+
|
| 49 |
+
:root {
|
| 50 |
+
--sf: 'Lexica Ultralegible';
|
| 51 |
+
}
|
assets/css/typeface-local/Montserrat.css
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'Montserrat';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: url(/css/fonts/Montserrat-Regular.woff2) format('woff2');
|
| 7 |
+
size-adjust: 85%;
|
| 8 |
+
ascent-override: 104%;
|
| 9 |
+
descent-override: 36%;
|
| 10 |
+
line-gap-override: 50%;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
@font-face {
|
| 14 |
+
font-family: 'Montserrat';
|
| 15 |
+
font-style: italic;
|
| 16 |
+
font-weight: 400;
|
| 17 |
+
font-display: swap;
|
| 18 |
+
src: url(/css/fonts/Montserrat-Italic.woff2) format('woff2');
|
| 19 |
+
size-adjust: 85%;
|
| 20 |
+
ascent-override: 104%;
|
| 21 |
+
descent-override: 36%;
|
| 22 |
+
line-gap-override: 50%;
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
@font-face {
|
| 26 |
+
font-family: 'Montserrat';
|
| 27 |
+
font-style: normal;
|
| 28 |
+
font-weight: 700;
|
| 29 |
+
font-display: swap;
|
| 30 |
+
src: url(/css/fonts/Montserrat-Bold.woff2) format('woff2');
|
| 31 |
+
size-adjust: 85%;
|
| 32 |
+
ascent-override: 104%;
|
| 33 |
+
descent-override: 36%;
|
| 34 |
+
line-gap-override: 50%;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
@font-face {
|
| 38 |
+
font-family: 'Montserrat';
|
| 39 |
+
font-style: italic;
|
| 40 |
+
font-weight: 700;
|
| 41 |
+
font-display: swap;
|
| 42 |
+
src: url(/css/fonts/Montserrat-BoldItalic.woff2) format('woff2');
|
| 43 |
+
size-adjust: 85%;
|
| 44 |
+
ascent-override: 104%;
|
| 45 |
+
descent-override: 36%;
|
| 46 |
+
line-gap-override: 50%;
|
| 47 |
+
}
|
| 48 |
+
|
| 49 |
+
:root {
|
| 50 |
+
--sf: 'Montserrat';
|
| 51 |
+
}
|
assets/css/typeface-local/OpenDyslexic.css
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
@font-face {
|
| 2 |
+
font-family: 'OpenDyslexic';
|
| 3 |
+
font-style: normal;
|
| 4 |
+
font-weight: 400;
|
| 5 |
+
font-display: swap;
|
| 6 |
+
src: local('OpenDyslexic'),
|
| 7 |
+
url(/css/fonts/OpenDyslexic-Regular.woff2) format('woff2');
|
| 8 |
+
size-adjust: 83%;
|
| 9 |
+
ascent-override: 106%;
|
| 10 |
+
descent-override: 36%;
|
| 11 |
+
}
|
| 12 |
+
|
| 13 |
+
@font-face {
|
| 14 |
+
font-family: 'OpenDyslexic';
|
| 15 |
+
font-style: italic;
|
| 16 |
+
font-weight: 400;
|
| 17 |
+
font-display: swap;
|
| 18 |
+
src: local('OpenDyslexic Italic'),
|
| 19 |
+
url(/css/fonts/OpenDyslexic-Italic.woff2) format('woff2');
|
| 20 |
+
size-adjust: 83%;
|
| 21 |
+
ascent-override: 106%;
|
| 22 |
+
descent-override: 36%;
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
@font-face {
|
| 26 |
+
font-family: 'OpenDyslexic';
|
| 27 |
+
font-style: normal;
|
| 28 |
+
font-weight: 700;
|
| 29 |
+
font-display: swap;
|
| 30 |
+
src: local('OpenDyslexic Bold'),
|
| 31 |
+
url(/css/fonts/OpenDyslexic-Bold.woff2) format('woff2');
|
| 32 |
+
size-adjust: 83%;
|
| 33 |
+
ascent-override: 106%;
|
| 34 |
+
descent-override: 36%;
|
| 35 |
+
}
|
| 36 |
+
|
| 37 |
+
@font-face {
|
| 38 |
+
font-family: 'OpenDyslexic';
|
| 39 |
+
font-style: italic;
|
| 40 |
+
font-weight: 700;
|
| 41 |
+
font-display: swap;
|
| 42 |
+
src: local('OpenDyslexic Bold Italic'),
|
| 43 |
+
url(/css/fonts/OpenDyslexic-Bold-Italic.woff2) format('woff2');
|
| 44 |
+
size-adjust: 83%;
|
| 45 |
+
ascent-override: 106%;
|
| 46 |
+
descent-override: 36%;
|
| 47 |
+
}
|
| 48 |
+
|
| 49 |
+
@font-face {
|
| 50 |
+
font-family: 'OpenDyslexicMono';
|
| 51 |
+
font-style: normal;
|
| 52 |
+
font-weight: 700;
|
| 53 |
+
font-display: swap;
|
| 54 |
+
src: local('OpenDyslexicMono'),
|
| 55 |
+
url(/css/fonts/OpenDyslexicMono-Regular.woff2) format('woff2');
|
| 56 |
+
size-adjust: 83%;
|
| 57 |
+
ascent-override: 106%;
|
| 58 |
+
descent-override: 36%;
|
| 59 |
+
}
|
| 60 |
+
|
| 61 |
+
:root {
|
| 62 |
+
--od: 'OpenDyslexic';
|
| 63 |
+
}
|