feat: add side toc support and update toc style

This commit is contained in:
st1020 2025-10-02 20:07:02 +08:00
parent 9d208b7bd1
commit b7a197c648
10 changed files with 291 additions and 241 deletions

View file

@ -5,5 +5,8 @@
}, },
"[jinja-html]": { "[jinja-html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode" "editor.defaultFormatter": "esbenp.prettier-vscode"
},
"tailwindCSS.includeLanguages": {
"jinja-html": "html"
} }
} }

View file

@ -19,7 +19,7 @@ This theme is based on Hugo theme [hugo-paper](https://github.com/nanxiaobei/hug
- Taxonomies support - Taxonomies support
- Projects page - Projects page
- Archive page - Archive page
- Table of Content - Table of content & Floating side table of content
- Admonition shortcode - Admonition shortcode
- SEO friendly - SEO friendly
- Comments using [Giscus](https://giscus.app/) - Comments using [Giscus](https://giscus.app/)

View file

@ -42,7 +42,7 @@ extra_syntaxes_and_themes = []
# See below for list of allowed values. # See below for list of allowed values.
highlight_theme = "base16-ocean-dark" highlight_theme = "base16-ocean-dark"
# The Kita theme style config. # The Kita theme config.
[extra] [extra]
# Enable KaTex math formula support globally. # Enable KaTex math formula support globally.
math = false math = false
@ -50,9 +50,12 @@ math = false
mermaid = false mermaid = false
# Enable comment support globally. # Enable comment support globally.
comment = false comment = false
# Enable floating table of contents on the right side of the post page.
side_toc = true
# The URL of social image. # The URL of social image.
social_image = "icons/github.svg" social_image = "icons/github.svg"
# The Kita style config.
[extra.style] [extra.style]
# The custom background color. # The custom background color.
# bg_color = "" # bg_color = ""

View file

@ -16,10 +16,10 @@
"prettier:fix": "prettier -w ." "prettier:fix": "prettier -w ."
}, },
"dependencies": { "dependencies": {
"@tailwindcss/cli": "^4.1.11", "@tailwindcss/cli": "^4.1.14",
"@tailwindcss/typography": "^0.5.16", "@tailwindcss/typography": "^0.5.19",
"prettier": "^3.6.2", "prettier": "^3.6.2",
"prettier-plugin-tailwindcss": "^0.6.14", "prettier-plugin-tailwindcss": "^0.6.14",
"tailwindcss": "^4.1.11" "tailwindcss": "^4.1.14"
} }
} }

279
pnpm-lock.yaml generated
View file

