jekyll-theme-zer0 0.16.0 → 0.17.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +115 -10
- data/README.md +7 -7
- data/_data/authors.yml +2 -2
- data/_data/features.yml +676 -0
- data/_data/navigation/README.md +54 -0
- data/_data/navigation/about.yml +7 -5
- data/_data/navigation/docs.yml +77 -31
- data/_data/navigation/home.yml +4 -3
- data/_data/navigation/main.yml +16 -7
- data/_data/navigation/quickstart.yml +4 -2
- data/_includes/components/cookie-consent.html +81 -9
- data/_includes/components/js-cdn.html +2 -2
- data/_includes/components/mermaid.html +260 -14
- data/_includes/core/head.html +1 -0
- data/_includes/landing/landing-install-cards.html +8 -8
- data/_includes/landing/landing-quick-links.html +4 -4
- data/_includes/navigation/breadcrumbs.html +29 -6
- data/_includes/navigation/nav-tree.html +181 -0
- data/_includes/navigation/navbar.html +262 -9
- data/_includes/navigation/sidebar-left.html +22 -23
- data/_layouts/default.html +1 -1
- data/_layouts/landing.html +21 -21
- data/_layouts/notebook.html +4 -4
- data/_layouts/root.html +2 -2
- data/_sass/core/_nav-tree.scss +145 -0
- data/_sass/core/code-copy.scss +45 -6
- data/_sass/custom.scss +541 -1
- data/assets/js/code-copy.js +79 -13
- data/assets/js/modules/navigation/config.js +149 -0
- data/assets/js/modules/navigation/focus.js +189 -0
- data/assets/js/modules/navigation/gestures.js +179 -0
- data/assets/js/modules/navigation/index.js +227 -0
- data/assets/js/modules/navigation/keyboard.js +237 -0
- data/assets/js/modules/navigation/scroll-spy.js +219 -0
- data/assets/js/modules/navigation/sidebar-state.js +267 -0
- data/assets/js/modules/navigation/smooth-scroll.js +153 -0
- data/assets/js/ui-enhancements.js +194 -0
- data/scripts/migrate-nav-modes.sh +146 -0
- metadata +20 -7
- data/assets/js/sidebar.js +0 -511
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Navigation Data Schema Documentation
|
|
2
|
+
# ===================================
|
|
3
|
+
#
|
|
4
|
+
# This directory contains YAML navigation data files used by the sidebar
|
|
5
|
+
# and navbar components. All files follow a standardized schema.
|
|
6
|
+
#
|
|
7
|
+
# ## Schema Definition
|
|
8
|
+
#
|
|
9
|
+
# Each navigation item can have the following properties:
|
|
10
|
+
#
|
|
11
|
+
# ```yaml
|
|
12
|
+
# - title: string # Required - Display text
|
|
13
|
+
# url: string # Optional - Link URL (relative to site root)
|
|
14
|
+
# icon: string # Optional - Bootstrap Icons class (e.g., "bi-folder")
|
|
15
|
+
# description: string # Optional - Tooltip or description text
|
|
16
|
+
# expanded: boolean # Optional - Default expanded state (default: false)
|
|
17
|
+
# children: array # Optional - Nested navigation items (recursive)
|
|
18
|
+
# ```
|
|
19
|
+
#
|
|
20
|
+
# ## Navigation Modes
|
|
21
|
+
#
|
|
22
|
+
# The sidebar supports three navigation modes set via `page.sidebar.nav`:
|
|
23
|
+
#
|
|
24
|
+
# 1. **auto** - Auto-generates from collection documents
|
|
25
|
+
# 2. **tree** - Uses YAML data from this directory
|
|
26
|
+
# 3. **categories** - Groups by Jekyll categories
|
|
27
|
+
#
|
|
28
|
+
# ## Available Files
|
|
29
|
+
#
|
|
30
|
+
# - main.yml - Primary site navigation (navbar)
|
|
31
|
+
# - docs.yml - Documentation section navigation
|
|
32
|
+
# - about.yml - About section navigation
|
|
33
|
+
# - quickstart.yml - Quick start guide navigation
|
|
34
|
+
# - home.yml - Homepage quick links
|
|
35
|
+
# - posts.yml - Blog category navigation
|
|
36
|
+
#
|
|
37
|
+
# ## Example Usage
|
|
38
|
+
#
|
|
39
|
+
# In page front matter:
|
|
40
|
+
# ```yaml
|
|
41
|
+
# sidebar:
|
|
42
|
+
# nav: docs # Uses _data/navigation/docs.yml
|
|
43
|
+
# ```
|
|
44
|
+
#
|
|
45
|
+
# ## Schema Validation
|
|
46
|
+
#
|
|
47
|
+
# Navigation YAML is validated at build time by _plugins/navigation_validator.rb
|
|
48
|
+
# Invalid schemas will produce build warnings.
|
|
49
|
+
#
|
|
50
|
+
# ## Migration Notes (v2.0)
|
|
51
|
+
#
|
|
52
|
+
# - Renamed `sublinks` to `children` for consistency with tree terminology
|
|
53
|
+
# - Added `expanded` property for default state
|
|
54
|
+
# - Navigation modes changed: dynamic→auto, searchCats→categories
|
data/_data/navigation/about.yml
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
# About Navigation Configuration
|
|
2
|
-
# Used by: About section sidebar
|
|
2
|
+
# Used by: About section sidebar (nav: tree)
|
|
3
3
|
# Purpose: Navigation for about pages, features, settings, and site info
|
|
4
|
+
# Schema: See README.md for full documentation
|
|
4
5
|
|
|
5
6
|
- title: About
|
|
6
7
|
icon: bi-info-circle
|
|
7
8
|
url: /about/
|
|
8
|
-
|
|
9
|
+
expanded: true
|
|
10
|
+
children:
|
|
9
11
|
- title: Overview
|
|
10
12
|
url: /about/
|
|
11
13
|
- title: Features
|
|
@@ -16,7 +18,7 @@
|
|
|
16
18
|
- title: Site Info
|
|
17
19
|
icon: bi-bar-chart
|
|
18
20
|
url: /about/stats/
|
|
19
|
-
|
|
21
|
+
children:
|
|
20
22
|
- title: Statistics
|
|
21
23
|
url: /about/stats/
|
|
22
24
|
- title: Site Map
|
|
@@ -27,14 +29,14 @@
|
|
|
27
29
|
- title: Settings
|
|
28
30
|
icon: bi-gear
|
|
29
31
|
url: /about/config/
|
|
30
|
-
|
|
32
|
+
children:
|
|
31
33
|
- title: Configuration
|
|
32
34
|
url: /about/config/
|
|
33
35
|
|
|
34
36
|
- title: Legal
|
|
35
37
|
icon: bi-file-text
|
|
36
38
|
url: /terms-of-service/
|
|
37
|
-
|
|
39
|
+
children:
|
|
38
40
|
- title: Terms of Service
|
|
39
41
|
url: /terms-of-service/
|
|
40
42
|
- title: Privacy Policy
|
data/_data/navigation/docs.yml
CHANGED
|
@@ -1,57 +1,103 @@
|
|
|
1
1
|
# Documentation Navigation Configuration
|
|
2
|
-
# Used by: Docs sidebar
|
|
3
|
-
# Purpose: Organize documentation by topic area
|
|
2
|
+
# Used by: Docs sidebar (nav: tree)
|
|
3
|
+
# Purpose: Organize documentation by topic area for _docs collection
|
|
4
|
+
# Schema: See README.md for full documentation
|
|
4
5
|
|
|
6
|
+
# ============================================================
|
|
7
|
+
# Getting Started
|
|
8
|
+
# ============================================================
|
|
9
|
+
- title: Getting Started
|
|
10
|
+
icon: bi-rocket-takeoff
|
|
11
|
+
url: /docs/
|
|
12
|
+
expanded: true
|
|
13
|
+
children:
|
|
14
|
+
- title: Documentation Home
|
|
15
|
+
url: /docs/
|
|
16
|
+
- title: Installation
|
|
17
|
+
url: /docs/installation/
|
|
18
|
+
- title: Troubleshooting
|
|
19
|
+
url: /docs/troubleshooting/
|
|
20
|
+
|
|
21
|
+
# ============================================================
|
|
22
|
+
# Core Technologies
|
|
23
|
+
# ============================================================
|
|
5
24
|
- title: Jekyll
|
|
6
25
|
icon: bi-journal-code
|
|
7
26
|
url: /docs/jekyll/
|
|
8
|
-
|
|
9
|
-
- title: Jekyll
|
|
27
|
+
children:
|
|
28
|
+
- title: Jekyll Overview
|
|
10
29
|
url: /docs/jekyll/
|
|
11
|
-
- title:
|
|
12
|
-
url: /docs/jekyll/
|
|
13
|
-
- title:
|
|
14
|
-
url: /docs/
|
|
30
|
+
- title: Configuration
|
|
31
|
+
url: /docs/jekyll/jekyll-config/
|
|
32
|
+
- title: Front Matter
|
|
33
|
+
url: /docs/front-matter/
|
|
15
34
|
- title: Liquid Templating
|
|
16
35
|
url: /docs/jekyll/jekyll-liquid/
|
|
17
|
-
- title: Frontmatter CMS
|
|
18
|
-
url: /docs/jekyll/jekyll-frontmatter-cms/
|
|
19
36
|
- title: Syntax Highlighting
|
|
20
37
|
url: /docs/jekyll/jekyll-highlighting/
|
|
38
|
+
- title: Performance
|
|
39
|
+
url: /docs/jekyll/jekyll-performance-optimization/
|
|
40
|
+
- title: Security
|
|
41
|
+
url: /docs/jekyll/jekyll-security/
|
|
42
|
+
|
|
43
|
+
- title: Ruby & Bundler
|
|
44
|
+
icon: bi-gem
|
|
45
|
+
url: /docs/ruby/
|
|
46
|
+
children:
|
|
47
|
+
- title: Ruby Overview
|
|
48
|
+
url: /docs/ruby/
|
|
49
|
+
- title: Ruby 101
|
|
50
|
+
url: /docs/ruby-101/
|
|
51
|
+
|
|
52
|
+
- title: Liquid
|
|
53
|
+
icon: bi-droplet
|
|
54
|
+
url: /docs/liquid/
|
|
55
|
+
children:
|
|
56
|
+
- title: Liquid Overview
|
|
57
|
+
url: /docs/liquid/
|
|
21
58
|
|
|
59
|
+
- title: Docker
|
|
60
|
+
icon: bi-box-seam
|
|
61
|
+
url: /docs/docker/
|
|
62
|
+
children:
|
|
63
|
+
- title: Docker Overview
|
|
64
|
+
url: /docs/docker/
|
|
65
|
+
|
|
66
|
+
- title: Bootstrap
|
|
67
|
+
icon: bi-bootstrap
|
|
68
|
+
url: /docs/bootstrap/
|
|
69
|
+
children:
|
|
70
|
+
- title: Bootstrap Overview
|
|
71
|
+
url: /docs/bootstrap/
|
|
72
|
+
|
|
73
|
+
# ============================================================
|
|
74
|
+
# Theme Features
|
|
75
|
+
# ============================================================
|
|
22
76
|
- title: Features
|
|
23
77
|
icon: bi-stars
|
|
24
|
-
url: /
|
|
25
|
-
|
|
78
|
+
url: /features/
|
|
79
|
+
children:
|
|
26
80
|
- title: All Features
|
|
27
|
-
url: /
|
|
81
|
+
url: /features/
|
|
82
|
+
- title: Mermaid Diagrams
|
|
83
|
+
url: /docs/jekyll/mermaid-native-markdown/
|
|
84
|
+
- title: Math with MathJax
|
|
85
|
+
url: /docs/jekyll/jekyll-math-symbols-with-mathjax/
|
|
28
86
|
- title: Preview Image Generator
|
|
29
87
|
url: /docs/features/preview-image-generator/
|
|
30
|
-
- title:
|
|
31
|
-
url: /
|
|
32
|
-
- title: AI Development Guide
|
|
33
|
-
url: /about/features/ai-development-guide/
|
|
88
|
+
- title: Frontmatter CMS
|
|
89
|
+
url: /docs/jekyll/jekyll-frontmatter-cms/
|
|
34
90
|
|
|
91
|
+
# ============================================================
|
|
92
|
+
# Deployment
|
|
93
|
+
# ============================================================
|
|
35
94
|
- title: Deployment
|
|
36
95
|
icon: bi-cloud-upload
|
|
37
96
|
url: /quickstart/github-setup/
|
|
38
|
-
|
|
97
|
+
children:
|
|
39
98
|
- title: GitHub Pages
|
|
40
99
|
url: /quickstart/github-setup/
|
|
41
100
|
- title: Netlify
|
|
42
101
|
url: /docs/jekyll/deploying-jekyll-website-to-netlify/
|
|
43
102
|
- title: Custom Domain
|
|
44
103
|
url: /docs/jekyll/deploying-personal-website-with-custom-domain/
|
|
45
|
-
|
|
46
|
-
- title: Configuration
|
|
47
|
-
icon: bi-gear
|
|
48
|
-
url: /about/config/
|
|
49
|
-
sublinks:
|
|
50
|
-
- title: Site Config
|
|
51
|
-
url: /about/config/
|
|
52
|
-
- title: Jekyll Config
|
|
53
|
-
url: /docs/jekyll/jekyll-config/
|
|
54
|
-
- title: Performance
|
|
55
|
-
url: /docs/jekyll/jekyll-performance-optimization/
|
|
56
|
-
- title: Security
|
|
57
|
-
url: /docs/jekyll/jekyll-security/
|
data/_data/navigation/home.yml
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# Home Navigation Configuration
|
|
2
2
|
# Used by: Header navigation and homepage quick links
|
|
3
3
|
# Purpose: Quick access links for the home/landing area
|
|
4
|
+
# Schema: See README.md for full documentation
|
|
4
5
|
|
|
5
6
|
- title: Home
|
|
6
7
|
icon: bi-house
|
|
7
8
|
url: /
|
|
8
|
-
|
|
9
|
+
children:
|
|
9
10
|
- title: Blog
|
|
10
11
|
url: /blog/
|
|
11
12
|
- title: Quick Start
|
|
@@ -14,7 +15,7 @@
|
|
|
14
15
|
- title: Discover
|
|
15
16
|
icon: bi-compass
|
|
16
17
|
url: /sitemap/
|
|
17
|
-
|
|
18
|
+
children:
|
|
18
19
|
- title: Site Map
|
|
19
20
|
url: /sitemap/
|
|
20
21
|
- title: Categories
|
|
@@ -25,7 +26,7 @@
|
|
|
25
26
|
- title: Connect
|
|
26
27
|
icon: bi-envelope
|
|
27
28
|
url: /contact/
|
|
28
|
-
|
|
29
|
+
children:
|
|
29
30
|
- title: Contact
|
|
30
31
|
url: /contact/
|
|
31
32
|
- title: About
|
data/_data/navigation/main.yml
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
# Main Navigation Configuration
|
|
2
2
|
# Used by: _includes/navigation/navbar.html
|
|
3
|
-
# Purpose: Primary site navigation with dropdown
|
|
3
|
+
# Purpose: Primary site navigation with dropdown children
|
|
4
|
+
# Schema: See README.md for full documentation
|
|
4
5
|
|
|
5
6
|
- title: Quick Start
|
|
6
7
|
icon: bi-rocket-takeoff
|
|
7
8
|
url: /quickstart/
|
|
8
|
-
|
|
9
|
+
children:
|
|
9
10
|
- title: Machine Setup
|
|
10
11
|
url: /quickstart/machine-setup/
|
|
11
12
|
- title: Jekyll Setup
|
|
@@ -16,7 +17,7 @@
|
|
|
16
17
|
- title: Blog
|
|
17
18
|
icon: bi-journal-text
|
|
18
19
|
url: /blog/
|
|
19
|
-
|
|
20
|
+
children:
|
|
20
21
|
- title: All Posts
|
|
21
22
|
url: /posts/
|
|
22
23
|
- title: Categories
|
|
@@ -27,18 +28,26 @@
|
|
|
27
28
|
- title: Docs
|
|
28
29
|
icon: bi-journal-bookmark
|
|
29
30
|
url: /docs/
|
|
30
|
-
|
|
31
|
+
children:
|
|
32
|
+
- title: Documentation Home
|
|
33
|
+
url: /docs/
|
|
34
|
+
- title: Installation
|
|
35
|
+
url: /docs/installation/
|
|
31
36
|
- title: Jekyll Guide
|
|
32
37
|
url: /docs/jekyll/
|
|
38
|
+
- title: Docker
|
|
39
|
+
url: /docs/docker/
|
|
33
40
|
- title: Features
|
|
34
|
-
url: /
|
|
41
|
+
url: /features/
|
|
42
|
+
- title: Troubleshooting
|
|
43
|
+
url: /docs/troubleshooting/
|
|
35
44
|
|
|
36
45
|
- title: About
|
|
37
46
|
icon: bi-info-circle
|
|
38
47
|
url: /about/
|
|
39
|
-
|
|
48
|
+
children:
|
|
40
49
|
- title: Features
|
|
41
|
-
url: /
|
|
50
|
+
url: /features/
|
|
42
51
|
- title: Statistics
|
|
43
52
|
url: /about/stats/
|
|
44
53
|
- title: Config
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
# Quick Start Navigation Configuration
|
|
2
|
-
# Used by: Quick Start sidebar
|
|
2
|
+
# Used by: Quick Start sidebar (nav: tree)
|
|
3
3
|
# Purpose: Step-by-step guide navigation for new users
|
|
4
4
|
# Order: Overview → Machine → Jekyll → GitHub → Personalization
|
|
5
|
+
# Schema: See README.md for full documentation
|
|
5
6
|
|
|
6
7
|
- title: "Quick Start"
|
|
7
8
|
icon: bi-flag
|
|
8
9
|
url: /quickstart/
|
|
9
|
-
|
|
10
|
+
expanded: true
|
|
11
|
+
children:
|
|
10
12
|
- title: "1. Machine Setup"
|
|
11
13
|
url: /quickstart/machine-setup/
|
|
12
14
|
icon: bi-laptop
|
|
@@ -49,7 +49,7 @@ Usage: Include in root.html layout
|
|
|
49
49
|
Configuration: Uses site.posthog settings from _config.yml
|
|
50
50
|
{% endcomment %}
|
|
51
51
|
|
|
52
|
-
<div id="cookieConsent" class="cookie-consent-banner position-fixed bottom-0 start-0 end-0 bg-dark text-light p-3 shadow-lg"
|
|
52
|
+
<div id="cookieConsent" class="cookie-consent-banner position-fixed bottom-0 start-0 end-0 bg-dark text-light p-3 shadow-lg">
|
|
53
53
|
<div class="container-fluid">
|
|
54
54
|
<div class="row align-items-center">
|
|
55
55
|
<div class="col-12 col-lg-8">
|
|
@@ -248,18 +248,42 @@ Configuration: Uses site.posthog settings from _config.yml
|
|
|
248
248
|
// Show consent banner
|
|
249
249
|
function showConsentBanner() {
|
|
250
250
|
const banner = document.getElementById('cookieConsent');
|
|
251
|
-
if (banner)
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
251
|
+
if (!banner) return;
|
|
252
|
+
|
|
253
|
+
// Ensure banner starts completely hidden - remove all classes and inline styles
|
|
254
|
+
banner.classList.remove('cookie-banner-showing', 'cookie-banner-visible');
|
|
255
|
+
banner.removeAttribute('style'); // Remove all inline styles to let CSS take over
|
|
256
|
+
|
|
257
|
+
// Wait for the delay, then show and animate in one smooth motion
|
|
258
|
+
setTimeout(() => {
|
|
259
|
+
// First, make it visible but still off-screen (using class for CSS control)
|
|
260
|
+
banner.classList.add('cookie-banner-showing');
|
|
261
|
+
|
|
262
|
+
// Force a reflow to ensure the display change is applied
|
|
263
|
+
void banner.offsetHeight;
|
|
264
|
+
|
|
265
|
+
// On the next frame, animate it in smoothly
|
|
266
|
+
requestAnimationFrame(() => {
|
|
267
|
+
requestAnimationFrame(() => {
|
|
268
|
+
banner.classList.add('cookie-banner-visible');
|
|
269
|
+
});
|
|
270
|
+
});
|
|
271
|
+
}, 1000); // Show after 1 second
|
|
256
272
|
}
|
|
257
273
|
|
|
258
274
|
// Hide consent banner
|
|
259
275
|
function hideConsentBanner() {
|
|
260
276
|
const banner = document.getElementById('cookieConsent');
|
|
261
277
|
if (banner) {
|
|
262
|
-
|
|
278
|
+
// Remove visible class to trigger transition out
|
|
279
|
+
banner.classList.remove('cookie-banner-visible');
|
|
280
|
+
|
|
281
|
+
// Hide after transition completes
|
|
282
|
+
banner.addEventListener('transitionend', function hideAfterTransition() {
|
|
283
|
+
banner.classList.remove('cookie-banner-showing');
|
|
284
|
+
banner.removeAttribute('style'); // Clean up inline styles
|
|
285
|
+
banner.removeEventListener('transitionend', hideAfterTransition);
|
|
286
|
+
}, { once: true });
|
|
263
287
|
}
|
|
264
288
|
}
|
|
265
289
|
|
|
@@ -281,14 +305,27 @@ Configuration: Uses site.posthog settings from _config.yml
|
|
|
281
305
|
|
|
282
306
|
// Initialize on DOM content loaded
|
|
283
307
|
document.addEventListener('DOMContentLoaded', function() {
|
|
308
|
+
const banner = document.getElementById('cookieConsent');
|
|
309
|
+
|
|
310
|
+
// Ensure banner starts completely hidden BEFORE any checks
|
|
311
|
+
// Remove all classes and inline styles - let CSS handle hiding
|
|
312
|
+
if (banner) {
|
|
313
|
+
banner.classList.remove('cookie-banner-showing', 'cookie-banner-visible');
|
|
314
|
+
banner.removeAttribute('style');
|
|
315
|
+
}
|
|
316
|
+
|
|
284
317
|
const existingConsent = getConsentState();
|
|
285
318
|
|
|
286
319
|
if (existingConsent) {
|
|
287
|
-
// Apply existing consent
|
|
320
|
+
// Apply existing consent and ensure banner stays hidden
|
|
288
321
|
applyConsent(existingConsent);
|
|
289
322
|
updateModalUI(existingConsent);
|
|
323
|
+
if (banner) {
|
|
324
|
+
banner.classList.remove('cookie-banner-showing', 'cookie-banner-visible');
|
|
325
|
+
banner.removeAttribute('style');
|
|
326
|
+
}
|
|
290
327
|
} else {
|
|
291
|
-
// Show consent banner for new visitors
|
|
328
|
+
// Show consent banner for new visitors (with delay)
|
|
292
329
|
showConsentBanner();
|
|
293
330
|
}
|
|
294
331
|
|
|
@@ -348,12 +385,40 @@ Configuration: Uses site.posthog settings from _config.yml
|
|
|
348
385
|
</script>
|
|
349
386
|
|
|
350
387
|
<style>
|
|
388
|
+
/* Banner base styles */
|
|
389
|
+
#cookieConsent {
|
|
390
|
+
z-index: 9999;
|
|
391
|
+
transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
/* Banner starts completely hidden - CSS enforces this */
|
|
395
|
+
#cookieConsent:not(.cookie-banner-showing) {
|
|
396
|
+
display: none !important;
|
|
397
|
+
visibility: hidden !important;
|
|
398
|
+
opacity: 0 !important;
|
|
399
|
+
transform: translateY(100%) !important;
|
|
400
|
+
}
|
|
401
|
+
|
|
351
402
|
.cookie-consent-banner {
|
|
352
403
|
background: linear-gradient(135deg, #2c3e50 0%, #3498db 100%);
|
|
353
404
|
backdrop-filter: blur(10px);
|
|
354
405
|
border-top: 1px solid rgba(255, 255, 255, 0.1);
|
|
355
406
|
}
|
|
356
407
|
|
|
408
|
+
/* Only show banner when explicitly enabled via JavaScript class */
|
|
409
|
+
#cookieConsent.cookie-banner-showing {
|
|
410
|
+
display: block !important;
|
|
411
|
+
visibility: visible !important;
|
|
412
|
+
opacity: 0;
|
|
413
|
+
transform: translateY(100%);
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
/* Animate in when visible class is added */
|
|
417
|
+
#cookieConsent.cookie-banner-showing.cookie-banner-visible {
|
|
418
|
+
opacity: 1 !important;
|
|
419
|
+
transform: translateY(0) !important;
|
|
420
|
+
}
|
|
421
|
+
|
|
357
422
|
.cursor-pointer {
|
|
358
423
|
cursor: pointer;
|
|
359
424
|
}
|
|
@@ -379,4 +444,11 @@ Configuration: Uses site.posthog settings from _config.yml
|
|
|
379
444
|
margin-bottom: 0;
|
|
380
445
|
}
|
|
381
446
|
}
|
|
447
|
+
|
|
448
|
+
/* Respect reduced motion preferences */
|
|
449
|
+
@media (prefers-reduced-motion: reduce) {
|
|
450
|
+
.cookie-consent-banner {
|
|
451
|
+
transition: none !important;
|
|
452
|
+
}
|
|
453
|
+
}
|
|
382
454
|
</style>
|
|
@@ -28,5 +28,5 @@
|
|
|
28
28
|
integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz"
|
|
29
29
|
crossorigin="anonymous"></script>
|
|
30
30
|
|
|
31
|
-
<!--
|
|
32
|
-
<script
|
|
31
|
+
<!-- Navigation ES6 Modules - Enhanced sidebar, scroll spy, keyboard shortcuts, gestures -->
|
|
32
|
+
<script type="module" src="{{ '/assets/js/modules/navigation/index.js' | relative_url }}"></script>
|