@ -9,11 +9,11 @@ importers:
.: .:
dependencies: dependencies:
'@tailwindcss/cli': '@tailwindcss/cli':
specifier: ^4.1.11 specifier: ^4.1.14
version: 4.1.11 version: 4.1.14
'@tailwindcss/typography': '@tailwindcss/typography':
specifier: ^0.5.16 specifier: ^0.5.19
version: 0.5.16(tailwindcss@4.1.11) version: 0.5.19(tailwindcss@4.1.14)
prettier: prettier:
specifier: ^3.6.2 specifier: ^3.6.2
version: 3.6.2 version: 3.6.2
@ -21,31 +21,30 @@ importers:
specifier: ^0.6.14 specifier: ^0.6.14
version: 0.6.14(prettier@3.6.2) version: 0.6.14(prettier@3.6.2)
tailwindcss: tailwindcss:
specifier: ^4.1.11 specifier: ^4.1.14
version: 4.1.11 version: 4.1.14
packages: packages:
'@ampproject/remapping@2.3.0':
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
'@isaacs/fs-minipass@4.0.1': '@isaacs/fs-minipass@4.0.1':
resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==}
engines: {node: '>=18.0.0'} engines: {node: '>=18.0.0'}
'@jridgewell/gen-mapping@0.3.12': '@jridgewell/gen-mapping@0.3.13':
resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==} resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
'@jridgewell/remapping@2.3.5':
resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
'@jridgewell/resolve-uri@3.1.2': '@jridgewell/resolve-uri@3.1.2':
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
engines: {node: '>=6.0.0'} engines: {node: '>=6.0.0'}
'@jridgewell/sourcemap-codec@1.5.4': '@jridgewell/sourcemap-codec@1.5.5':
resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==} resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
'@jridgewell/trace-mapping@0.3.29': '@jridgewell/trace-mapping@0.3.31':
resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
'@parcel/watcher-android-arm64@2.5.1': '@parcel/watcher-android-arm64@2.5.1':
resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==} resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==}
@ -129,69 +128,69 @@ packages:
resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==} resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==}
engines: {node: '>= 10.0.0'} engines: {node: '>= 10.0.0'}
'@tailwindcss/cli@4.1.11': '@tailwindcss/cli@4.1.14':
resolution: {integrity: sha512-7RAFOrVaXCFz5ooEG36Kbh+sMJiI2j4+Ozp71smgjnLfBRu7DTfoq8DsTvzse2/6nDeo2M3vS/FGaxfDgr3rtQ==} resolution: {integrity: sha512-2cErQRcsI8jIObUMVwcd1H2AWgGxwzozHJk7AKM2KB1taOp7L15xQ8kEsZrvVbOjNrb8yXtnSvNtJ+mhCB7EBg==}
hasBin: true hasBin: true
'@tailwindcss/node@4.1.11': '@tailwindcss/node@4.1.14':
resolution: {integrity: sha512-yzhzuGRmv5QyU9qLNg4GTlYI6STedBWRE7NjxP45CsFYYq9taI0zJXZBMqIC/c8fViNLhmrbpSFS57EoxUmD6Q==} resolution: {integrity: sha512-hpz+8vFk3Ic2xssIA3e01R6jkmsAhvkQdXlEbRTk6S10xDAtiQiM3FyvZVGsucefq764euO/b8WUW9ysLdThHw==}
'@tailwindcss/oxide-android-arm64@4.1.11': '@tailwindcss/oxide-android-arm64@4.1.14':
resolution: {integrity: sha512-3IfFuATVRUMZZprEIx9OGDjG3Ou3jG4xQzNTvjDoKmU9JdmoCohQJ83MYd0GPnQIu89YoJqvMM0G3uqLRFtetg==} resolution: {integrity: sha512-a94ifZrGwMvbdeAxWoSuGcIl6/DOP5cdxagid7xJv6bwFp3oebp7y2ImYsnZBMTwjn5Ev5xESvS3FFYUGgPODQ==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [arm64] cpu: [arm64]
os: [android] os: [android]
'@tailwindcss/oxide-darwin-arm64@4.1.11': '@tailwindcss/oxide-darwin-arm64@4.1.14':
resolution: {integrity: sha512-ESgStEOEsyg8J5YcMb1xl8WFOXfeBmrhAwGsFxxB2CxY9evy63+AtpbDLAyRkJnxLy2WsD1qF13E97uQyP1lfQ==} resolution: {integrity: sha512-HkFP/CqfSh09xCnrPJA7jud7hij5ahKyWomrC3oiO2U9i0UjP17o9pJbxUN0IJ471GTQQmzwhp0DEcpbp4MZTA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [arm64] cpu: [arm64]
os: [darwin] os: [darwin]
'@tailwindcss/oxide-darwin-x64@4.1.11': '@tailwindcss/oxide-darwin-x64@4.1.14':
resolution: {integrity: sha512-EgnK8kRchgmgzG6jE10UQNaH9Mwi2n+yw1jWmof9Vyg2lpKNX2ioe7CJdf9M5f8V9uaQxInenZkOxnTVL3fhAw==} resolution: {integrity: sha512-eVNaWmCgdLf5iv6Qd3s7JI5SEFBFRtfm6W0mphJYXgvnDEAZ5sZzqmI06bK6xo0IErDHdTA5/t7d4eTfWbWOFw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [x64] cpu: [x64]
os: [darwin] os: [darwin]
'@tailwindcss/oxide-freebsd-x64@4.1.11': '@tailwindcss/oxide-freebsd-x64@4.1.14':
resolution: {integrity: sha512-xdqKtbpHs7pQhIKmqVpxStnY1skuNh4CtbcyOHeX1YBE0hArj2romsFGb6yUmzkq/6M24nkxDqU8GYrKrz+UcA==} resolution: {integrity: sha512-QWLoRXNikEuqtNb0dhQN6wsSVVjX6dmUFzuuiL09ZeXju25dsei2uIPl71y2Ic6QbNBsB4scwBoFnlBfabHkEw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [x64] cpu: [x64]
os: [freebsd] os: [freebsd]
'@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11': '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.14':
resolution: {integrity: sha512-ryHQK2eyDYYMwB5wZL46uoxz2zzDZsFBwfjssgB7pzytAeCCa6glsiJGjhTEddq/4OsIjsLNMAiMlHNYnkEEeg==} resolution: {integrity: sha512-VB4gjQni9+F0VCASU+L8zSIyjrLLsy03sjcR3bM0V2g4SNamo0FakZFKyUQ96ZVwGK4CaJsc9zd/obQy74o0Fw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [arm] cpu: [arm]
os: [linux] os: [linux]
'@tailwindcss/oxide-linux-arm64-gnu@4.1.11': '@tailwindcss/oxide-linux-arm64-gnu@4.1.14':
resolution: {integrity: sha512-mYwqheq4BXF83j/w75ewkPJmPZIqqP1nhoghS9D57CLjsh3Nfq0m4ftTotRYtGnZd3eCztgbSPJ9QhfC91gDZQ==} resolution: {integrity: sha512-qaEy0dIZ6d9vyLnmeg24yzA8XuEAD9WjpM5nIM1sUgQ/Zv7cVkharPDQcmm/t/TvXoKo/0knI3me3AGfdx6w1w==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
'@tailwindcss/oxide-linux-arm64-musl@4.1.11': '@tailwindcss/oxide-linux-arm64-musl@4.1.14':
resolution: {integrity: sha512-m/NVRFNGlEHJrNVk3O6I9ggVuNjXHIPoD6bqay/pubtYC9QIdAMpS+cswZQPBLvVvEF6GtSNONbDkZrjWZXYNQ==} resolution: {integrity: sha512-ISZjT44s59O8xKsPEIesiIydMG/sCXoMBCqsphDm/WcbnuWLxxb+GcvSIIA5NjUw6F8Tex7s5/LM2yDy8RqYBQ==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [arm64] cpu: [arm64]
os: [linux] os: [linux]
'@tailwindcss/oxide-linux-x64-gnu@4.1.11': '@tailwindcss/oxide-linux-x64-gnu@4.1.14':
resolution: {integrity: sha512-YW6sblI7xukSD2TdbbaeQVDysIm/UPJtObHJHKxDEcW2exAtY47j52f8jZXkqE1krdnkhCMGqP3dbniu1Te2Fg==} resolution: {integrity: sha512-02c6JhLPJj10L2caH4U0zF8Hji4dOeahmuMl23stk0MU1wfd1OraE7rOloidSF8W5JTHkFdVo/O7uRUJJnUAJg==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
'@tailwindcss/oxide-linux-x64-musl@4.1.11': '@tailwindcss/oxide-linux-x64-musl@4.1.14':
resolution: {integrity: sha512-e3C/RRhGunWYNC3aSF7exsQkdXzQ/M+aYuZHKnw4U7KQwTJotnWsGOIVih0s2qQzmEzOFIJ3+xt7iq67K/p56Q==} resolution: {integrity: sha512-TNGeLiN1XS66kQhxHG/7wMeQDOoL0S33x9BgmydbrWAb9Qw0KYdd8o1ifx4HOGDWhVmJ+Ul+JQ7lyknQFilO3Q==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [x64] cpu: [x64]
os: [linux] os: [linux]
'@tailwindcss/oxide-wasm32-wasi@4.1.11': '@tailwindcss/oxide-wasm32-wasi@4.1.14':
resolution: {integrity: sha512-Xo1+/GU0JEN/C/dvcammKHzeM6NqKovG+6921MR6oadee5XPBaKOumrJCXvopJ/Qb5TH7LX/UAywbqrP4lax0g==} resolution: {integrity: sha512-uZYAsaW/jS/IYkd6EWPJKW/NlPNSkWkBlaeVBi/WsFQNP05/bzkebUL8FH1pdsqx4f2fH/bWFcUABOM9nfiJkQ==}
engines: {node: '>=14.0.0'} engines: {node: '>=14.0.0'}
cpu: [wasm32] cpu: [wasm32]
bundledDependencies: bundledDependencies:
@ -202,24 +201,24 @@ packages:
- '@emnapi/wasi-threads' - '@emnapi/wasi-threads'
- tslib - tslib
'@tailwindcss/oxide-win32-arm64-msvc@4.1.11': '@tailwindcss/oxide-win32-arm64-msvc@4.1.14':
resolution: {integrity: sha512-UgKYx5PwEKrac3GPNPf6HVMNhUIGuUh4wlDFR2jYYdkX6pL/rn73zTq/4pzUm8fOjAn5L8zDeHp9iXmUGOXZ+w==} resolution: {integrity: sha512-Az0RnnkcvRqsuoLH2Z4n3JfAef0wElgzHD5Aky/e+0tBUxUhIeIqFBTMNQvmMRSP15fWwmvjBxZ3Q8RhsDnxAA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [arm64] cpu: [arm64]
os: [win32] os: [win32]
'@tailwindcss/oxide-win32-x64-msvc@4.1.11': '@tailwindcss/oxide-win32-x64-msvc@4.1.14':
resolution: {integrity: sha512-YfHoggn1j0LK7wR82TOucWc5LDCguHnoS879idHekmmiR7g9HUtMw9MI0NHatS28u/Xlkfi9w5RJWgz2Dl+5Qg==} resolution: {integrity: sha512-ttblVGHgf68kEE4om1n/n44I0yGPkCPbLsqzjvybhpwa6mKKtgFfAzy6btc3HRmuW7nHe0OOrSeNP9sQmmH9XA==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
cpu: [x64] cpu: [x64]
os: [win32] os: [win32]
'@tailwindcss/oxide@4.1.11': '@tailwindcss/oxide@4.1.14':
resolution: {integrity: sha512-Q69XzrtAhuyfHo+5/HMgr1lAiPP/G40OMFAnws7xcFEYqcypZmdW8eGXaOUIeOl1dzPJBPENXgbjsOyhg2nkrg==} resolution: {integrity: sha512-23yx+VUbBwCg2x5XWdB8+1lkPajzLmALEfMb51zZUBYaYVPDQvBSD/WYDqiVyBIo2BZFa3yw1Rpy3G2Jp+K0dw==}
engines: {node: '>= 10'} engines: {node: '>= 10'}
'@tailwindcss/typography@0.5.16': '@tailwindcss/typography@0.5.19':
resolution: {integrity: sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==} resolution: {integrity: sha512-w31dd8HOx3k9vPtcQh5QHP9GwKcgbMp87j58qi6xgiBnFFtKEAgCWnDw4qUT8aHwkCp8bKvb/KGKWWHedP0AAg==}
peerDependencies: peerDependencies:
tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1' tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1'
@ -241,12 +240,12 @@ packages:
engines: {node: '>=0.10'} engines: {node: '>=0.10'}
hasBin: true hasBin: true
detect-libc@2.0.4: detect-libc@2.1.1:
resolution: {integrity: sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==} resolution: {integrity: sha512-ecqj/sy1jcK1uWrwpR67UhYrIFQ+5WlGxth34WquCbamhFA6hkkwiu37o6J5xCHdo1oixJRfVRw+ywV+Hq/0Aw==}
engines: {node: '>=8'} engines: {node: '>=8'}
enhanced-resolve@5.18.2: enhanced-resolve@5.18.3:
resolution: {integrity: sha512-6Jw4sE1maoRJo3q8MsSIn2onJFbLTOjY9hlx4DZXmOKvLRd1Ok2kXmAGXaafL2+ijsJZ1ClYbl/pmqr9+k4iUQ==} resolution: {integrity: sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww==}
engines: {node: '>=10.13.0'} engines: {node: '>=10.13.0'}
fill-range@7.1.1: fill-range@7.1.1:
@ -268,8 +267,8 @@ packages:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'} engines: {node: '>=0.12.0'}
jiti@2.4.2: jiti@2.6.1:
resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
hasBin: true hasBin: true
lightningcss-darwin-arm64@1.30.1: lightningcss-darwin-arm64@1.30.1:
@ -336,17 +335,8 @@ packages:
resolution: {integrity: sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==} resolution: {integrity: sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==}
engines: {node: '>= 12.0.0'} engines: {node: '>= 12.0.0'}
lodash.castarray@4.4.0: magic-string@0.30.19:
resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} resolution: {integrity: sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==}
lodash.isplainobject@4.0.6:
resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==}
lodash.merge@4.6.2:
resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
magic-string@0.30.17:
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
micromatch@4.0.8: micromatch@4.0.8:
resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
@ -356,15 +346,10 @@ packages:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'} engines: {node: '>=16 || 14 >=14.17'}
minizlib@3.0.2: minizlib@3.1.0:
resolution: {integrity: sha512-oG62iEk+CYt5Xj2YqI5Xi9xWUeZhDI8jjQmC5oThVH5JGCTgIjr7ciJDzC7MBzYd//WvR1OTmP5Q38Q8ShQtVA==} resolution: {integrity: sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==}
engines: {node: '>= 18'} engines: {node: '>= 18'}
mkdirp@3.0.1:
resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==}
engines: {node: '>=10'}
hasBin: true
mri@1.2.0: mri@1.2.0:
resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
engines: {node: '>=4'} engines: {node: '>=4'}
@ -453,15 +438,15 @@ packages:
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
engines: {node: '>=0.10.0'} engines: {node: '>=0.10.0'}
tailwindcss@4.1.11: tailwindcss@4.1.14:
resolution: {integrity: sha512-2E9TBm6MDD/xKYe+dvJZAmg3yxIEDNRc0jwlNyDg/4Fil2QcSLjFKGVff0lAf1jjeaArlG/M75Ey/EYr/OJtBA==} resolution: {integrity: sha512-b7pCxjGO98LnxVkKjaZSDeNuljC4ueKUddjENJOADtubtdo8llTaJy7HwBMeLNSSo2N5QIAgklslK1+Ir8r6CA==}
tapable@2.2.2: tapable@2.2.3:
resolution: {integrity: sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==} resolution: {integrity: sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg==}
engines: {node: '>=6'} engines: {node: '>=6'}
tar@7.4.3: tar@7.5.1:
resolution: {integrity: sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==} resolution: {integrity: sha512-nlGpxf+hv0v7GkWBK2V9spgactGOp0qvfWRxUMjqHyzrt3SgwE48DIv/FhqPHJYLHpgW1opq3nERbz5Anq7n1g==}
engines: {node: '>=18'} engines: {node: '>=18'}
to-regex-range@5.0.1: to-regex-range@5.0.1:
@ -477,28 +462,28 @@ packages:
snapshots: snapshots:
'@ampproject/remapping@2.3.0':
dependencies:
'@jridgewell/gen-mapping': 0.3.12
'@jridgewell/trace-mapping': 0.3.29
'@isaacs/fs-minipass@4.0.1': '@isaacs/fs-minipass@4.0.1':
dependencies: dependencies:
minipass: 7.1.2 minipass: 7.1.2
'@jridgewell/gen-mapping@0.3.12': '@jridgewell/gen-mapping@0.3.13':
dependencies: dependencies:
'@jridgewell/sourcemap-codec': 1.5.4 '@jridgewell/sourcemap-codec': 1.5.5
'@jridgewell/trace-mapping': 0.3.29 '@jridgewell/trace-mapping': 0.3.31
'@jridgewell/remapping@2.3.5':
dependencies:
'@jridgewell/gen-mapping': 0.3.13
'@jridgewell/trace-mapping': 0.3.31
'@jridgewell/resolve-uri@3.1.2': {} '@jridgewell/resolve-uri@3.1.2': {}
'@jridgewell/sourcemap-codec@1.5.4': {} '@jridgewell/sourcemap-codec@1.5.5': {}
'@jridgewell/trace-mapping@0.3.29': '@jridgewell/trace-mapping@0.3.31':
dependencies: dependencies:
'@jridgewell/resolve-uri': 3.1.2 '@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.4 '@jridgewell/sourcemap-codec': 1.5.5
'@parcel/watcher-android-arm64@2.5.1': '@parcel/watcher-android-arm64@2.5.1':
optional: true optional: true
@ -560,87 +545,84 @@ snapshots:
'@parcel/watcher-win32-ia32': 2.5.1 '@parcel/watcher-win32-ia32': 2.5.1
'@parcel/watcher-win32-x64': 2.5.1 '@parcel/watcher-win32-x64': 2.5.1
'@tailwindcss/cli@4.1.11': '@tailwindcss/cli@4.1.14':
dependencies: dependencies:
'@parcel/watcher': 2.5.1 '@parcel/watcher': 2.5.1
'@tailwindcss/node': 4.1.11 '@tailwindcss/node': 4.1.14
'@tailwindcss/oxide': 4.1.11 '@tailwindcss/oxide': 4.1.14
enhanced-resolve: 5.18.2 enhanced-resolve: 5.18.3
mri: 1.2.0 mri: 1.2.0
picocolors: 1.1.1 picocolors: 1.1.1
tailwindcss: 4.1.11 tailwindcss: 4.1.14
'@tailwindcss/node@4.1.11': '@tailwindcss/node@4.1.14':
dependencies: dependencies:
'@ampproject/remapping': 2.3.0 '@jridgewell/remapping': 2.3.5
enhanced-resolve: 5.18.2 enhanced-resolve: 5.18.3
jiti: 2.4.2 jiti: 2.6.1
lightningcss: 1.30.1 lightningcss: 1.30.1
magic-string: 0.30.17 magic-string: 0.30.19
source-map-js: 1.2.1 source-map-js: 1.2.1
tailwindcss: 4.1.11 tailwindcss: 4.1.14
'@tailwindcss/oxide-android-arm64@4.1.11': '@tailwindcss/oxide-android-arm64@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-darwin-arm64@4.1.11': '@tailwindcss/oxide-darwin-arm64@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-darwin-x64@4.1.11': '@tailwindcss/oxide-darwin-x64@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-freebsd-x64@4.1.11': '@tailwindcss/oxide-freebsd-x64@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-linux-arm-gnueabihf@4.1.11': '@tailwindcss/oxide-linux-arm-gnueabihf@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-linux-arm64-gnu@4.1.11': '@tailwindcss/oxide-linux-arm64-gnu@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-linux-arm64-musl@4.1.11': '@tailwindcss/oxide-linux-arm64-musl@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-linux-x64-gnu@4.1.11': '@tailwindcss/oxide-linux-x64-gnu@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-linux-x64-musl@4.1.11': '@tailwindcss/oxide-linux-x64-musl@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-wasm32-wasi@4.1.11': '@tailwindcss/oxide-wasm32-wasi@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-win32-arm64-msvc@4.1.11': '@tailwindcss/oxide-win32-arm64-msvc@4.1.14':
optional: true optional: true
'@tailwindcss/oxide-win32-x64-msvc@4.1.11': '@tailwindcss/oxide-win32-x64-msvc@4.1.14':
optional: true optional: true
'@tailwindcss/oxide@4.1.11': '@tailwindcss/oxide@4.1.14':
dependencies: dependencies:
detect-libc: 2.0.4 detect-libc: 2.1.1
tar: 7.4.3 tar: 7.5.1
optionalDependencies: optionalDependencies:
'@tailwindcss/oxide-android-arm64': 4.1.11 '@tailwindcss/oxide-android-arm64': 4.1.14
'@tailwindcss/oxide-darwin-arm64': 4.1.11 '@tailwindcss/oxide-darwin-arm64': 4.1.14
'@tailwindcss/oxide-darwin-x64': 4.1.11 '@tailwindcss/oxide-darwin-x64': 4.1.14
'@tailwindcss/oxide-freebsd-x64': 4.1.11 '@tailwindcss/oxide-freebsd-x64': 4.1.14
'@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.11 '@tailwindcss/oxide-linux-arm-gnueabihf': 4.1.14
'@tailwindcss/oxide-linux-arm64-gnu': 4.1.11 '@tailwindcss/oxide-linux-arm64-gnu': 4.1.14
'@tailwindcss/oxide-linux-arm64-musl': 4.1.11 '@tailwindcss/oxide-linux-arm64-musl': 4.1.14
'@tailwindcss/oxide-linux-x64-gnu': 4.1.11 '@tailwindcss/oxide-linux-x64-gnu': 4.1.14
'@tailwindcss/oxide-linux-x64-musl': 4.1.11 '@tailwindcss/oxide-linux-x64-musl': 4.1.14
'@tailwindcss/oxide-wasm32-wasi': 4.1.11 '@tailwindcss/oxide-wasm32-wasi': 4.1.14
'@tailwindcss/oxide-win32-arm64-msvc': 4.1.11 '@tailwindcss/oxide-win32-arm64-msvc': 4.1.14
'@tailwindcss/oxide-win32-x64-msvc': 4.1.11 '@tailwindcss/oxide-win32-x64-msvc': 4.1.14
'@tailwindcss/typography@0.5.16(tailwindcss@4.1.11)': '@tailwindcss/typography@0.5.19(tailwindcss@4.1.14)':
dependencies: dependencies:
lodash.castarray: 4.4.0
lodash.isplainobject: 4.0.6
lodash.merge: 4.6.2
postcss-selector-parser: 6.0.10 postcss-selector-parser: 6.0.10
tailwindcss: 4.1.11 tailwindcss: 4.1.14
braces@3.0.3: braces@3.0.3:
dependencies: dependencies:
@ -652,12 +634,12 @@ snapshots:
detect-libc@1.0.3: {} detect-libc@1.0.3: {}
detect-libc@2.0.4: {} detect-libc@2.1.1: {}
enhanced-resolve@5.18.2: enhanced-resolve@5.18.3:
dependencies: dependencies:
graceful-fs: 4.2.11 graceful-fs: 4.2.11
tapable: 2.2.2 tapable: 2.2.3
fill-range@7.1.1: fill-range@7.1.1:
dependencies: dependencies:
@ -673,7 +655,7 @@ snapshots:
is-number@7.0.0: {} is-number@7.0.0: {}
jiti@2.4.2: {} jiti@2.6.1: {}
lightningcss-darwin-arm64@1.30.1: lightningcss-darwin-arm64@1.30.1:
optional: true optional: true
@ -707,7 +689,7 @@ snapshots:
lightningcss@1.30.1: lightningcss@1.30.1:
dependencies: dependencies:
detect-libc: 2.0.4 detect-libc: 2.1.1
optionalDependencies: optionalDependencies:
lightningcss-darwin-arm64: 1.30.1 lightningcss-darwin-arm64: 1.30.1
lightningcss-darwin-x64: 1.30.1 lightningcss-darwin-x64: 1.30.1
@ -720,15 +702,9 @@ snapshots:
lightningcss-win32-arm64-msvc: 1.30.1 lightningcss-win32-arm64-msvc: 1.30.1
lightningcss-win32-x64-msvc: 1.30.1 lightningcss-win32-x64-msvc: 1.30.1
lodash.castarray@4.4.0: {} magic-string@0.30.19:
lodash.isplainobject@4.0.6: {}
lodash.merge@4.6.2: {}
magic-string@0.30.17:
dependencies: dependencies:
'@jridgewell/sourcemap-codec': 1.5.4 '@jridgewell/sourcemap-codec': 1.5.5
micromatch@4.0.8: micromatch@4.0.8:
dependencies: dependencies:
@ -737,12 +713,10 @@ snapshots:
minipass@7.1.2: {} minipass@7.1.2: {}
minizlib@3.0.2: minizlib@3.1.0:
dependencies: dependencies:
minipass: 7.1.2 minipass: 7.1.2
mkdirp@3.0.1: {}
mri@1.2.0: {} mri@1.2.0: {}
node-addon-api@7.1.1: {} node-addon-api@7.1.1: {}
@ -764,17 +738,16 @@ snapshots:
source-map-js@1.2.1: {} source-map-js@1.2.1: {}
tailwindcss@4.1.11: {} tailwindcss@4.1.14: {}
tapable@2.2.2: {} tapable@2.2.3: {}
tar@7.4.3: tar@7.5.1:
dependencies: dependencies:
'@isaacs/fs-minipass': 4.0.1 '@isaacs/fs-minipass': 4.0.1
chownr: 3.0.0 chownr: 3.0.0
minipass: 7.1.2 minipass: 7.1.2
minizlib: 3.0.2 minizlib: 3.1.0
mkdirp: 3.0.1
yallist: 5.0.0 yallist: 5.0.0
to-regex-range@5.0.1: to-regex-range@5.0.1:

View file

@ -1,4 +1,4 @@
@import "tailwindcss"; @import "tailwindcss" source("../templates");
@plugin "@tailwindcss/typography"; @plugin "@tailwindcss/typography";
@custom-variant dark (&:where(.dark, .dark *)); @custom-variant dark (&:where(.dark, .dark *));

View file

@ -1,4 +1,4 @@
/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */ /*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */
@layer properties; @layer properties;
@layer theme, base, components, utilities; @layer theme, base, components, utilities;
@layer theme { @layer theme {
@ -26,6 +26,7 @@
--text-3xl--line-height: calc(2.25 / 1.875); --text-3xl--line-height: calc(2.25 / 1.875);
--text-9xl: 8rem; --text-9xl: 8rem;
--text-9xl--line-height: 1; --text-9xl--line-height: 1;
--font-weight-normal: 400;
--font-weight-medium: 500; --font-weight-medium: 500;
--font-weight-semibold: 600; --font-weight-semibold: 600;
--font-weight-bold: 700; --font-weight-bold: 700;
@ -169,6 +170,9 @@
::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field { ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
padding-block: 0; padding-block: 0;
} }
::-webkit-calendar-picker-indicator {
line-height: 1;
}
:-moz-ui-invalid { :-moz-ui-invalid {
box-shadow: none; box-shadow: none;
} }
@ -183,9 +187,6 @@
} }
} }
@layer utilities { @layer utilities {
.visible {
visibility: visible;
}
.absolute { .absolute {
position: absolute; position: absolute;
} }
@ -195,6 +196,9 @@
.relative { .relative {
position: relative; position: relative;
} }
.sticky {
position: sticky;
}
.inset-0 { .inset-0 {
inset: calc(var(--spacing) * 0); inset: calc(var(--spacing) * 0);
} }
@ -213,6 +217,15 @@
.z-50 { .z-50 {
z-index: 50; z-index: 50;
} }
.order-1 {
order: 1;
}
.order-2 {
order: 2;
}
.order-3 {
order: 3;
}
.mx-1 { .mx-1 {
margin-inline: calc(var(--spacing) * 1); margin-inline: calc(var(--spacing) * 1);
} }
@ -325,7 +338,7 @@
} }
:where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
border-color: var(--tw-prose-hr); border-color: var(--tw-prose-hr);
border-top-width: 1; border-top-width: 1px;
margin-top: 3em; margin-top: 3em;
margin-bottom: 3em; margin-bottom: 3em;
} }
@ -410,7 +423,7 @@
font-weight: 500; font-weight: 500;
font-family: inherit; font-family: inherit;
color: var(--tw-prose-kbd); color: var(--tw-prose-kbd);
box-shadow: 0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%), 0 3px 0 rgb(var(--tw-prose-kbd-shadows) / 10%); box-shadow: 0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);
font-size: 0.875em; font-size: 0.875em;
border-radius: 0.3125rem; border-radius: 0.3125rem;
padding-top: 0.1875em; padding-top: 0.1875em;
@ -546,7 +559,7 @@
--tw-prose-quote-borders: oklch(92.8% 0.006 264.531); --tw-prose-quote-borders: oklch(92.8% 0.006 264.531);
--tw-prose-captions: oklch(55.1% 0.027 264.364); --tw-prose-captions: oklch(55.1% 0.027 264.364);
--tw-prose-kbd: oklch(21% 0.034 264.665); --tw-prose-kbd: oklch(21% 0.034 264.665);
--tw-prose-kbd-shadows: NaN NaN NaN; --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.034 264.665) 10%, transparent);
--tw-prose-code: oklch(21% 0.034 264.665); --tw-prose-code: oklch(21% 0.034 264.665);
--tw-prose-pre-code: oklch(92.8% 0.006 264.531); --tw-prose-pre-code: oklch(92.8% 0.006 264.531);
--tw-prose-pre-bg: oklch(27.8% 0.033 256.848); --tw-prose-pre-bg: oklch(27.8% 0.033 256.848);
@ -564,7 +577,7 @@
--tw-prose-invert-quote-borders: oklch(37.3% 0.034 259.733); --tw-prose-invert-quote-borders: oklch(37.3% 0.034 259.733);
--tw-prose-invert-captions: oklch(70.7% 0.022 261.325); --tw-prose-invert-captions: oklch(70.7% 0.022 261.325);
--tw-prose-invert-kbd: #fff; --tw-prose-invert-kbd: #fff;
--tw-prose-invert-kbd-shadows: 255 255 255; --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);
--tw-prose-invert-code: #fff; --tw-prose-invert-code: #fff;
--tw-prose-invert-pre-code: oklch(87.2% 0.01 258.338); --tw-prose-invert-pre-code: oklch(87.2% 0.01 258.338);
--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%); --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
@ -667,6 +680,9 @@
.mt-16 { .mt-16 {
margin-top: calc(var(--spacing) * 16); margin-top: calc(var(--spacing) * 16);
} }
.mt-48 {
margin-top: calc(var(--spacing) * 48);
}
.mr-1\.5 { .mr-1\.5 {
margin-right: calc(var(--spacing) * 1.5); margin-right: calc(var(--spacing) * 1.5);
} }
@ -697,6 +713,9 @@
.ml-1\.5 { .ml-1\.5 {
margin-left: calc(var(--spacing) * 1.5); margin-left: calc(var(--spacing) * 1.5);
} }
.ml-2 {
margin-left: calc(var(--spacing) * 2);
}
.ml-4 { .ml-4 {
margin-left: calc(var(--spacing) * 4); margin-left: calc(var(--spacing) * 4);
} }
@ -712,6 +731,9 @@
.grid { .grid {
display: grid; display: grid;
} }
.hidden {
display: none;
}
.inline { .inline {
display: inline; display: inline;
} }
@ -733,6 +755,12 @@
.h-full { .h-full {
height: 100%; height: 100%;
} }
.h-min {
height: min-content;
}
.max-h-lvh {
max-height: 100lvh;
}
.min-h-\[3\.5rem\] { .min-h-\[3\.5rem\] {
min-height: 3.5rem; min-height: 3.5rem;
} }
@ -751,6 +779,9 @@
.w-16 { .w-16 {
width: calc(var(--spacing) * 16); width: calc(var(--spacing) * 16);
} }
.w-\[calc\(\(100\%-var\(--container-3xl\)\)\/2\)\] {
width: calc((100% - var(--container-3xl)) / 2);
}
.w-full { .w-full {
width: 100%; width: 100%;
} }
@ -772,9 +803,6 @@
.basis-full { .basis-full {
flex-basis: 100%; flex-basis: 100%;
} }
.transform {
transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
}
.cursor-pointer { .cursor-pointer {
cursor: pointer; cursor: pointer;
} }
@ -829,6 +857,9 @@
text-overflow: ellipsis; text-overflow: ellipsis;
white-space: nowrap; white-space: nowrap;
} }
.overflow-y-auto {
overflow-y: auto;
}
.rounded-full { .rounded-full {
border-radius: calc(infinity * 1px); border-radius: calc(infinity * 1px);
} }
@ -987,6 +1018,9 @@
.py-4 { .py-4 {
padding-block: calc(var(--spacing) * 4); padding-block: calc(var(--spacing) * 4);
} }
.pt-18 {
padding-top: calc(var(--spacing) * 18);
}
.pt-24 { .pt-24 {
padding-top: calc(var(--spacing) * 24); padding-top: calc(var(--spacing) * 24);
} }
@ -1005,6 +1039,9 @@
.pb-2\.5 { .pb-2\.5 {
padding-bottom: calc(var(--spacing) * 2.5); padding-bottom: calc(var(--spacing) * 2.5);
} }
.pb-4 {
padding-bottom: calc(var(--spacing) * 4);
}
.pb-16 { .pb-16 {
padding-bottom: calc(var(--spacing) * 16); padding-bottom: calc(var(--spacing) * 16);
} }
@ -1145,7 +1182,7 @@
--tw-prose-quote-borders: oklch(92.2% 0 0); --tw-prose-quote-borders: oklch(92.2% 0 0);
--tw-prose-captions: oklch(55.6% 0 0); --tw-prose-captions: oklch(55.6% 0 0);
--tw-prose-kbd: oklch(20.5% 0 0); --tw-prose-kbd: oklch(20.5% 0 0);
--tw-prose-kbd-shadows: NaN NaN NaN; --tw-prose-kbd-shadows: color-mix(in oklab, oklch(20.5% 0 0) 10%, transparent);
--tw-prose-code: oklch(20.5% 0 0); --tw-prose-code: oklch(20.5% 0 0);
--tw-prose-pre-code: oklch(92.2% 0 0); --tw-prose-pre-code: oklch(92.2% 0 0);
--tw-prose-pre-bg: oklch(26.9% 0 0); --tw-prose-pre-bg: oklch(26.9% 0 0);
@ -1163,7 +1200,7 @@
--tw-prose-invert-quote-borders: oklch(37.1% 0 0); --tw-prose-invert-quote-borders: oklch(37.1% 0 0);
--tw-prose-invert-captions: oklch(70.8% 0 0); --tw-prose-invert-captions: oklch(70.8% 0 0);
--tw-prose-invert-kbd: #fff; --tw-prose-invert-kbd: #fff;
--tw-prose-invert-kbd-shadows: 255 255 255; --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);
--tw-prose-invert-code: #fff; --tw-prose-invert-code: #fff;
--tw-prose-invert-pre-code: oklch(87% 0 0); --tw-prose-invert-pre-code: oklch(87% 0 0);
--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%); --tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);
@ -1196,13 +1233,6 @@
} }
} }
} }
.hover\:underline {
&:hover {
@media (hover: hover) {
text-decoration-line: underline;
}
}
}
.active\:scale-95 { .active\:scale-95 {
&:active { &:active {
--tw-scale-x: 95%; --tw-scale-x: 95%;
@ -1231,6 +1261,11 @@
margin-left: calc(var(--spacing) * 6); margin-left: calc(var(--spacing) * 6);
} }
} }
.lg\:block {
@media (width >= 64rem) {
display: block;
}
}
.lg\:flex { .lg\:flex {
@media (width >= 64rem) { @media (width >= 64rem) {
display: flex; display: flex;
@ -1356,6 +1391,42 @@
--tw-prose-td-borders: var(--tw-prose-invert-td-borders); --tw-prose-td-borders: var(--tw-prose-invert-td-borders);
} }
} }
.prose-a\:block {
& :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
display: block;
}
}
.prose-a\:truncate {
& :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
.prose-a\:font-normal {
& :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
--tw-font-weight: var(--font-weight-normal);
font-weight: var(--font-weight-normal);
}
}
.prose-a\:secondary-link {
& :is(:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
color: var(--tw-prose-body);
text-decoration-line: none;
&:hover {
@media (hover: hover) {
color: var(--color-black);
}
}
&:where(.dark, .dark *) {
&:hover {
@media (hover: hover) {
color: var(--color-white);
}
}
}
}
}
.prose-pre\:rounded-lg { .prose-pre\:rounded-lg {
& :is(:where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *))) { & :is(:where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *))) {
border-radius: var(--radius-lg); border-radius: var(--radius-lg);
@ -1518,26 +1589,6 @@ article {
display: flex; display: flex;
} }
} }
@property --tw-rotate-x {
syntax: "*";
inherits: false;
}
@property --tw-rotate-y {
syntax: "*";
inherits: false;
}
@property --tw-rotate-z {
syntax: "*";
inherits: false;
}
@property --tw-skew-x {
syntax: "*";
inherits: false;
}
@property --tw-skew-y {
syntax: "*";
inherits: false;
}
@property --tw-space-x-reverse { @property --tw-space-x-reverse {
syntax: "*"; syntax: "*";
inherits: false; inherits: false;
@ -1761,11 +1812,6 @@ article {
@layer properties { @layer properties {
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) { @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
*, ::before, ::after, ::backdrop { *, ::before, ::after, ::backdrop {
--tw-rotate-x: initial;
--tw-rotate-y: initial;
--tw-rotate-z: initial;
--tw-skew-x: initial;
--tw-skew-y: initial;
--tw-space-x-reverse: 0; --tw-space-x-reverse: 0;
--tw-border-style: solid; --tw-border-style: solid;
--tw-backdrop-blur: initial; --tw-backdrop-blur: initial;

View file

@ -8,19 +8,27 @@
<!-- Body Start inject --> <!-- Body Start inject -->
{% include "injects/body_start.html" ignore missing %} {% include "injects/body_start.html" ignore missing %}
<main <div class="flex">
class="prose prose-neutral dark:prose-invert prose-pre:rounded-lg prose-img:rounded-lg relative mx-auto min-h-[calc(100vh-9rem)] max-w-3xl px-4 pt-24 pb-16 break-words lg:pt-32" <div class="order-1 hidden w-[calc((100%-var(--container-3xl))/2)] lg:block"></div>
> <aside
{% block main %} class="sticky top-0 order-3 mt-48 hidden h-min w-[calc((100%-var(--container-3xl))/2)] lg:block"
>
{% include "partials/side_toc.html" %}
</aside>
<main
class="prose prose-neutral dark:prose-invert prose-pre:rounded-lg prose-img:rounded-lg order-2 mx-auto min-h-[calc(100vh-9rem)] w-full max-w-3xl px-4 pt-24 pb-16 break-words lg:pt-32"
>
{% block main %}
<!-- Profile --> <!-- Profile -->
{% if paginator is undefined or paginator.current_index == 1 %}<!----> {% if paginator is undefined or paginator.current_index == 1 %}<!---->
{% include "partials/profile.html" %}<!----> {% include "partials/profile.html" %}<!---->
{% endif %}<!----> {% endif %}<!---->
{% include "partials/page_list.html" %}<!----> {% include "partials/page_list.html" %}<!---->
{% endblock main %} {% endblock main %}
</main> </main>
</div>
{% include "partials/footer.html" %} {% include "partials/footer.html" %}

View file

@ -0,0 +1,23 @@
{% if page.toc and page.extra.side_toc | default(value=config.extra.side_toc) %}
<nav
class="prose prose-neutral dark:prose-invert prose-a:block prose-a:truncate prose-a:font-normal prose-a:secondary-link max-h-lvh overflow-y-auto px-2 pt-18 pb-4"
>
<b class="ml-1.5">Table of Contents</b>
<ul>
{% for h1 in page.toc %}
<li>
<a href="#{{ h1.id | safe }}">{{ h1.title }}</a>
{% if h1.children %}
<ul>
{% for h2 in h1.children %}
<li>
<a href="#{{ h2.id | safe }}">{{ h2.title }}</a>
</li>
{% endfor %}
</ul>
{% endif %}
</li>
{% endfor %}
</ul>
</nav>
{% endif %}

View file

@ -1,31 +1,25 @@
{% if page.toc %}<!----> {% if page.toc %}
<div class="block-bg mb-12 flex rounded-lg p-2 text-lg"> <nav class="block-bg prose-a:secondary-link mb-12 flex rounded-lg p-2 text-lg">
<details> <details>
<summary class="cursor-pointer py-1 pl-4"> <summary class="cursor-pointer py-1 pl-4">
<span>Table of Contents</span> <span class="ml-2">Table of Contents</span>
</summary> </summary>
<div class="px-2"> <ul class="mx-2">
<ul> {% for h1 in page.toc %}
{% for h1 in page.toc %} <li>
<li> <a href="#{{ h1.id | safe }}">{{ h1.title }}</a>
<a class="no-underline hover:underline" href="{{ h1.permalink | safe }}" {% if h1.children %}
>{{ h1.title }}</a <ul>
> {% for h2 in h1.children %}
{% if h1.children %} <li>
<ul> <a href="#{{ h2.id | safe }}">{{ h2.title }}</a>
{% for h2 in h1.children %} </li>
<li> {% endfor %}
<a class="no-underline hover:underline" href="{{ h2.permalink | safe }}" </ul>
>{{ h2.title }}</a {% endif %}
> </li>
</li> {% endfor %}
{% endfor %} </ul>
</ul>
{% endif %}
</li>
{% endfor %}
</ul>
</div>
</details> </details>
</div> </nav>
{% endif %} {% endif %}