Skip to content

Fixed missing dark mode colours#465

Merged
weylandswart merged 1 commit intomainfrom
fix-missing-dark-mode-colours
Mar 4, 2026
Merged

Fixed missing dark mode colours#465
weylandswart merged 1 commit intomainfrom
fix-missing-dark-mode-colours

Conversation

@weylandswart
Copy link
Contributor

Ref https://linear.app/ghost/issue/DES-1295/dawn-theme-code-blocks-unreadable-in-dark-mode
Closes #323
Closes #320

We were missing a few dark mode colour referneces which forced their light mode counterparts to be used.

Before After
Screenshot 2026-02-25 at 13 39 54 Screenshot 2026-02-25 at 13 39 35

Ref https://linear.app/ghost/issue/DES-1295/dawn-theme-code-blocks-unreadable-in-dark-mode

We were missing a few dark mode colour referneces which forced their light mode counterparts to be used.
@coderabbitai
Copy link

coderabbitai bot commented Feb 25, 2026

Walkthrough

Two CSS files have been modified to address styling consistency. The dark.css file introduces four new CSS custom property aliases (--color-lighter-gray, --color-light-gray, --color-mid-gray, --color-dark-gray) in both the root theme section and the dark-mode media query to ensure consistent variable naming across light and dark modes. The screen.css built file shows the entire CSS ruleset duplicated consecutively, creating two identical blocks of rules including variables and selectors. No semantic styling changes occur from the duplication since both blocks are identical.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Out of Scope Changes check ⚠️ Warning The dark.css changes align with objectives; however, screen.css contains a CSS duplication that appears unrelated to the dark mode color fix objective. Remove the duplicated CSS block in screen.css, as it increases file size without addressing the dark mode color issue and should not be included in this PR.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed Title accurately describes the main change: adding missing dark mode CSS color variable definitions to fix readability issues.
Description check ✅ Passed Description is directly related to the changeset, references the linked issue, and includes before/after screenshots demonstrating the fix.
Linked Issues check ✅ Passed The PR adds missing dark mode color alias variables (--color-lighter-gray, --color-light-gray, --color-mid-gray, --color-dark-gray) to dark.css, directly addressing the issue of missing dark mode color references causing light mode colors to be used.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix-missing-dark-mode-colours

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
packages/dawn/assets/css/misc/dark.css (1)

91-106: ⚠️ Potential issue | 🟠 Major

--color-primary-text has no dark-mode override.

The base :root in screen.css defines --color-primary-text: #333``, and it is used directly in the body element's color property. However, neither `.theme-dark:root` nor the `@media (prefers-color-scheme: dark)` media query block at lines 91-106 overrides this variable. This causes body text to render as dark (`#333`) on a dark background in dark mode, creating an unreadable contrast issue. The PR's referenced issue highlights this variable naming mismatch (`--primary-text-color` vs `--color-primary-text`) — the dark-mode overrides only update the underscore-separated variant, leaving the hyphenated color variable fallback unhandled.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@packages/dawn/assets/css/misc/dark.css` around lines 91 - 106, The dark-mode
CSS is missing an override for the variable used by body (--color-primary-text)
while dark rules define --primary-text-color and similar variants; update
html:not(.theme-light):root (or the dark theme block) to set
--color-primary-text to the correct light value (e.g., `#e2e2e2`) or
rename/synchronize variables so both --primary-text-color and
--color-primary-text are set in the dark block (refer to
html:not(.theme-light):root and the body color usage that reads
--color-primary-text).
🧹 Nitpick comments (1)
packages/dawn/assets/css/misc/dark.css (1)

97-103: Core fix looks correct — but --color-light-color is missing from the media query block.

The four added aliases correctly mirror the .theme-dark:root values (lines 7, 9, 12, 14) and resolve the dark-mode pre background issue (pre uses var(--color-lighter-gray) which now resolves to #2f333c instead of the light-mode #f6f6f6).

However, .theme-dark:root also declares --color-light-color: #3b3e46`` (line 10), but that variable is absent from the @media (prefers-color-scheme: dark) block. This creates a drift between the two dark-mode activation paths: explicit `.theme-dark` class vs. OS-level preference.

♻️ Proposed addition to align the media query with `.theme-dark:root`
         --light-gray-color: `#3b3e46`;
         --color-light-gray: `#3b3e46`;
+        --color-light-color: `#3b3e46`;
         --mid-gray-color: `#666`;
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@packages/dawn/assets/css/misc/dark.css` around lines 97 - 103, Add the
missing dark-mode alias for --color-light-color inside the `@media`
(prefers-color-scheme: dark) block so it matches the explicit .theme-dark:root
declaration; update the media query to declare --color-light-color: `#3b3e46`
alongside the existing aliases (--color-lighter-gray, --light-gray-color, etc.)
to ensure consistent values between .theme-dark:root and the
prefers-color-scheme dark path.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@packages/dawn/assets/built/screen.css`:
- Line 1: The file contains a duplicated build artifact (the entire generated
ruleset including :root and keyframes like `@keyframes` bounceIn/zoomOut
repeated), so do not edit screen.css directly; instead remove the duplication
from the original source CSS under assets/css (fix the duplicate keyframes and
repeated :root variables in the source files), run the project's CSS build step
to regenerate assets/built/screen.css, verify the duplicated `@keyframes`
(bounceIn, zoomOut) and repeated :root block are gone, and commit the
regenerated artifact.

---

Outside diff comments:
In `@packages/dawn/assets/css/misc/dark.css`:
- Around line 91-106: The dark-mode CSS is missing an override for the variable
used by body (--color-primary-text) while dark rules define --primary-text-color
and similar variants; update html:not(.theme-light):root (or the dark theme
block) to set --color-primary-text to the correct light value (e.g., `#e2e2e2`) or
rename/synchronize variables so both --primary-text-color and
--color-primary-text are set in the dark block (refer to
html:not(.theme-light):root and the body color usage that reads
--color-primary-text).

---

Nitpick comments:
In `@packages/dawn/assets/css/misc/dark.css`:
- Around line 97-103: Add the missing dark-mode alias for --color-light-color
inside the `@media` (prefers-color-scheme: dark) block so it matches the explicit
.theme-dark:root declaration; update the media query to declare
--color-light-color: `#3b3e46` alongside the existing aliases
(--color-lighter-gray, --light-gray-color, etc.) to ensure consistent values
between .theme-dark:root and the prefers-color-scheme dark path.

ℹ️ Review info

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2b1b014 and 644ee81.

⛔ Files ignored due to path filters (1)
  • packages/dawn/assets/built/screen.css.map is excluded by !**/*.map
📒 Files selected for processing (2)
  • packages/dawn/assets/built/screen.css
  • packages/dawn/assets/css/misc/dark.css

@@ -1 +1 @@
:root{--color-primary-text:#333;--color-secondary-text:#999;--color-white:#fff;--color-lighter-gray:#f6f6f6;--color-light-gray:#e6e6e6;--color-mid-gray:#ccc;--color-dark-gray:#444;--color-darker-gray:#15171a;--color-black:#000;--font-sans:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;--font-serif:Georgia,serif;--head-nav-gap:2.8rem;--h1-size:4.6rem;--gap:3.6rem;--header-spacing:80px}@media (max-width:767px){:root{--h1-size:3.2rem!important;--gap:2rem;--header-spacing:48px}}*,:after,:before{box-sizing:border-box}blockquote,body,dd,dl,figure,h1,h2,h3,h4,h5,h6,p{margin:0}ol[role=list],ul[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}body{line-height:1.5;min-height:100vh;text-rendering:optimizespeed}a:not([class]){-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}img,picture{display:block;max-width:100%}button,input,select,textarea{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}html{font-size:62.5%}body{background-color:var(--color-white);color:var(--color-primary-text);font-family:var(--gh-font-body,var(--font-sans));font-size:1.6rem;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{height:auto}a{color:var(--color-darker-gray);text-decoration:none}a:hover{opacity:.8}h1,h2,h3,h4,h5,h6{color:var(--color-darker-gray);font-family:var(--gh-font-heading,var(--font-sans));letter-spacing:-.02em;line-height:1.15}h1{font-size:var(--h1-size)}h2{font-size:2.8rem}h3{font-size:2.4rem}h4{font-size:2.2rem}h5{font-size:2rem}h6{font-size:1.8rem}hr{background-color:var(--color-light-gray);border:0;height:1px;width:100%}blockquote:not([class]){border-left:4px solid var(--ghost-accent-color);padding-left:2rem}figcaption{color:var(--color-secondary-text);font-size:1.4rem;line-height:1.4;margin-top:1.6rem;text-align:center}.kg-width-full figcaption{padding:0 1.6rem}.gh-content figcaption a{color:var(--color-darker-gray);text-decoration:none}pre{background-color:var(--color-lighter-gray);hyphens:none;line-height:1.5;overflow-x:scroll;padding:1.6rem 2.4rem;white-space:pre;-webkit-overflow-scrolling:touch}code{font-family:var(--font-mono);font-size:15px}:not(pre)>code{background-color:var(--color-lighter-gray);border-radius:3px;color:var(--ghost-accent-color);padding:.4rem}iframe{border:0;display:block;overflow:hidden;width:100%}@media (max-width:767px){h2{font-size:2.4rem}h3{font-size:2.1rem}}.gh-site{display:flex;flex-direction:column;min-height:100vh}.gh-main{flex-grow:1;padding-bottom:8rem;padding-top:8rem}.page-template .gh-main{padding-block:0}.gh-outer{padding-left:var(--gap);padding-right:var(--gap)}.gh-inner{margin:0 auto;max-width:var(--container-width,1200px)}.gh-canvas,.kg-width-full.kg-content-wide{--main:min(var(--content-width,720px),100% - var(--gap) * 2);--wide:minmax(0,calc((var(--container-width, 1200px) - var(--content-width, 720px))/2));--full:minmax(var(--gap),1fr);display:grid;grid-template-columns:[full-start] var(--full) [wide-start] var(--wide) [main-start] var(--main) [main-end] var(--wide) [wide-end] var(--full) [full-end]}.gh-canvas>*{grid-column:main}.kg-content-wide>div,.kg-width-wide{grid-column:wide}.kg-width-full{grid-column:full}.kg-width-full img{width:100%}@media (max-width:767px){#gh-main{padding-bottom:4.8rem;padding-top:4.8rem}}.gh-head{background-color:var(--color-white);height:100px}.gh-head-inner{align-items:center;-moz-column-gap:var(--head-nav-gap);column-gap:var(--head-nav-gap);display:grid;grid-auto-flow:row dense;grid-template-columns:1fr auto auto;height:100%}.gh-head-brand{line-height:1}.gh-head-brand-wrapper{align-items:center;display:flex}.gh-head-logo{font-family:var(--gh-font-heading,var(--font-sans));font-size:2.4rem;font-weight:700;letter-spacing:-.02em;position:relative}.gh-head-logo img{max-height:40px}.gh-head-logo img:nth-child(2){left:0;opacity:0;position:absolute;top:0}.gh-head-menu{display:flex}.gh-head .nav,.gh-head-menu{align-items:center;gap:var(--head-nav-gap)}.gh-head .nav{display:inline-flex;list-style:none;margin:0;padding:0;white-space:nowrap}.gh-head .nav-more-toggle{font-size:inherit;margin:0 -6px;position:relative;text-transform:inherit}.gh-head .nav-more-toggle svg{height:24px;width:24px}.gh-head-actions{align-items:center;display:flex;gap:var(--head-nav-gap);justify-content:flex-end}.gh-head-members{align-items:center;display:flex;gap:20px;white-space:nowrap}.gh-head-btn.gh-btn{font-size:inherit;font-weight:600}.gh-head-btn:not(.gh-btn){align-items:center;color:var(--ghost-accent-color);display:inline-flex}.gh-head-btn svg{height:1.3em;width:1.3em}.gh-search{margin-left:-6px;margin-right:-6px}.gh-search:hover{opacity:.9}.gh-head-brand .gh-search{margin-right:8px}@media (max-width:767px){.gh-head-members{flex-direction:column-reverse;gap:16px;width:100%}.gh-head-actions .gh-search{display:none}}@media (min-width:768px){.gh-head-brand .gh-search{display:none}body:not(.is-dropdown-loaded) .gh-head-menu .nav>li{opacity:0}}.is-head-left-logo .gh-head-inner{grid-template-columns:auto 1fr auto}@media (min-width:992px){.is-head-left-logo .gh-head-menu{margin-left:16px;margin-right:64px}}.is-head-middle-logo .gh-head-inner{grid-template-columns:1fr auto 1fr}.is-head-middle-logo .gh-head-brand{grid-column-start:2}.is-head-middle-logo .gh-head-actions{gap:28px}@media (min-width:992px){.is-head-middle-logo .gh-head-menu{margin-right:64px}}.is-head-stacked .gh-head{height:auto;position:relative}.is-head-stacked .gh-head-inner{grid-template-columns:1fr auto 1fr}.is-head-stacked .gh-head-brand{display:flex;grid-column-start:2;grid-row-start:1;min-height:80px}@media (max-width:767px){.is-head-stacked .gh-head-brand{min-height:unset}}@media (min-width:992px){.is-head-stacked .gh-head-inner{padding:0}.is-head-stacked .gh-head-brand{align-items:center;display:flex;height:80px}.is-head-stacked .gh-head-menu{grid-column:1/4;grid-row-start:2;height:56px;justify-content:center;margin:0 48px}.is-head-stacked .gh-head-menu:after,.is-head-stacked .gh-head-menu:before{background-color:var(--color-light-gray);content:"";height:1px;left:0;position:absolute;top:80px;width:100%}.is-head-stacked .gh-head-menu:after{top:136px}.is-head-stacked .gh-head-actions{grid-column:1/4;grid-row-start:1;justify-content:space-between}}.is-head-transparent .gh-head{background-color:transparent;left:0;position:absolute;right:0;z-index:90}.is-head-transparent .gh-head .nav>li a,.is-head-transparent .gh-head-description,.is-head-transparent .gh-head-link,.is-head-transparent .gh-head-logo,.is-head-transparent .gh-head-logo a,.is-head-transparent .gh-search,.is-head-transparent .gh-social,.is-head-transparent .nav-more-toggle{color:var(--color-white)}.is-head-transparent .gh-burger:after,.is-head-transparent .gh-burger:before{background-color:var(--color-white)}.is-head-transparent .gh-head-btn{background-color:#fff;color:#15171a}.is-head-transparent .gh-head-menu:after,.is-head-transparent .gh-head-menu:before{background-color:hsla(0,0%,100%,.2)}.is-head-transparent #announcement-bar-root{left:0;position:absolute;right:0}.is-head-transparent #announcement-bar-root:not(:empty)+:is(.site,.gh-site) .gh-head{margin-top:48px}.is-head-dark:not(.is-head-transparent) .gh-head{background-color:var(--color-darker-gray)}.is-head-dark:not(.is-head-transparent) .gh-head .nav a,.is-head-dark:not(.is-head-transparent) .gh-head-description,.is-head-dark:not(.is-head-transparent) .gh-head-link,.is-head-dark:not(.is-head-transparent) .gh-head-logo,.is-head-dark:not(.is-head-transparent) .gh-head-logo a,.is-head-dark:not(.is-head-transparent) .gh-search,.is-head-dark:not(.is-head-transparent) .gh-social,.is-head-dark:not(.is-head-transparent) .nav-more-toggle{color:var(--color-white)}.is-head-dark:not(.is-head-transparent) .gh-burger:after,.is-head-dark:not(.is-head-transparent) .gh-burger:before{background-color:var(--color-white)}.is-head-dark:not(.is-head-transparent) .gh-head-btn{background-color:#fff;color:#15171a}.is-head-dark:not(.is-head-transparent) .gh-head-menu:after,.is-head-dark:not(.is-head-transparent) .gh-head-menu:before{background-color:hsla(0,0%,100%,.2)}.is-head-brand:not(.is-head-transparent) .gh-head{background-color:var(--ghost-accent-color)}.is-head-brand:not(.is-head-transparent) .gh-head .nav a,.is-head-brand:not(.is-head-transparent) .gh-head-description,.is-head-brand:not(.is-head-transparent) .gh-head-link,.is-head-brand:not(.is-head-transparent) .gh-head-logo,.is-head-brand:not(.is-head-transparent) .gh-head-logo a,.is-head-brand:not(.is-head-transparent) .gh-search,.is-head-brand:not(.is-head-transparent) .gh-social,.is-head-brand:not(.is-head-transparent) .nav-more-toggle{color:var(--color-white)}.is-head-brand:not(.is-head-transparent) .gh-burger:after,.is-head-brand:not(.is-head-transparent) .gh-burger:before{background-color:var(--color-white)}.is-head-brand:not(.is-head-transparent) .gh-head-btn{background-color:#fff;color:#15171a}.is-head-brand:not(.is-head-transparent) .gh-head-menu:after,.is-head-brand:not(.is-head-transparent) .gh-head-menu:before{background-color:hsla(0,0%,100%,.3)}.gh-dropdown{background-color:#fff;border-radius:5px;box-shadow:0 0 0 1px rgba(0,0,0,.04),0 7px 20px -5px rgba(0,0,0,.15);margin-top:24px;opacity:0;padding:12px 0;position:absolute;right:-16px;text-align:left;top:100%;transform:translate3d(0,6px,0);transition:opacity .3s,transform .2s;visibility:hidden;width:200px;z-index:90}.is-head-middle-logo .gh-dropdown{left:-24px;right:auto}.is-dropdown-mega .gh-dropdown{-moz-column-gap:40px;column-gap:40px;display:grid;grid-auto-flow:column;grid-template-columns:1fr 1fr;padding:20px 32px;width:auto}.is-dropdown-open .gh-dropdown{opacity:1;transform:translateY(0);visibility:visible}.gh-dropdown li a{color:#15171a!important;display:block;padding:6px 20px}.is-dropdown-mega .gh-dropdown li a{padding:8px 0}.gh-burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;cursor:pointer;display:none;height:30px;margin-right:-3px;padding:0;position:relative;width:30px}.gh-burger:after,.gh-burger:before{background-color:var(--color-darker-gray);content:"";height:1px;left:3px;position:absolute;transition:all .2s cubic-bezier(.04,.04,.12,.96) .1008s;width:24px}.gh-burger:before{top:11px}.gh-burger:after{bottom:11px}.is-head-open .gh-burger:before{top:15px;transform:rotate(45deg)}.is-head-open .gh-burger:after{bottom:14px;transform:rotate(-45deg)}@media (max-width:767px){#gh-head{height:64px}#gh-head .gh-head-inner{gap:48px;grid-template-columns:1fr;grid-template-rows:auto 1fr auto}#gh-head .gh-head-brand{align-items:center;display:grid;grid-column-start:1;grid-template-columns:1fr auto auto;height:64px}#gh-head .gh-head-logo{font-size:2.2rem}.gh-burger{display:block}#gh-head .gh-head-actions,#gh-head .gh-head-menu{justify-content:center;opacity:0;position:fixed;visibility:hidden}#gh-head .gh-head-menu{transform:translateY(0);transition:none}#gh-head .nav{align-items:center;gap:20px;line-height:1.4}#gh-head .nav a{font-size:2.6rem;font-weight:600;text-transform:none}#gh-head .nav li{opacity:0;transform:translateY(-4px)}#gh-head .gh-head-actions{text-align:center}#gh-head :is(.gh-head-btn,.gh-head-link){opacity:0;transform:translateY(8px)}#gh-head .gh-head-btn{font-size:1.8rem;text-transform:none;width:100%}#gh-head .gh-head-btn:not(.gh-btn){font-size:2rem}#gh-main{transition:opacity .4s}.is-head-open #gh-head{height:100%;inset:0;overflow-y:scroll;position:fixed;z-index:3999999;-webkit-overflow-scrolling:touch}.is-head-open:not(.is-head-brand):not(.is-head-dark):not(.is-head-transparent) #gh-head{background-color:var(--color-white)}.is-head-open.is-head-transparent #gh-head,.is-head-open:is(.is-head-transparent,.is-head-brand) #gh-head .gh-head-actions{background-color:var(--ghost-accent-color)}.is-head-open.is-head-dark #gh-head,.is-head-open.is-head-dark #gh-head .gh-head-actions{background-color:var(--color-darker-gray)}.is-head-open #gh-head .gh-head-actions,.is-head-open #gh-head .gh-head-menu{opacity:1;position:static;visibility:visible}.is-head-open #gh-head .nav{display:flex;flex-direction:column}.is-head-open #gh-head .nav li{opacity:1;transform:translateY(0);transition:transform .2s,opacity .2s}.is-head-open #gh-head .gh-head-actions{align-items:center;background-color:var(--color-white);bottom:0;display:inline-flex;flex-direction:column;gap:12px;left:0;padding:var(--gap) 0 calc(var(--gap) + 8px);position:sticky;right:0}.is-head-open #gh-head :is(.gh-head-btn,.gh-head-link){opacity:1;transform:translateY(0);transition:transform .4s,opacity .4s;transition-delay:.2s}.is-head-open #gh-head .gh-head-link{transition-delay:.4s}.is-head-open #gh-main{opacity:0}}.gh-cover{min-height:var(--cover-height,50vh);padding-bottom:6.4rem;padding-top:6.4rem;position:relative}.gh-cover-image{height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%;z-index:-1}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-cover-title{font-family:var(--gh-font-heading,var(--font-serif))}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-cover-description{font-family:var(--gh-font-body,var(--font-serif))}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-card-title{font-family:var(--gh-font-heading,var(--font-serif));letter-spacing:-.01em}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-card-excerpt{font-family:var(--gh-font-body,var(--font-serif))}.gh-card{word-break:break-word}.page-template .gh-article-header{margin-top:var(--header-spacing,80px)}.gh-article-tag{color:var(--ghost-accent-color)}.gh-article-title{word-break:break-word}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-article-title{font-family:var(--gh-font-heading,var(--font-serif));letter-spacing:-.01em}.gh-article-excerpt{color:var(--color-secondary-text);font-size:2.1rem;line-height:1.5;margin-top:2rem}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-article-excerpt{font-family:var(--gh-font-body,var(--font-serif))}.gh-article-image{grid-column:wide-start/wide-end;margin-top:4rem}.gh-article-image img{width:100%}@media (max-width:767px){.gh-article-excerpt{font-size:1.9rem}.gh-article-image{margin-top:2.4rem}}.gh-content{font-size:var(--content-font-size,1.8rem);letter-spacing:var(--content-letter-spacing,0);margin-top:4rem;word-break:break-word}.gh-content>*+*{margin-bottom:0;margin-top:calc(1.6em*var(--content-spacing-multiplier, 1))}.gh-content>[id]{margin:0}.gh-content>.kg-card+[id]{margin-top:calc(2em*var(--content-spacing-multiplier, 1))!important}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-content>[id]{font-family:var(--gh-font-heading,var(--font-serif));letter-spacing:-.01em}.gh-content>[id]:not(:first-child){margin-top:calc(1.6em*var(--content-spacing-multiplier, 1))}.gh-content>[id]+*{margin-top:calc(.8em*var(--content-spacing-multiplier, 1))}.gh-content>blockquote,.gh-content>hr{position:relative}.gh-content>blockquote,.gh-content>blockquote+*,.gh-content>hr,.gh-content>hr+*{margin-top:calc(2.4em*var(--content-spacing-multiplier, 1))}.gh-content h2{font-size:1.6em}.gh-content h3{font-size:1.4em}.gh-content a{color:var(--ghost-accent-color);text-decoration:underline;word-break:break-word}.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>p,.gh-content .kg-toggle-card .kg-toggle-content>ul{font-size:.95em}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-callout-text,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-toggle-content>ol,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-toggle-content>p,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-toggle-content>ul,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>blockquote,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>dl,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>ol,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>p,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>ul{font-family:var(--gh-font-body,var(--font-serif))}.gh-content dl,.gh-content ol,.gh-content ul{padding-left:2.8rem}.gh-content :is(li+li,li :is(ul,ol)){margin-top:.8rem}.gh-content ol ol li{list-style-type:lower-alpha}.gh-content ol ol ol li{list-style-type:lower-roman}.gh-content table:not(.gist table){border-collapse:collapse;border-spacing:0;display:inline-block;font-family:var(--font-sans);font-size:1.6rem;max-width:100%;overflow-x:auto;vertical-align:top;white-space:nowrap;width:auto;-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at left,rgba(0,0,0,.2) 0,transparent 75%) 0,radial-gradient(ellipse at right,rgba(0,0,0,.2) 0,transparent 75%) 100%;background-attachment:scroll,scroll;background-repeat:no-repeat;background-size:10px 100%,10px 100%}.gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(90deg,#fff 50%,hsla(0,0%,100%,0));background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(270deg,#fff 50%,hsla(0,0%,100%,0));background-position:100% 0;background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) th{background-color:var(--color-white);color:var(--color-darkgrey);font-size:1.2rem;font-weight:700;letter-spacing:.2px;text-align:left;text-transform:uppercase}.gh-content table:not(.gist table) td,.gh-content table:not(.gist table) th{border:1px solid var(--color-light-gray);padding:6px 12px}.page-template .gh-content:only-child{margin-top:0!important}.page-template .gh-content:only-child>:first-child:not(.kg-width-full){margin-top:var(--header-spacing,80px)}.page-template .gh-content>:last-child:not(.kg-width-full){margin-bottom:var(--footer-spacing,0)}@media (max-width:767px){.gh-content{font-size:1.7rem;margin-top:3.2rem}}.gh-comments{margin-bottom:-24px;margin-top:64px}.gh-comments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px}.gh-comments .gh-comments-title{margin-bottom:28px}.gh-comments-header .gh-comments-title{margin-bottom:0}.gh-comments-count{color:var(--color-secondary-text)}.gh-cta-gradient{background:linear-gradient(180deg,hsla(0,0%,100%,0),var(--color-white));content:"";grid-column:full-start/full-end;height:160px;margin-bottom:4rem;margin-top:-16rem;position:relative}.gh-cta-gradient:first-child{display:none}.gh-cta{display:flex;flex-direction:column;margin-bottom:4rem;text-align:center}.gh-cta-title{font-size:2.2rem;letter-spacing:-.02em;margin-bottom:3.2rem}.gh-cta-actions{align-items:center;display:flex;flex-direction:column}.gh-cta-link{color:var(--color-secondary-text);cursor:pointer;font-size:1.4rem;margin-top:.8rem;text-decoration:none}.gh-cta-link:hover{color:var(--color-darker-gray)}@media (max-width:767px){.gh-cta-actions{-moz-column-gap:.8rem;column-gap:.8rem}}.gh-content :not(.kg-card):not(table):not([id])+:is(.kg-card,table){margin-top:calc(2em*var(--content-spacing-multiplier, 1))}.gh-content :is(.kg-card,table)+:not(.kg-card):not(table):not([id]){margin-top:calc(2em*var(--content-spacing-multiplier, 1))}.gh-content>.kg-width-full+.kg-width-full:not(.kg-width-full.kg-card-hascaption+.kg-width-full){margin-top:0}.kg-image{margin-left:auto;margin-right:auto}.kg-embed-card{align-items:center;display:flex;flex-direction:column;width:100%}.kg-gallery-image,.kg-image[width][height]{cursor:pointer}.kg-gallery-image a:hover,.kg-image-card a:hover{opacity:1!important}.kg-card.kg-toggle-card .kg-toggle-heading-text{font-size:2rem;font-weight:700}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .kg-toggle-card .kg-toggle-heading-text{font-family:var(--gh-font-heading,var(--font-serif))}.kg-callout-card.kg-card{border-radius:.25em}.kg-callout-card-accent a{text-decoration:underline}blockquote.kg-blockquote-alt{color:var(--color-secondary-text);font-style:normal;font-weight:400}.kg-card.kg-button-card .kg-btn{font-size:1em}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .kg-card.kg-header-card h2.kg-header-card-header{font-family:var(--gh-font-heading,var(--font-serif))}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .kg-header-card h3.kg-header-card-subheader{font-family:var(--gh-font-body,var(--font-serif))}.kg-audio-card,.kg-bookmark-card a.kg-bookmark-container,.kg-bookmark-card a.kg-bookmark-container:hover,.kg-file-card-container,.kg-file-card-container:hover,.kg-product-card-container{background:var(--background-color,#fff)!important;color:var(--color-darker-gray,#222)!important;opacity:1}.kg-bookmark-card .kg-bookmark-container{border-radius:.25em!important}.kg-bookmark-card .kg-bookmark-content{padding:1.15em}.kg-bookmark-card .kg-bookmark-title{font-size:.9em}.kg-bookmark-card .kg-bookmark-description{font-size:.8em;margin-top:.3em;max-height:none}.kg-bookmark-card .kg-bookmark-metadata{font-size:.8em}.kg-bookmark-card .kg-bookmark-thumbnail img{border-radius:0 .2em .2em 0}.has-light-text .kg-audio-card button{color:#fff}.has-light-text .kg-audio-card .kg-audio-volume-slider{color:hsla(0,0%,100%,.3)}.pagination{display:grid;grid-template-columns:1fr auto 1fr;margin-top:6.4rem}.page-number{grid-column-start:2}.older-posts{text-align:right}.gh-navigation{align-items:center;-moz-column-gap:2.4rem;column-gap:2.4rem;display:grid;grid-template-columns:1fr auto 1fr}.gh-navigation>div{align-items:center;display:flex}.gh-navigation-next{justify-content:flex-end}.gh-navigation-link{align-items:center;display:inline-flex}.gh-navigation-link svg{height:16px;width:16px}.gh-navigation-previous svg{margin-right:.4rem}.gh-navigation-next svg{margin-left:.4rem}@media (max-width:767px){.gh-navigation-hide{display:none}}.gh-btn{align-items:center;background-color:var(--color-darker-gray);border:0;border-radius:100px;color:var(--color-white);cursor:pointer;display:inline-flex;font-size:1.6rem;font-weight:700;gap:.4em;justify-content:center;letter-spacing:inherit;line-height:1;padding:calc(.75em*var(--multiplier, 1)) calc(1.15em*var(--multiplier, 1))}.gh-btn:hover{opacity:.95}.gh-post-upgrade-cta .gh-btn{line-height:inherit}.gh-primary-btn{background-color:var(--ghost-accent-color)}.gh-outline-btn{background-color:transparent;border:1px solid var(--color-light-gray);color:var(--color-darker-gray);text-decoration:none}.gh-outline-btn:hover{border-color:var(--color-mid-gray);opacity:1}.gh-icon-btn{align-items:center;background-color:transparent;border:0;color:var(--darker-gray-color);cursor:pointer;display:inline-flex;height:30px;justify-content:center;outline:none;padding:0;width:30px}.gh-icon-btn svg{height:20px;width:20px}.gh-text-btn{align-items:center;background-color:transparent;border:0;color:var(--darker-gray-color);cursor:pointer;display:inline-flex;justify-content:center;letter-spacing:inherit;margin:0;outline:none;padding:0;will-change:opacity}.gh-text-btn:hover{opacity:.8}.gh-foot{color:var(--color-secondary-text);padding-bottom:8rem;padding-top:8rem;white-space:nowrap}.gh-foot-inner{display:grid;font-size:1.3rem;gap:40px;grid-template-columns:1fr auto 1fr}.no-menu .gh-foot-inner{align-items:center;display:flex;flex-direction:column;gap:24px}.gh-foot-menu .nav{align-items:center;display:inline-flex;flex-wrap:wrap;justify-content:center;list-style:none;margin:0;padding:0;row-gap:4px}.gh-foot-menu .nav li{align-items:center;display:flex}.gh-foot-menu .nav li+li:before{content:"•";font-size:.9rem;line-height:0;padding:0 1.2rem}.gh-powered-by{text-align:right}.gh-foot a{color:var(--color-secondary-text)}.gh-foot a:hover{color:var(--color-darker-gray);opacity:1}@media (max-width:767px){.gh-foot{padding-bottom:12rem;padding-top:6.4rem}.gh-foot-inner{grid-template-columns:1fr;text-align:center}.gh-foot-menu .nav{flex-direction:column}.gh-foot-menu .nav li+li{margin-top:.4rem}.gh-foot-menu .nav li+li:before{display:none}.gh-powered-by{text-align:center}}.pswp{backface-visibility:hidden;display:none;height:100%;left:0;outline:none;overflow:hidden;position:absolute;top:0;touch-action:none;width:100%;z-index:3999999;-webkit-text-size-adjust:100%}.pswp img{max-width:none}.pswp--animate_opacity{opacity:.001;transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp--open{display:block}.pswp--zoom-allowed .pswp__img{cursor:zoom-in}.pswp--zoomed-in .pswp__img{cursor:grab}.pswp--dragging .pswp__img{cursor:grabbing}.pswp__bg{backface-visibility:hidden;background-color:rgba(0,0,0,.85);opacity:0;transform:translateZ(0);transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp__bg,.pswp__scroll-wrap{height:100%;left:0;position:absolute;top:0;width:100%}.pswp__scroll-wrap{overflow:hidden}.pswp__container,.pswp__zoom-wrap{backface-visibility:hidden;bottom:0;left:0;position:absolute;right:0;top:0;touch-action:none}.pswp__container,.pswp__img{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.pswp__zoom-wrap{position:absolute;transform-origin:left top;transition:transform 333ms cubic-bezier(.4,0,.22,1);width:100%}.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{transition:none}.pswp__item{bottom:0;overflow:hidden;right:0}.pswp__img,.pswp__item{left:0;position:absolute;top:0}.pswp__img{height:auto;width:auto}.pswp__img--placeholder{backface-visibility:hidden}.pswp__img--placeholder--blank{background:var(--color-black)}.pswp--ie .pswp__img{height:auto!important;left:0;top:0;width:100%!important}.pswp__error-msg{color:var(--color-secondary-text);font-size:14px;left:0;line-height:16px;margin-top:-8px;position:absolute;text-align:center;top:50%;width:100%}.pswp__error-msg a{color:var(--color-secondary-text);text-decoration:underline}.pswp__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;box-shadow:none;cursor:pointer;display:block;float:right;height:44px;margin:0;overflow:visible;padding:0;position:relative;transition:opacity .2s;width:44px}.pswp__button:focus,.pswp__button:hover{opacity:1}.pswp__button:active{opacity:.9;outline:none}.pswp__button::-moz-focus-inner{border:0;padding:0}.pswp__ui--over-close .pswp__button--close{opacity:1}.pswp__button,.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{background:url(../images/default-skin.png) 0 0 no-repeat;background-size:264px 88px;height:44px;width:44px}@media (min-resolution:1.1dppx),(min-resolution:105dpi){.pswp--svg .pswp__button,.pswp--svg .pswp__button--arrow--left:before,.pswp--svg .pswp__button--arrow--right:before{background-image:url(../images/default-skin.svg)}.pswp--svg .pswp__button--arrow--left,.pswp--svg .pswp__button--arrow--right{background:none}}.pswp__button--close{background-position:0 -44px}.pswp__button--share{background-position:-44px -44px}.pswp__button--fs{display:none}.pswp--supports-fs .pswp__button--fs{display:block}.pswp--fs .pswp__button--fs{background-position:-44px 0}.pswp__button--zoom{background-position:-88px 0;display:none}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__button--zoom{background-position:-132px 0}.pswp--touch .pswp__button--arrow--left,.pswp--touch .pswp__button--arrow--right{visibility:hidden}.pswp__button--arrow--left,.pswp__button--arrow--right{background:none;height:100px;margin-top:-50px;position:absolute;top:50%;width:70px}.pswp__button--arrow--left{left:0}.pswp__button--arrow--right{right:0}.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{content:"";height:30px;position:absolute;top:35px;width:32px}.pswp__button--arrow--left:before{background-position:-138px -44px;left:6px}.pswp__button--arrow--right:before{background-position:-94px -44px;right:6px}.pswp__counter{color:var(--color-white);font-size:11px;font-weight:700;height:44px;left:0;line-height:44px;padding:0 15px;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pswp__caption{bottom:0;left:0;min-height:44px;position:absolute;width:100%}.pswp__caption__center{color:var(--color-white);font-size:11px;line-height:1.6;margin:0 auto;max-width:420px;padding:25px 15px 30px;text-align:center}.pswp__caption__center .post-caption-title{font-size:15px;font-weight:500;margin-bottom:7px;text-transform:uppercase}.pswp__caption__center .post-caption-meta-item+.post-caption-meta-item:before{content:"\02022";padding:0 4px}.pswp__caption--empty{display:none}.pswp__caption--fake{visibility:hidden}.pswp__preloader{direction:ltr;height:44px;left:50%;margin-left:-22px;opacity:0;position:absolute;top:0;transition:opacity .25s ease-out;width:44px;will-change:opacity}.pswp__preloader__icn{height:20px;margin:12px;width:20px}.pswp__preloader--active{opacity:1}.pswp__preloader--active .pswp__preloader__icn{background:url(../images/preloader.gif) 0 0 no-repeat}.pswp--css_animation .pswp__preloader--active{opacity:1}.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn{animation:clockwise .5s linear infinite}.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut{animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite}.pswp--css_animation .pswp__preloader__icn{background:none;height:14px;left:15px;margin:0;opacity:.75;position:absolute;top:15px;width:14px}.pswp--css_animation .pswp__preloader__cut{height:14px;overflow:hidden;position:relative;width:7px}.pswp--css_animation .pswp__preloader__donut{background:none;border-bottom:2px solid transparent;border-left:2px solid transparent;border-radius:50%;border-right:2px solid var(--color-white);border-top:2px solid var(--color-white);box-sizing:border-box;height:14px;left:0;margin:0;position:absolute;top:0;width:14px}@media screen and (max-width:1024px){.pswp__preloader{float:right;left:auto;margin:0;position:relative;top:auto}}@keyframes clockwise{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes donut-rotate{0%{transform:rotate(0)}50%{transform:rotate(-140deg)}to{transform:rotate(0)}}.pswp__ui{opacity:1;visibility:visible;z-index:1550;-webkit-font-smoothing:auto}.pswp__top-bar{height:44px;left:0;position:absolute;top:0;width:100%}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right,.pswp__caption,.pswp__top-bar{backface-visibility:hidden;transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right{visibility:visible}.pswp__ui--idle .pswp__button--arrow--left,.pswp__ui--idle .pswp__button--arrow--right,.pswp__ui--idle .pswp__top-bar{opacity:0}.pswp__ui--hidden .pswp__button--arrow--left,.pswp__ui--hidden .pswp__button--arrow--right,.pswp__ui--hidden .pswp__caption,.pswp__ui--hidden .pswp__top-bar{opacity:.001}.pswp__ui--one-slide .pswp__button--arrow--left,.pswp__ui--one-slide .pswp__button--arrow--right,.pswp__ui--one-slide .pswp__counter{display:none}.pswp__element--disabled{display:none!important}.pswp--minimal--dark .pswp__top-bar{background:none}@font-face{font-family:Mulish;font-style:normal;font-weight:400;src:local(""),url(../fonts/mulish-v10-latin-regular.woff2) format("woff2"),url(../fonts/mulish-v10-latin-regular.woff) format("woff")}@font-face{font-family:Mulish;font-style:normal;font-weight:700;src:local(""),url(../fonts/mulish-v10-latin-700.woff2) format("woff2"),url(../fonts/mulish-v10-latin-700.woff) format("woff")}@font-face{font-family:Mulish;font-style:normal;font-weight:800;src:local(""),url(../fonts/mulish-v10-latin-800.woff2) format("woff2"),url(../fonts/mulish-v10-latin-800.woff) format("woff")}@font-face{font-family:Mulish;font-style:italic;font-weight:400;src:local(""),url(../fonts/mulish-v10-latin-italic.woff2) format("woff2"),url(../fonts/mulish-v10-latin-italic.woff) format("woff")}@font-face{font-family:Mulish;font-style:italic;font-weight:700;src:local(""),url(../fonts/mulish-v10-latin-700italic.woff2) format("woff2"),url(../fonts/mulish-v10-latin-700italic.woff) format("woff")}@font-face{font-family:Lora;font-style:normal;font-weight:400;src:local(""),url(../fonts/lora-v23-latin-regular.woff2) format("woff2"),url(../fonts/lora-v23-latin-regular.woff) format("woff")}@font-face{font-family:Lora;font-style:normal;font-weight:700;src:local(""),url(../fonts/lora-v23-latin-700.woff2) format("woff2"),url(../fonts/lora-v23-latin-700.woff) format("woff")}@font-face{font-family:Lora;font-style:italic;font-weight:400;src:local(""),url(../fonts/lora-v23-latin-italic.woff2) format("woff2"),url(../fonts/lora-v23-latin-italic.woff) format("woff")}@font-face{font-family:Lora;font-style:italic;font-weight:700;src:local(""),url(../fonts/lora-v23-latin-700italic.woff2) format("woff2"),url(../fonts/lora-v23-latin-700italic.woff) format("woff")}:root{--brand-color:var(--ghost-accent-color,#ff572f);--primary-text-color:#333;--secondary-text-color:#999;--white-color:#fff;--lighter-gray-color:#f6f6f6;--light-gray-color:#e6e6e6;--mid-gray-color:#ccc;--dark-gray-color:#444;--darker-gray-color:#1a1a1a;--black-color:#000;--green-color:#28a745;--orange-color:#ffc107;--red-color:#dc3545;--facebook-color:#3b5998;--twitter-color:#1da1f2;--linkedin-color:#0b66c3;--bluesky-color:#1185fe;--threads-color:#000;--mastodon-color:#6364ff;--tiktok-color:#000;--youtube-color:red;--instagram-color:#000;--rss-color:#f26522;--animation-base:ease-in-out;--font-sans:Mulish,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;--font-serif:Lora,Times,serif;--font-mono:Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--navbar-height:80px;--content-font-size:1.7rem;--header-spacing:60px}@media (max-width:767px){:root{--header-spacing:30px}}body{background-color:var(--white-color);color:var(--primary-text-color)}a,h1,h2,h3,h4,h5,h6{color:var(--darker-gray-color)}.button,h1,h2,h3,h4,h5,h6{font-weight:800}.button{align-items:center;background-color:var(--white-color);border:1px solid var(--light-gray-color);border-radius:3px;color:var(--brand-color);cursor:pointer;display:inline-flex;font-size:11px;height:36px;justify-content:center;letter-spacing:.5px;outline:none;padding:0 15px;text-transform:uppercase}.button:hover{border-color:var(--mid-gray-color);opacity:1}.button .icon-loading{display:none}.button.loading{text-indent:-9999px}.button.loading .icon-loading{display:block}.button-icon,.button-secondary{color:var(--darker-gray-color)}.button-icon{align-items:center;background-color:transparent;border:0;cursor:pointer;display:inline-flex;height:30px;justify-content:center;outline:none;padding:0;width:30px}.button-icon:hover .icon{opacity:.8}.button-text{background-color:transparent;border:0;cursor:pointer;line-height:inherit;margin:0;outline:none;padding:0}.button-text,label{color:var(--darker-gray-color)}label{display:block;font-size:1.4rem;font-weight:700}label+label{margin-top:2rem}label input,label textarea{margin-top:.7rem}input,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--white-color);border:1px solid var(--light-gray-color);border-radius:5px;color:var(--darker-gray-color);font-size:1.6rem;height:44px;outline:none;padding:0 1.5rem;width:100%}input:focus,textarea:focus{border-color:var(--mid-gray-color)}textarea{height:100%;padding-bottom:1.5rem;padding-top:1.5rem;resize:vertical}.form-wrapper{position:relative}.form-button{align-items:center;background-color:var(--brand-color);border:0;border-radius:0 4px 4px 0;color:var(--white-color);cursor:pointer;display:flex;height:40px;justify-content:center;outline:none;padding:0;position:absolute;right:5px;top:5px;width:40px}.form-button .icon-loading,.loading .form-button .icon{display:none}.loading .form-button .icon-loading{display:block}.contact-form{margin-top:3rem}.contact-form .button{margin-top:1.5rem}symbol{fill:currentColor}.icon{height:20px;width:20px}.icon-loading{height:26px;width:26px}.site{display:flex;flex-direction:column;min-height:100vh}.site-content{flex-grow:1;padding:6rem 0}.page-template .site-content{padding-block:0}@media (max-width:767px){.site-content{padding:3rem 0}}.gh-head-logo{font-size:2.2rem;font-weight:800}.gh-head-actions,.gh-head-menu{font-size:1.5rem;font-weight:700}.cover{margin-top:48px}.cover-content{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:520px;text-align:center}.cover-icon{margin-bottom:32px;position:relative}.cover-icon-image{width:120px}.cover-description{font-size:1.7rem}.cover-cta{display:flex;margin-top:2rem}.cover-cta .button{margin:0 .5rem}.feed{align-items:center;display:flex;line-height:1;overflow:hidden;padding:1.5rem 0;position:relative}.feed:hover .feed-title{opacity:.8}.feed:hover .feed-right{margin-right:1.6rem}.feed:hover .feed-icon{transform:translateX(.4rem)}.feed+.feed{border-top:1px solid var(--light-gray-color)}.feed+.feed.feed-paged{border-top:0;margin-top:3rem}.feed-calendar{color:var(--brand-color);display:flex;font-size:1.1rem;font-weight:800;gap:.4rem;margin-right:1.5rem;min-width:45px;white-space:nowrap}.feed-calendar-month{text-transform:uppercase}.feed-title{flex-grow:1;font-family:var(--gh-font-body,var(--font-sans));font-size:1.6rem;font-weight:400;letter-spacing:0;line-height:1.3;margin-bottom:0;overflow:hidden;padding-right:1rem;text-overflow:ellipsis;white-space:nowrap}.feed-right{align-items:center;display:flex;transition:margin .2s var(--animation-base)}.icon-star{color:var(--orange-color);height:16px;margin-right:1rem;width:16px}.public .icon-star{display:none}.feed-length{font-size:1.4rem;white-space:nowrap}.feed-icon,.feed-length{color:var(--secondary-text-color)}.feed-icon{height:16px;position:absolute;right:0;transform:translateX(2rem);transition:transform .2s var(--animation-base);width:16px}.featured-wrapper{margin-top:60px}.featured-wrapper .u-placeholder{margin-bottom:24px}.featured-wrapper .post-title{font-size:1.8rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin-bottom:0;word-break:break-word}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .featured-wrapper .post-title{font-family:var(--gh-font-heading,var(--font-serif))}.featured-title{border-bottom:1px solid var(--light-gray-color);font-size:1.5rem;font-weight:800;letter-spacing:.01em;margin-bottom:4.5rem;padding-bottom:1rem;text-transform:uppercase}.load-more{display:flex;justify-content:center;margin-top:48px}.single-header{margin-bottom:4.5rem;text-align:center}.page-template .single-header{margin-top:var(--header-spacing)}.single-meta{color:var(--secondary-text-color);font-size:1.2rem;font-weight:800;margin-bottom:1rem;text-transform:uppercase}.single-meta-item+.single-meta-item:before{content:"\02022";font-family:serif;padding:0 .3rem}.single-meta-tag .post-tag{color:var(--brand-color)}.single-title{font-size:4rem;letter-spacing:-.1rem;line-height:1.2;margin-bottom:0;word-break:break-word}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .single-title{font-family:var(--gh-font-heading,var(--font-serif))}.single-excerpt{font-size:1.8rem;margin-top:2rem;word-break:break-word}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .single-excerpt{font-family:var(--gh-font-body,var(--font-serif))}.single-media{margin-top:4.5rem}.single-cta{border-bottom:1px solid var(--light-gray-color);border-top:5px solid var(--brand-color);margin-top:4rem!important;padding:3rem;text-align:center}.single-cta-title{margin:0 0 3rem!important}.single-cta-button{font-weight:800!important;margin-bottom:1rem}.single-cta-footer{font-size:1.4rem;font-weight:400!important;letter-spacing:-.02rem}.single-footer{align-items:center;display:flex;margin-top:4.5rem}.single-footer-left,.single-footer-right{display:flex;flex:2}.single-footer-right{justify-content:flex-end}.single-footer-middle,.single-footer-top{display:flex;flex-direction:column}.single-footer-top{align-items:center}.single-footer-title{font-size:1.8rem;margin-bottom:1rem}.single-footer-bottom{margin-top:2rem}@media (max-width:767px){.single-header{margin-bottom:3rem}.single-title{font-size:2.6rem}.single-excerpt{font-size:1.7rem}.single-media{margin-top:3rem}}.author{align-items:center;display:flex;flex-direction:column;margin-bottom:4.5rem;text-align:center}.author-image-placeholder{border-radius:50%;flex-shrink:0;margin-bottom:2rem;overflow:hidden;width:70px}.author-name{font-size:2.4rem;margin-bottom:0}.author-meta{color:var(--secondary-text-color);font-size:1.2rem;font-weight:800;margin-top:8px;text-transform:uppercase}.author-bio{margin-top:16px;max-width:520px}.author-social{margin-top:2rem}.author-list{display:flex}.author-list .author-image-placeholder{border:2px solid var(--white-color);margin:0 -4px;width:54px}.author-list .author-image-placeholder:first-child{z-index:10}.author-list .author-image-placeholder:nth-child(2){z-index:9}.author-list .author-image-placeholder:nth-child(3){z-index:8}.author-list .author-image-placeholder:nth-child(4){z-index:7}.author-list .author-image-placeholder:nth-child(5){z-index:6}.share{display:flex;gap:.4rem}.share-link{align-items:center;border-radius:3px;color:var(--white-color);display:flex;font-size:1.1rem;font-weight:800;height:2.6rem;letter-spacing:.04rem;line-height:1;margin:0 .6rem;padding:0 .8rem;text-transform:uppercase}.share-link .icon{height:14px;width:14px}.share-link-facebook{background-color:var(--facebook-color)}.share-link-twitter{background-color:var(--twitter-color)}.share-link-linkedin{background-color:var(--linkedin-color)}.share-link-bluesky{background-color:var(--bluesky-color)}.share-link-threads{background-color:var(--threads-color)}.share-link-mastodon{background-color:var(--mastodon-color)}.share-link-tiktok{background-color:var(--tiktok-color)}.share-link-youtube{background-color:var(--youtube-color)}.share-link-instagram{background-color:var(--instagram-color)}.navigation-previous .navigation-icon{margin-left:-2px}.navigation-next .navigation-link{justify-content:flex-end}.navigation-next .navigation-icon{margin-right:-2px}.navigation-link{align-items:center;display:flex;height:30px;width:30px}.related-wrapper{background-color:var(--lighter-gray-color);margin-top:80px;padding:56px 0 32px}.related-title{font-size:2.1rem;margin-bottom:20px}.comment{margin-top:6rem}.tag{margin-bottom:4.5rem;text-align:center}.tag .tag-name{color:var(--brand-color);font-size:3rem;margin-bottom:0}.tag .tag-name:before{content:"#"}.tag .tag-description{margin:16px auto 0;max-width:520px}.tag .tag-list{font-weight:700;margin-top:2rem}.tag .tag-list-label{color:var(--secondary-text-color);margin-right:.5rem}.tag .tag-list-item:before{content:"#"}.tag .tag-list-item+.tag-list-item{margin-left:.3rem}.tag .tag-media{margin-top:4.5rem}@media (max-width:767px){.tag{margin-bottom:2.5rem}.tag .tag-media{margin-top:3rem}}.owl{display:none;position:relative;width:100%;z-index:1;-webkit-tap-highlight-color:transparent}.owl .owl-stage{position:relative;touch-action:pan-y}.owl .owl-stage:after{clear:both;content:".";display:block;height:0;line-height:0;visibility:hidden}.owl .owl-stage-outer{overflow:hidden}.owl .owl-item,.owl .owl-stage-outer{position:relative;transform:translateZ(0)}.owl .owl-item{backface-visibility:hidden;float:left;min-height:1px;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.owl .owl-item>img{display:block;transform-style:preserve-3d;width:100%}.owl .owl-dots.disabled,.owl .owl-nav.disabled{display:none}.owl .owl-dot,.owl .owl-next,.owl .owl-prev{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.owl .owl-next,.owl .owl-prev{align-items:center;background-color:var(--white-color);border:1px solid var(--light-gray-color);border-radius:3px;color:var(--dark-gray-color);display:flex;height:30px;justify-content:center;outline:none;padding:0;position:absolute;text-align:center;top:-86px;transition:color .5s var(--animation-base);width:30px}.owl .owl-next.disabled,.owl .owl-prev.disabled{color:var(--mid-gray-color);cursor:default}.owl .owl-next .icon,.owl .owl-prev .icon{height:18px;width:18px}.owl .owl-prev{right:34px}.owl .owl-next{right:0}.owl .owl-dots{margin-top:20px}.owl .owl-dot,.owl .owl-dots{display:flex;justify-content:center}.owl .owl-dot{align-items:center;border:0;height:20px;outline:none;padding:0;width:20px}.owl .owl-dot span{background-color:var(--light-gray-color);border-radius:50%;height:8px;width:8px}.owl .owl-dot.active span{background-color:var(--black-color)}.owl.owl-loaded{display:block}.owl.owl-loading{display:block;opacity:0}.owl.owl-hidden{opacity:0}.owl.owl-refresh .owl-item{visibility:hidden}.owl.owl-drag .owl-item{-webkit-user-select:none;-moz-user-select:none;user-select:none}.owl.owl-grab{cursor:move}.no-js .owl{display:block}.u-permalink{bottom:0;left:0;outline:none;position:absolute;right:0;top:0;z-index:50}.u-placeholder{background-color:var(--lighter-gray-color);position:relative;z-index:10}.u-placeholder:before{content:"";display:block}.u-placeholder.horizontal:before{padding-bottom:50%}.u-placeholder.rectangle:before{padding-bottom:62.5%}.u-placeholder.square:before{padding-bottom:100%}.u-object-fit{height:100%;left:0;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;width:100%}.animate__animated{animation-duration:1s;animation-fill-mode:both}@keyframes bounceIn{0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:scale3d(.7,.7,.7)}40%{transform:scale3d(1.1,1.1,1.1)}to{opacity:1;transform:scaleX(1)}}.animate__bounceIn{animation-duration:.3s;animation-name:bounceIn}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.7,.7,.7)}to{opacity:0}}.animate__zoomOut{animation-duration:.3s;animation-name:zoomOut}.theme-dark:root{--primary-text-color:#e2e2e2;--secondary-text-color:#868686;--white-color:#282c35;--color-white:#282c35;--lighter-gray-color:#2f333c;--color-lighter-gray:#2f333c;--light-gray-color:#3b3e46;--color-light-gray:#3b3e46;--color-light-color:#3b3e46;--mid-gray-color:#666;--color-mid-gray:#666;--dark-gray-color:#e6e6e6;--color-dark-gray:#e6e6e6;--darker-gray-color:#fff;--color-darker-gray:#fff}.theme-dark .gh-head-logo img:first-child:not(:only-child){opacity:0}.theme-dark .gh-head-logo img+img{opacity:1}.theme-dark .sticky{background-color:rgba(0,0,0,.6)}.theme-dark .form-button,.theme-dark .pswp__counter{color:var(--darker-gray-color)}.theme-dark .share-link{background-color:var(--darker-gray-color)}.theme-dark .share-link-facebook{color:var(--facebook-color)}.theme-dark .share-link-twitter{color:var(--twitter-color)}.theme-dark .share-link-linkedin{color:var(--linkedin-color)}.theme-dark .share-link-bluesky{color:var(--bluesky-color)}.theme-dark .share-link-threads{color:var(--threads-color)}.theme-dark .share-link-mastodon{color:var(--mastodon-color)}.theme-dark .share-link-tiktok{color:var(--tiktok-color)}.theme-dark .share-link-youtube{color:var(--youtube-color)}.theme-dark .share-link-instagram{color:var(--instagram-color)}.theme-dark .kg-audio-card button{color:var(--darker-gray-color)}.theme-dark .kg-audio-card,.theme-dark .kg-bookmark-card a.kg-bookmark-container,.theme-dark .kg-bookmark-card a.kg-bookmark-container:hover,.theme-dark .kg-file-card-container,.theme-dark .kg-file-card-container:hover,.theme-dark .kg-product-card-container{background-color:var(--lighter-gray-color)!important;opacity:1}@media (prefers-color-scheme:dark){html:not(.theme-light):root{--primary-text-color:#e2e2e2;--secondary-text-color:#868686;--white-color:#282c35;--color-white:#282c35;--lighter-gray-color:#2f333c;--light-gray-color:#3b3e46;--mid-gray-color:#666;--dark-gray-color:#e6e6e6;--darker-gray-color:#fff;--color-darker-gray:#fff}html:not(.theme-light) .gh-head-logo img:first-child:not(:only-child){opacity:0}html:not(.theme-light) .gh-head-logo img+img{opacity:1}html:not(.theme-light) .sticky{background-color:rgba(0,0,0,.6)}html:not(.theme-light) .form-button,html:not(.theme-light) .pswp__counter{color:var(--darker-gray-color)}html:not(.theme-light) .share-link{background-color:var(--darker-gray-color)}html:not(.theme-light) .share-link-facebook{color:var(--facebook-color)}html:not(.theme-light) .share-link-twitter{color:var(--twitter-color)}html:not(.theme-light) .kg-audio-card button{color:var(--darker-gray-color)}html:not(.theme-light) .kg-audio-card,html:not(.theme-light) .kg-bookmark-card a.kg-bookmark-container,html:not(.theme-light) .kg-bookmark-card a.kg-bookmark-container:hover,html:not(.theme-light) .kg-file-card-container,html:not(.theme-light) .kg-file-card-container:hover,html:not(.theme-light) .kg-product-card-container{background-color:var(--lighter-gray-color)!important;opacity:1}}/*# sourceMappingURL=screen.css.map */
:root{--color-primary-text:#333;--color-secondary-text:#999;--color-white:#fff;--color-lighter-gray:#f6f6f6;--color-light-gray:#e6e6e6;--color-mid-gray:#ccc;--color-dark-gray:#444;--color-darker-gray:#15171a;--color-black:#000;--font-sans:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;--font-serif:Georgia,serif;--head-nav-gap:2.8rem;--h1-size:4.6rem;--gap:3.6rem;--header-spacing:80px}@media (max-width:767px){:root{--h1-size:3.2rem!important;--gap:2rem;--header-spacing:48px}}*,:after,:before{box-sizing:border-box}blockquote,body,dd,dl,figure,h1,h2,h3,h4,h5,h6,p{margin:0}ol[role=list],ul[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}body{line-height:1.5;min-height:100vh;text-rendering:optimizespeed}a:not([class]){-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}img,picture{display:block;max-width:100%}button,input,select,textarea{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}html{font-size:62.5%}body{background-color:var(--color-white);color:var(--color-primary-text);font-family:var(--gh-font-body,var(--font-sans));font-size:1.6rem;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{height:auto}a{color:var(--color-darker-gray);text-decoration:none}a:hover{opacity:.8}h1,h2,h3,h4,h5,h6{color:var(--color-darker-gray);font-family:var(--gh-font-heading,var(--font-sans));letter-spacing:-.02em;line-height:1.15}h1{font-size:var(--h1-size)}h2{font-size:2.8rem}h3{font-size:2.4rem}h4{font-size:2.2rem}h5{font-size:2rem}h6{font-size:1.8rem}hr{background-color:var(--color-light-gray);border:0;height:1px;width:100%}blockquote:not([class]){border-left:4px solid var(--ghost-accent-color);padding-left:2rem}figcaption{color:var(--color-secondary-text);font-size:1.4rem;line-height:1.4;margin-top:1.6rem;text-align:center}.kg-width-full figcaption{padding:0 1.6rem}.gh-content figcaption a{color:var(--color-darker-gray);text-decoration:none}pre{background-color:var(--color-lighter-gray);hyphens:none;line-height:1.5;overflow-x:scroll;padding:1.6rem 2.4rem;white-space:pre;-webkit-overflow-scrolling:touch}code{font-family:var(--font-mono);font-size:15px}:not(pre)>code{background-color:var(--color-lighter-gray);border-radius:3px;color:var(--ghost-accent-color);padding:.4rem}iframe{border:0;display:block;overflow:hidden;width:100%}sub,sup{line-height:1}@media (max-width:767px){h2{font-size:2.4rem}h3{font-size:2.1rem}}.gh-site{display:flex;flex-direction:column;min-height:100vh}.gh-main{flex-grow:1;padding-bottom:8rem;padding-top:8rem}.page-template .gh-main{padding-block:0}.gh-outer{padding-left:var(--gap);padding-right:var(--gap)}.gh-inner{margin:0 auto;max-width:var(--container-width,1200px)}.gh-canvas,.kg-width-full.kg-content-wide{--main:min(var(--content-width,720px),100% - var(--gap) * 2);--wide:minmax(0,calc((var(--container-width, 1200px) - var(--content-width, 720px))/2));--full:minmax(var(--gap),1fr);display:grid;grid-template-columns:[full-start] var(--full) [wide-start] var(--wide) [main-start] var(--main) [main-end] var(--wide) [wide-end] var(--full) [full-end]}.gh-canvas>*{grid-column:main}.kg-content-wide>div,.kg-width-wide{grid-column:wide}.kg-width-full{grid-column:full}.kg-width-full img{width:100%}@media (max-width:767px){#gh-main{padding-bottom:4.8rem;padding-top:4.8rem}}.gh-head{background-color:var(--color-white);height:100px}.gh-head-inner{align-items:center;-moz-column-gap:var(--head-nav-gap);column-gap:var(--head-nav-gap);display:grid;grid-auto-flow:row dense;grid-template-columns:1fr auto auto;height:100%}.gh-head-brand{line-height:1}.gh-head-brand-wrapper{align-items:center;display:flex}.gh-head-logo{font-family:var(--gh-font-heading,var(--font-sans));font-size:2.4rem;font-weight:700;letter-spacing:-.02em;position:relative}.gh-head-logo img{max-height:40px}.gh-head-logo img:nth-child(2){left:0;opacity:0;position:absolute;top:0}.gh-head-menu{display:flex}.gh-head .nav,.gh-head-menu{align-items:center;gap:var(--head-nav-gap)}.gh-head .nav{display:inline-flex;list-style:none;margin:0;padding:0;white-space:nowrap}.gh-head .nav-more-toggle{font-size:inherit;margin:0 -6px;position:relative;text-transform:inherit}.gh-head .nav-more-toggle svg{height:24px;width:24px}.gh-head-actions{align-items:center;display:flex;gap:var(--head-nav-gap);justify-content:flex-end}.gh-head-members{align-items:center;display:flex;gap:20px;white-space:nowrap}.gh-head-btn.gh-btn{font-size:inherit;font-weight:600}.gh-head-btn:not(.gh-btn){align-items:center;color:var(--ghost-accent-color);display:inline-flex}.gh-head-btn svg{height:1.3em;width:1.3em}.gh-search{margin-left:-6px;margin-right:-6px}.gh-search:hover{opacity:.9}.gh-head-brand .gh-search{margin-right:8px}@media (max-width:767px){.gh-head-members{flex-direction:column-reverse;gap:16px;width:100%}.gh-head-actions .gh-search{display:none}}@media (min-width:768px){.gh-head-brand .gh-search{display:none}body:not(.is-dropdown-loaded) .gh-head-menu .nav>li{opacity:0}}.is-head-left-logo .gh-head-inner{grid-template-columns:auto 1fr auto}@media (min-width:992px){.is-head-left-logo .gh-head-menu{margin-left:16px;margin-right:64px}}.is-head-middle-logo .gh-head-inner{grid-template-columns:1fr auto 1fr}.is-head-middle-logo .gh-head-brand{grid-column-start:2}.is-head-middle-logo .gh-head-actions{gap:28px}@media (min-width:992px){.is-head-middle-logo .gh-head-menu{margin-right:64px}}.is-head-stacked .gh-head{height:auto;position:relative}.is-head-stacked .gh-head-inner{grid-template-columns:1fr auto 1fr}.is-head-stacked .gh-head-brand{display:flex;grid-column-start:2;grid-row-start:1;min-height:80px}@media (max-width:767px){.is-head-stacked .gh-head-brand{min-height:unset}}@media (min-width:992px){.is-head-stacked .gh-head-inner{padding:0}.is-head-stacked .gh-head-brand{align-items:center;display:flex;height:80px}.is-head-stacked .gh-head-menu{grid-column:1/4;grid-row-start:2;height:56px;justify-content:center;margin:0 48px}.is-head-stacked .gh-head-menu:after,.is-head-stacked .gh-head-menu:before{background-color:var(--color-light-gray);content:"";height:1px;left:0;position:absolute;top:80px;width:100%}.is-head-stacked .gh-head-menu:after{top:136px}.is-head-stacked .gh-head-actions{grid-column:1/4;grid-row-start:1;justify-content:space-between}}.is-head-transparent .gh-head{background-color:transparent;left:0;position:absolute;right:0;z-index:90}.is-head-transparent .gh-head .nav>li a,.is-head-transparent .gh-head-description,.is-head-transparent .gh-head-link,.is-head-transparent .gh-head-logo,.is-head-transparent .gh-head-logo a,.is-head-transparent .gh-search,.is-head-transparent .gh-social,.is-head-transparent .nav-more-toggle{color:var(--color-white)}.is-head-transparent .gh-burger:after,.is-head-transparent .gh-burger:before{background-color:var(--color-white)}.is-head-transparent .gh-head-btn{background-color:#fff;color:#15171a}.is-head-transparent .gh-head-menu:after,.is-head-transparent .gh-head-menu:before{background-color:hsla(0,0%,100%,.2)}.is-head-dark:not(.is-head-transparent) .gh-head{background-color:var(--color-darker-gray)}.is-head-dark:not(.is-head-transparent) .gh-head .nav a,.is-head-dark:not(.is-head-transparent) .gh-head-description,.is-head-dark:not(.is-head-transparent) .gh-head-link,.is-head-dark:not(.is-head-transparent) .gh-head-logo,.is-head-dark:not(.is-head-transparent) .gh-head-logo a,.is-head-dark:not(.is-head-transparent) .gh-search,.is-head-dark:not(.is-head-transparent) .gh-social,.is-head-dark:not(.is-head-transparent) .nav-more-toggle{color:var(--color-white)}.is-head-dark:not(.is-head-transparent) .gh-burger:after,.is-head-dark:not(.is-head-transparent) .gh-burger:before{background-color:var(--color-white)}.is-head-dark:not(.is-head-transparent) .gh-head-btn{background-color:#fff;color:#15171a}.is-head-dark:not(.is-head-transparent) .gh-head-menu:after,.is-head-dark:not(.is-head-transparent) .gh-head-menu:before{background-color:hsla(0,0%,100%,.2)}.is-head-brand:not(.is-head-transparent) .gh-head{background-color:var(--ghost-accent-color)}.is-head-brand:not(.is-head-transparent) .gh-head .nav a,.is-head-brand:not(.is-head-transparent) .gh-head-description,.is-head-brand:not(.is-head-transparent) .gh-head-link,.is-head-brand:not(.is-head-transparent) .gh-head-logo,.is-head-brand:not(.is-head-transparent) .gh-head-logo a,.is-head-brand:not(.is-head-transparent) .gh-search,.is-head-brand:not(.is-head-transparent) .gh-social,.is-head-brand:not(.is-head-transparent) .nav-more-toggle{color:var(--color-white)}.is-head-brand:not(.is-head-transparent) .gh-burger:after,.is-head-brand:not(.is-head-transparent) .gh-burger:before{background-color:var(--color-white)}.is-head-brand:not(.is-head-transparent) .gh-head-btn{background-color:#fff;color:#15171a}.is-head-brand:not(.is-head-transparent) .gh-head-menu:after,.is-head-brand:not(.is-head-transparent) .gh-head-menu:before{background-color:hsla(0,0%,100%,.3)}.gh-dropdown{background-color:#fff;border-radius:5px;box-shadow:0 0 0 1px rgba(0,0,0,.04),0 7px 20px -5px rgba(0,0,0,.15);margin-top:24px;opacity:0;padding:12px 0;position:absolute;right:-16px;text-align:left;top:100%;transform:translate3d(0,6px,0);transition:opacity .3s,transform .2s;visibility:hidden;width:200px;z-index:90}.is-head-middle-logo .gh-dropdown{left:-24px;right:auto}.is-dropdown-mega .gh-dropdown{-moz-column-gap:40px;column-gap:40px;display:grid;grid-auto-flow:column;grid-template-columns:1fr 1fr;padding:20px 32px;width:auto}.is-dropdown-open .gh-dropdown{opacity:1;transform:translateY(0);visibility:visible}.gh-dropdown li a{color:#15171a!important;display:block;padding:6px 20px}.is-dropdown-mega .gh-dropdown li a{padding:8px 0}.gh-burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;cursor:pointer;display:none;height:30px;margin-right:-3px;padding:0;position:relative;width:30px}.gh-burger:after,.gh-burger:before{background-color:var(--color-darker-gray);content:"";height:1px;left:3px;position:absolute;transition:all .2s cubic-bezier(.04,.04,.12,.96) .1008s;width:24px}.gh-burger:before{top:11px}.gh-burger:after{bottom:11px}.is-head-open .gh-burger:before{top:15px;transform:rotate(45deg)}.is-head-open .gh-burger:after{bottom:14px;transform:rotate(-45deg)}@media (max-width:767px){#gh-head{height:64px}#gh-head .gh-head-inner{gap:48px;grid-template-columns:1fr;grid-template-rows:auto 1fr auto}#gh-head .gh-head-brand{align-items:center;display:grid;grid-column-start:1;grid-template-columns:1fr auto auto;height:64px}#gh-head .gh-head-logo{font-size:2.2rem}.gh-burger{display:block}#gh-head .gh-head-actions,#gh-head .gh-head-menu{justify-content:center;opacity:0;position:fixed;visibility:hidden}#gh-head .gh-head-menu{transform:translateY(0);transition:none}#gh-head .nav{align-items:center;gap:20px;line-height:1.4}#gh-head .nav a{font-size:2.6rem;font-weight:600;text-transform:none}#gh-head .nav li{opacity:0;transform:translateY(-4px)}#gh-head .gh-head-actions{text-align:center}#gh-head :is(.gh-head-btn,.gh-head-link){opacity:0;transform:translateY(8px)}#gh-head .gh-head-btn{font-size:1.8rem;text-transform:none;width:100%}#gh-head .gh-head-btn:not(.gh-btn){font-size:2rem}#gh-main{transition:opacity .4s}.is-head-open #gh-head{height:100%;inset:0;overflow-y:scroll;position:fixed;z-index:3999999;-webkit-overflow-scrolling:touch}.is-head-open:not(.is-head-brand):not(.is-head-dark):not(.is-head-transparent) #gh-head{background-color:var(--color-white)}.is-head-open.is-head-transparent #gh-head,.is-head-open:is(.is-head-transparent,.is-head-brand) #gh-head .gh-head-actions{background-color:var(--ghost-accent-color)}.is-head-open.is-head-dark #gh-head,.is-head-open.is-head-dark #gh-head .gh-head-actions{background-color:var(--color-darker-gray)}.is-head-open #gh-head .gh-head-actions,.is-head-open #gh-head .gh-head-menu{opacity:1;position:static;visibility:visible}.is-head-open #gh-head .nav{display:flex;flex-direction:column}.is-head-open #gh-head .nav li{opacity:1;transform:translateY(0);transition:transform .2s,opacity .2s}.is-head-open #gh-head .gh-head-actions{align-items:center;background-color:var(--color-white);bottom:0;display:inline-flex;flex-direction:column;gap:12px;left:0;padding:var(--gap) 0 calc(var(--gap) + 8px);position:sticky;right:0}.is-head-open #gh-head :is(.gh-head-btn,.gh-head-link){opacity:1;transform:translateY(0);transition:transform .4s,opacity .4s;transition-delay:.2s}.is-head-open #gh-head .gh-head-link{transition-delay:.4s}.is-head-open #gh-main{opacity:0}}.gh-cover{min-height:var(--cover-height,50vh);padding-bottom:6.4rem;padding-top:6.4rem;position:relative}.gh-cover-image{height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%;z-index:-1}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-cover-title{font-family:var(--gh-font-heading,var(--font-serif))}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-cover-description{font-family:var(--gh-font-body,var(--font-serif))}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-card-title{font-family:var(--gh-font-heading,var(--font-serif));letter-spacing:-.01em}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-card-excerpt{font-family:var(--gh-font-body,var(--font-serif))}.gh-card{word-break:break-word}.page-template .gh-article-header{margin-top:var(--header-spacing,80px)}.gh-article-tag{color:var(--ghost-accent-color)}.gh-article-title{word-break:break-word}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-article-title{font-family:var(--gh-font-heading,var(--font-serif));letter-spacing:-.01em}.gh-article-excerpt{color:var(--color-secondary-text);font-size:2.1rem;line-height:1.5;margin-top:2rem}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-article-excerpt{font-family:var(--gh-font-body,var(--font-serif))}.gh-article-image{grid-column:wide-start/wide-end;margin-top:4rem}.gh-article-image img{width:100%}@media (max-width:767px){.gh-article-excerpt{font-size:1.9rem}.gh-article-image{margin-top:2.4rem}}.gh-content{font-size:var(--content-font-size,1.8rem);letter-spacing:var(--content-letter-spacing,0);margin-top:4rem;word-break:break-word}.gh-content>*+*{margin-bottom:0;margin-top:calc(1.6em*var(--content-spacing-multiplier, 1))}.gh-content>[id]{margin:0}.gh-content>.kg-card+[id]{margin-top:calc(2em*var(--content-spacing-multiplier, 1))!important}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .gh-content>[id]{font-family:var(--gh-font-heading,var(--font-serif));letter-spacing:-.01em}.gh-content>[id]:not(:first-child){margin-top:calc(1.6em*var(--content-spacing-multiplier, 1))}.gh-content>[id]+*{margin-top:calc(.8em*var(--content-spacing-multiplier, 1))}.gh-content>blockquote,.gh-content>hr{position:relative}.gh-content>blockquote,.gh-content>blockquote+*,.gh-content>hr,.gh-content>hr+*{margin-top:calc(2.4em*var(--content-spacing-multiplier, 1))}.gh-content h2{font-size:1.6em}.gh-content h3{font-size:1.4em}.gh-content a{color:var(--ghost-accent-color);text-decoration:underline;word-break:break-word}.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>p,.gh-content .kg-toggle-card .kg-toggle-content>ul{font-size:.95em}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-callout-text,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-toggle-content>ol,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-toggle-content>p,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content .kg-toggle-content>ul,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>blockquote,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>dl,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>ol,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>p,.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .gh-content>ul{font-family:var(--gh-font-body,var(--font-serif))}.gh-content dl,.gh-content ol,.gh-content ul{padding-left:2.8rem}.gh-content :is(li+li,li :is(ul,ol)){margin-top:.8rem}.gh-content ol ol li{list-style-type:lower-alpha}.gh-content ol ol ol li{list-style-type:lower-roman}.gh-content table:not(.gist table){border-collapse:collapse;border-spacing:0;display:inline-block;font-family:var(--font-sans);font-size:1.6rem;max-width:100%;overflow-x:auto;vertical-align:top;white-space:nowrap;width:auto;-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at left,rgba(0,0,0,.2) 0,transparent 75%) 0,radial-gradient(ellipse at right,rgba(0,0,0,.2) 0,transparent 75%) 100%;background-attachment:scroll,scroll;background-repeat:no-repeat;background-size:10px 100%,10px 100%}.gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(90deg,#fff 50%,hsla(0,0%,100%,0));background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(270deg,#fff 50%,hsla(0,0%,100%,0));background-position:100% 0;background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) th{background-color:var(--color-white);color:var(--color-darkgrey);font-size:1.2rem;font-weight:700;letter-spacing:.2px;text-align:left;text-transform:uppercase}.gh-content table:not(.gist table) td,.gh-content table:not(.gist table) th{border:1px solid var(--color-light-gray);padding:6px 12px}.page-template .gh-content:only-child{margin-top:0!important}.page-template .gh-content:only-child>:first-child:not(.kg-width-full){margin-top:var(--header-spacing,80px)}.page-template .gh-content>:last-child:not(.kg-width-full){margin-bottom:var(--footer-spacing,0)}@media (max-width:767px){.gh-content{font-size:1.7rem;margin-top:3.2rem}}.gh-comments{margin-bottom:-24px;margin-top:64px}.gh-comments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:40px}.gh-comments .gh-comments-title{margin-bottom:28px}.gh-comments-header .gh-comments-title{margin-bottom:0}.gh-comments-count{color:var(--color-secondary-text)}.gh-cta-gradient{background:linear-gradient(180deg,hsla(0,0%,100%,0),var(--color-white));content:"";grid-column:full-start/full-end;height:160px;margin-bottom:4rem;margin-top:-16rem;position:relative}.gh-cta-gradient:first-child{display:none}.gh-cta{display:flex;flex-direction:column;margin-bottom:4rem;text-align:center}.gh-cta-title{font-size:2.2rem;letter-spacing:-.02em;margin-bottom:3.2rem}.gh-cta-actions{align-items:center;display:flex;flex-direction:column}.gh-cta-link{color:var(--color-secondary-text);cursor:pointer;font-size:1.4rem;margin-top:.8rem;text-decoration:none}.gh-cta-link:hover{color:var(--color-darker-gray)}@media (max-width:767px){.gh-cta-actions{-moz-column-gap:.8rem;column-gap:.8rem}}.gh-content :not(.kg-card):not(table):not([id])+:is(.kg-card,table){margin-top:calc(2em*var(--content-spacing-multiplier, 1))}.gh-content :is(.kg-card,table)+:not(.kg-card):not(table):not([id]){margin-top:calc(2em*var(--content-spacing-multiplier, 1))}.gh-content>.kg-width-full+.kg-width-full:not(.kg-width-full.kg-card-hascaption+.kg-width-full){margin-top:0}.kg-image{margin-left:auto;margin-right:auto}.kg-embed-card{align-items:center;display:flex;flex-direction:column;width:100%}.kg-gallery-image,.kg-image[width][height]{cursor:pointer}.kg-gallery-image a:hover,.kg-image-card a:hover{opacity:1!important}.kg-card.kg-toggle-card .kg-toggle-heading-text{font-size:2rem;font-weight:700}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .kg-toggle-card .kg-toggle-heading-text{font-family:var(--gh-font-heading,var(--font-serif))}.kg-callout-card.kg-card{border-radius:.25em}.kg-callout-card-accent a{text-decoration:underline}blockquote.kg-blockquote-alt{color:var(--color-secondary-text);font-style:normal;font-weight:400}.kg-card.kg-button-card .kg-btn{font-size:1em}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .kg-card.kg-header-card h2.kg-header-card-header{font-family:var(--gh-font-heading,var(--font-serif))}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .kg-header-card h3.kg-header-card-subheader{font-family:var(--gh-font-body,var(--font-serif))}.kg-audio-card,.kg-bookmark-card a.kg-bookmark-container,.kg-bookmark-card a.kg-bookmark-container:hover,.kg-file-card-container,.kg-file-card-container:hover,.kg-product-card-container{background:var(--background-color,#fff)!important;color:var(--color-darker-gray,#222)!important;opacity:1}.kg-bookmark-card .kg-bookmark-container{border-radius:.25em!important}.kg-bookmark-card .kg-bookmark-content{padding:1.15em}.kg-bookmark-card .kg-bookmark-title{font-size:.9em}.kg-bookmark-card .kg-bookmark-description{font-size:.8em;margin-top:.3em;max-height:none}.kg-bookmark-card .kg-bookmark-metadata{font-size:.8em}.kg-bookmark-card .kg-bookmark-thumbnail img{border-radius:0 .2em .2em 0}.has-light-text .kg-audio-card button{color:#fff}.has-light-text .kg-audio-card .kg-audio-volume-slider{color:hsla(0,0%,100%,.3)}.pagination{display:grid;grid-template-columns:1fr auto 1fr;margin-top:6.4rem}.page-number{grid-column-start:2}.older-posts{text-align:right}.gh-navigation{align-items:center;-moz-column-gap:2.4rem;column-gap:2.4rem;display:grid;grid-template-columns:1fr auto 1fr}.gh-navigation>div{align-items:center;display:flex}.gh-navigation-next{justify-content:flex-end}.gh-navigation-link{align-items:center;display:inline-flex}.gh-navigation-link svg{height:16px;width:16px}.gh-navigation-previous svg{margin-right:.4rem}.gh-navigation-next svg{margin-left:.4rem}@media (max-width:767px){.gh-navigation-hide{display:none}}.gh-btn{align-items:center;background-color:var(--color-darker-gray);border:0;border-radius:100px;color:var(--color-white);cursor:pointer;display:inline-flex;font-size:1.6rem;font-weight:700;gap:.4em;justify-content:center;letter-spacing:inherit;line-height:1;padding:calc(.75em*var(--multiplier, 1)) calc(1.15em*var(--multiplier, 1))}.gh-btn:hover{opacity:.95}.gh-post-upgrade-cta .gh-btn{line-height:inherit}.gh-primary-btn{background-color:var(--ghost-accent-color)}.gh-outline-btn{background-color:transparent;border:1px solid var(--color-light-gray);color:var(--color-darker-gray);text-decoration:none}.gh-outline-btn:hover{border-color:var(--color-mid-gray);opacity:1}.gh-icon-btn{align-items:center;background-color:transparent;border:0;color:var(--darker-gray-color);cursor:pointer;display:inline-flex;height:30px;justify-content:center;outline:none;padding:0;width:30px}.gh-icon-btn svg{height:20px;width:20px}.gh-text-btn{align-items:center;background-color:transparent;border:0;color:var(--darker-gray-color);cursor:pointer;display:inline-flex;justify-content:center;letter-spacing:inherit;margin:0;outline:none;padding:0;will-change:opacity}.gh-text-btn:hover{opacity:.8}.gh-foot{color:var(--color-secondary-text);padding-bottom:8rem;padding-top:8rem;white-space:nowrap}.gh-foot-inner{display:grid;font-size:1.3rem;gap:40px;grid-template-columns:1fr auto 1fr}.no-menu .gh-foot-inner{align-items:center;display:flex;flex-direction:column;gap:24px}.gh-foot-menu .nav{align-items:center;display:inline-flex;flex-wrap:wrap;justify-content:center;list-style:none;margin:0;padding:0;row-gap:4px}.gh-foot-menu .nav li{align-items:center;display:flex}.gh-foot-menu .nav li+li:before{content:"•";font-size:.9rem;line-height:0;padding:0 1.2rem}.gh-powered-by{text-align:right}.gh-foot a{color:var(--color-secondary-text)}.gh-foot a:hover{color:var(--color-darker-gray);opacity:1}@media (max-width:767px){.gh-foot{padding-bottom:12rem;padding-top:6.4rem}.gh-foot-inner{grid-template-columns:1fr;text-align:center}.gh-foot-menu .nav{flex-direction:column}.gh-foot-menu .nav li+li{margin-top:.4rem}.gh-foot-menu .nav li+li:before{display:none}.gh-powered-by{text-align:center}}.pswp{backface-visibility:hidden;display:none;height:100%;left:0;outline:none;overflow:hidden;position:absolute;top:0;touch-action:none;width:100%;z-index:3999999;-webkit-text-size-adjust:100%}.pswp img{max-width:none}.pswp--animate_opacity{opacity:.001;transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp--open{display:block}.pswp--zoom-allowed .pswp__img{cursor:zoom-in}.pswp--zoomed-in .pswp__img{cursor:grab}.pswp--dragging .pswp__img{cursor:grabbing}.pswp__bg{backface-visibility:hidden;background-color:rgba(0,0,0,.85);opacity:0;transform:translateZ(0);transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp__bg,.pswp__scroll-wrap{height:100%;left:0;position:absolute;top:0;width:100%}.pswp__scroll-wrap{overflow:hidden}.pswp__container,.pswp__zoom-wrap{backface-visibility:hidden;bottom:0;left:0;position:absolute;right:0;top:0;touch-action:none}.pswp__container,.pswp__img{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.pswp__zoom-wrap{position:absolute;transform-origin:left top;transition:transform 333ms cubic-bezier(.4,0,.22,1);width:100%}.pswp--animated-in .pswp__bg,.pswp--animated-in .pswp__zoom-wrap{transition:none}.pswp__item{bottom:0;overflow:hidden;right:0}.pswp__img,.pswp__item{left:0;position:absolute;top:0}.pswp__img{height:auto;width:auto}.pswp__img--placeholder{backface-visibility:hidden}.pswp__img--placeholder--blank{background:var(--color-black)}.pswp--ie .pswp__img{height:auto!important;left:0;top:0;width:100%!important}.pswp__error-msg{color:var(--color-secondary-text);font-size:14px;left:0;line-height:16px;margin-top:-8px;position:absolute;text-align:center;top:50%;width:100%}.pswp__error-msg a{color:var(--color-secondary-text);text-decoration:underline}.pswp__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;box-shadow:none;cursor:pointer;display:block;float:right;height:44px;margin:0;overflow:visible;padding:0;position:relative;transition:opacity .2s;width:44px}.pswp__button:focus,.pswp__button:hover{opacity:1}.pswp__button:active{opacity:.9;outline:none}.pswp__button::-moz-focus-inner{border:0;padding:0}.pswp__ui--over-close .pswp__button--close{opacity:1}.pswp__button,.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{background:url(../images/default-skin.png) 0 0 no-repeat;background-size:264px 88px;height:44px;width:44px}@media (min-resolution:1.1dppx),(min-resolution:105dpi){.pswp--svg .pswp__button,.pswp--svg .pswp__button--arrow--left:before,.pswp--svg .pswp__button--arrow--right:before{background-image:url(../images/default-skin.svg)}.pswp--svg .pswp__button--arrow--left,.pswp--svg .pswp__button--arrow--right{background:none}}.pswp__button--close{background-position:0 -44px}.pswp__button--share{background-position:-44px -44px}.pswp__button--fs{display:none}.pswp--supports-fs .pswp__button--fs{display:block}.pswp--fs .pswp__button--fs{background-position:-44px 0}.pswp__button--zoom{background-position:-88px 0;display:none}.pswp--zoom-allowed .pswp__button--zoom{display:block}.pswp--zoomed-in .pswp__button--zoom{background-position:-132px 0}.pswp--touch .pswp__button--arrow--left,.pswp--touch .pswp__button--arrow--right{visibility:hidden}.pswp__button--arrow--left,.pswp__button--arrow--right{background:none;height:100px;margin-top:-50px;position:absolute;top:50%;width:70px}.pswp__button--arrow--left{left:0}.pswp__button--arrow--right{right:0}.pswp__button--arrow--left:before,.pswp__button--arrow--right:before{content:"";height:30px;position:absolute;top:35px;width:32px}.pswp__button--arrow--left:before{background-position:-138px -44px;left:6px}.pswp__button--arrow--right:before{background-position:-94px -44px;right:6px}.pswp__counter{color:var(--color-white);font-size:11px;font-weight:700;height:44px;left:0;line-height:44px;padding:0 15px;position:absolute;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pswp__caption{bottom:0;left:0;min-height:44px;position:absolute;width:100%}.pswp__caption__center{color:var(--color-white);font-size:11px;line-height:1.6;margin:0 auto;max-width:420px;padding:25px 15px 30px;text-align:center}.pswp__caption__center .post-caption-title{font-size:15px;font-weight:500;margin-bottom:7px;text-transform:uppercase}.pswp__caption__center .post-caption-meta-item+.post-caption-meta-item:before{content:"\02022";padding:0 4px}.pswp__caption--empty{display:none}.pswp__caption--fake{visibility:hidden}.pswp__preloader{direction:ltr;height:44px;left:50%;margin-left:-22px;opacity:0;position:absolute;top:0;transition:opacity .25s ease-out;width:44px;will-change:opacity}.pswp__preloader__icn{height:20px;margin:12px;width:20px}.pswp__preloader--active{opacity:1}.pswp__preloader--active .pswp__preloader__icn{background:url(../images/preloader.gif) 0 0 no-repeat}.pswp--css_animation .pswp__preloader--active{opacity:1}.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn{animation:clockwise .5s linear infinite}.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut{animation:donut-rotate 1s cubic-bezier(.4,0,.22,1) infinite}.pswp--css_animation .pswp__preloader__icn{background:none;height:14px;left:15px;margin:0;opacity:.75;position:absolute;top:15px;width:14px}.pswp--css_animation .pswp__preloader__cut{height:14px;overflow:hidden;position:relative;width:7px}.pswp--css_animation .pswp__preloader__donut{background:none;border-bottom:2px solid transparent;border-left:2px solid transparent;border-radius:50%;border-right:2px solid var(--color-white);border-top:2px solid var(--color-white);box-sizing:border-box;height:14px;left:0;margin:0;position:absolute;top:0;width:14px}@media screen and (max-width:1024px){.pswp__preloader{float:right;left:auto;margin:0;position:relative;top:auto}}@keyframes clockwise{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes donut-rotate{0%{transform:rotate(0)}50%{transform:rotate(-140deg)}to{transform:rotate(0)}}.pswp__ui{opacity:1;visibility:visible;z-index:1550;-webkit-font-smoothing:auto}.pswp__top-bar{height:44px;left:0;position:absolute;top:0;width:100%}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right,.pswp__caption,.pswp__top-bar{backface-visibility:hidden;transition:opacity 333ms cubic-bezier(.4,0,.22,1);will-change:opacity}.pswp--has_mouse .pswp__button--arrow--left,.pswp--has_mouse .pswp__button--arrow--right{visibility:visible}.pswp__ui--idle .pswp__button--arrow--left,.pswp__ui--idle .pswp__button--arrow--right,.pswp__ui--idle .pswp__top-bar{opacity:0}.pswp__ui--hidden .pswp__button--arrow--left,.pswp__ui--hidden .pswp__button--arrow--right,.pswp__ui--hidden .pswp__caption,.pswp__ui--hidden .pswp__top-bar{opacity:.001}.pswp__ui--one-slide .pswp__button--arrow--left,.pswp__ui--one-slide .pswp__button--arrow--right,.pswp__ui--one-slide .pswp__counter{display:none}.pswp__element--disabled{display:none!important}.pswp--minimal--dark .pswp__top-bar{background:none}@font-face{font-family:Mulish;font-style:normal;font-weight:400;src:local(""),url(../fonts/mulish-v10-latin-regular.woff2) format("woff2"),url(../fonts/mulish-v10-latin-regular.woff) format("woff")}@font-face{font-family:Mulish;font-style:normal;font-weight:700;src:local(""),url(../fonts/mulish-v10-latin-700.woff2) format("woff2"),url(../fonts/mulish-v10-latin-700.woff) format("woff")}@font-face{font-family:Mulish;font-style:normal;font-weight:800;src:local(""),url(../fonts/mulish-v10-latin-800.woff2) format("woff2"),url(../fonts/mulish-v10-latin-800.woff) format("woff")}@font-face{font-family:Mulish;font-style:italic;font-weight:400;src:local(""),url(../fonts/mulish-v10-latin-italic.woff2) format("woff2"),url(../fonts/mulish-v10-latin-italic.woff) format("woff")}@font-face{font-family:Mulish;font-style:italic;font-weight:700;src:local(""),url(../fonts/mulish-v10-latin-700italic.woff2) format("woff2"),url(../fonts/mulish-v10-latin-700italic.woff) format("woff")}@font-face{font-family:Lora;font-style:normal;font-weight:400;src:local(""),url(../fonts/lora-v23-latin-regular.woff2) format("woff2"),url(../fonts/lora-v23-latin-regular.woff) format("woff")}@font-face{font-family:Lora;font-style:normal;font-weight:700;src:local(""),url(../fonts/lora-v23-latin-700.woff2) format("woff2"),url(../fonts/lora-v23-latin-700.woff) format("woff")}@font-face{font-family:Lora;font-style:italic;font-weight:400;src:local(""),url(../fonts/lora-v23-latin-italic.woff2) format("woff2"),url(../fonts/lora-v23-latin-italic.woff) format("woff")}@font-face{font-family:Lora;font-style:italic;font-weight:700;src:local(""),url(../fonts/lora-v23-latin-700italic.woff2) format("woff2"),url(../fonts/lora-v23-latin-700italic.woff) format("woff")}:root{--brand-color:var(--ghost-accent-color,#ff572f);--primary-text-color:#333;--secondary-text-color:#999;--white-color:#fff;--lighter-gray-color:#f6f6f6;--light-gray-color:#e6e6e6;--mid-gray-color:#ccc;--dark-gray-color:#444;--darker-gray-color:#1a1a1a;--black-color:#000;--green-color:#28a745;--orange-color:#ffc107;--red-color:#dc3545;--facebook-color:#3b5998;--twitter-color:#1da1f2;--linkedin-color:#0b66c3;--bluesky-color:#1185fe;--threads-color:#000;--mastodon-color:#6364ff;--tiktok-color:#000;--youtube-color:red;--instagram-color:#000;--rss-color:#f26522;--animation-base:ease-in-out;--font-sans:Mulish,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;--font-serif:Lora,Times,serif;--font-mono:Menlo,Consolas,Monaco,Liberation Mono,Lucida Console,monospace;--navbar-height:80px;--content-font-size:1.7rem;--header-spacing:60px}@media (max-width:767px){:root{--header-spacing:30px}}body{background-color:var(--white-color);color:var(--primary-text-color)}a,h1,h2,h3,h4,h5,h6{color:var(--darker-gray-color)}.button,h1,h2,h3,h4,h5,h6{font-weight:800}.button{align-items:center;background-color:var(--white-color);border:1px solid var(--light-gray-color);border-radius:3px;color:var(--brand-color);cursor:pointer;display:inline-flex;font-size:11px;height:36px;justify-content:center;letter-spacing:.5px;outline:none;padding:0 15px;text-transform:uppercase}.button:hover{border-color:var(--mid-gray-color);opacity:1}.button .icon-loading{display:none}.button.loading{text-indent:-9999px}.button.loading .icon-loading{display:block}.button-icon,.button-secondary{color:var(--darker-gray-color)}.button-icon{align-items:center;background-color:transparent;border:0;cursor:pointer;display:inline-flex;height:30px;justify-content:center;outline:none;padding:0;width:30px}.button-icon:hover .icon{opacity:.8}.button-text{background-color:transparent;border:0;cursor:pointer;line-height:inherit;margin:0;outline:none;padding:0}.button-text,label{color:var(--darker-gray-color)}label{display:block;font-size:1.4rem;font-weight:700}label+label{margin-top:2rem}label input,label textarea{margin-top:.7rem}input,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--white-color);border:1px solid var(--light-gray-color);border-radius:5px;color:var(--darker-gray-color);font-size:1.6rem;height:44px;outline:none;padding:0 1.5rem;width:100%}input:focus,textarea:focus{border-color:var(--mid-gray-color)}textarea{height:100%;padding-bottom:1.5rem;padding-top:1.5rem;resize:vertical}.form-wrapper{position:relative}.form-button{align-items:center;background-color:var(--brand-color);border:0;border-radius:0 4px 4px 0;color:var(--white-color);cursor:pointer;display:flex;height:40px;justify-content:center;outline:none;padding:0;position:absolute;right:5px;top:5px;width:40px}.form-button .icon-loading,.loading .form-button .icon{display:none}.loading .form-button .icon-loading{display:block}.contact-form{margin-top:3rem}.contact-form .button{margin-top:1.5rem}symbol{fill:currentColor}.icon{height:20px;width:20px}.icon-loading{height:26px;width:26px}.site{display:flex;flex-direction:column;min-height:100vh}.site-content{flex-grow:1;padding:6rem 0}.page-template .site-content{padding-block:0}@media (max-width:767px){.site-content{padding:3rem 0}}.gh-head-logo{font-size:2.2rem;font-weight:800}.gh-head-actions,.gh-head-menu{font-size:1.5rem;font-weight:700}.cover{margin-top:48px}.cover-content{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:520px;text-align:center}.cover-icon{margin-bottom:32px;position:relative}.cover-icon-image{width:120px}.cover-description{font-size:1.7rem}.cover-cta{display:flex;margin-top:2rem}.cover-cta .button{margin:0 .5rem}.feed{align-items:center;display:flex;line-height:1;overflow:hidden;padding:1.5rem 0;position:relative}.feed:hover .feed-title{opacity:.8}.feed:hover .feed-right{margin-right:1.6rem}.feed:hover .feed-icon{transform:translateX(.4rem)}.feed+.feed{border-top:1px solid var(--light-gray-color)}.feed+.feed.feed-paged{border-top:0;margin-top:3rem}.feed-calendar{color:var(--brand-color);display:flex;font-size:1.1rem;font-weight:800;gap:.4rem;margin-right:1.5rem;min-width:45px;white-space:nowrap}.feed-calendar-month{text-transform:uppercase}.feed-title{flex-grow:1;font-family:var(--gh-font-body,var(--font-sans));font-size:1.6rem;font-weight:400;letter-spacing:0;line-height:1.3;margin-bottom:0;overflow:hidden;padding-right:1rem;text-overflow:ellipsis;white-space:nowrap}.feed-right{align-items:center;display:flex;transition:margin .2s var(--animation-base)}.icon-star{color:var(--orange-color);height:16px;margin-right:1rem;width:16px}.public .icon-star{display:none}.feed-length{font-size:1.4rem;white-space:nowrap}.feed-icon,.feed-length{color:var(--secondary-text-color)}.feed-icon{height:16px;position:absolute;right:0;transform:translateX(2rem);transition:transform .2s var(--animation-base);width:16px}.featured-wrapper{margin-top:60px}.featured-wrapper .u-placeholder{margin-bottom:24px}.featured-wrapper .post-title{font-size:1.8rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin-bottom:0;word-break:break-word}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .featured-wrapper .post-title{font-family:var(--gh-font-heading,var(--font-serif))}.featured-title{border-bottom:1px solid var(--light-gray-color);font-size:1.5rem;font-weight:800;letter-spacing:.01em;margin-bottom:4.5rem;padding-bottom:1rem;text-transform:uppercase}.load-more{display:flex;justify-content:center;margin-top:48px}.single-header{margin-bottom:4.5rem;text-align:center}.page-template .single-header{margin-top:var(--header-spacing)}.single-meta{color:var(--secondary-text-color);font-size:1.2rem;font-weight:800;margin-bottom:1rem;text-transform:uppercase}.single-meta-item+.single-meta-item:before{content:"\02022";font-family:serif;padding:0 .3rem}.single-meta-tag .post-tag{color:var(--brand-color)}.single-title{font-size:4rem;letter-spacing:-.1rem;line-height:1.2;margin-bottom:0;word-break:break-word}.has-serif-title:not([class*=" gh-font-heading"]):not([class^=gh-font-heading]) .single-title{font-family:var(--gh-font-heading,var(--font-serif))}.single-excerpt{font-size:1.8rem;margin-top:2rem;word-break:break-word}.has-serif-body:not([class*=" gh-font-body"]):not([class^=gh-font-body]) .single-excerpt{font-family:var(--gh-font-body,var(--font-serif))}.single-media{margin-top:4.5rem}.single-cta{border-bottom:1px solid var(--light-gray-color);border-top:5px solid var(--brand-color);margin-top:4rem!important;padding:3rem;text-align:center}.single-cta-title{margin:0 0 3rem!important}.single-cta-button{font-weight:800!important;margin-bottom:1rem}.single-cta-footer{font-size:1.4rem;font-weight:400!important;letter-spacing:-.02rem}.single-footer{align-items:center;display:flex;margin-top:4.5rem}.single-footer-left,.single-footer-right{display:flex;flex:2}.single-footer-right{justify-content:flex-end}.single-footer-middle,.single-footer-top{display:flex;flex-direction:column}.single-footer-top{align-items:center}.single-footer-title{font-size:1.8rem;margin-bottom:1rem}.single-footer-bottom{margin-top:2rem}@media (max-width:767px){.single-header{margin-bottom:3rem}.single-title{font-size:2.6rem}.single-excerpt{font-size:1.7rem}.single-media{margin-top:3rem}}.author{align-items:center;display:flex;flex-direction:column;margin-bottom:4.5rem;text-align:center}.author-image-placeholder{border-radius:50%;flex-shrink:0;margin-bottom:2rem;overflow:hidden;width:70px}.author-name{font-size:2.4rem;margin-bottom:0}.author-meta{color:var(--secondary-text-color);font-size:1.2rem;font-weight:800;margin-top:8px;text-transform:uppercase}.author-bio{margin-top:16px;max-width:520px}.author-social{margin-top:2rem}.author-list{display:flex}.author-list .author-image-placeholder{border:2px solid var(--white-color);margin:0 -4px;width:54px}.author-list .author-image-placeholder:first-child{z-index:10}.author-list .author-image-placeholder:nth-child(2){z-index:9}.author-list .author-image-placeholder:nth-child(3){z-index:8}.author-list .author-image-placeholder:nth-child(4){z-index:7}.author-list .author-image-placeholder:nth-child(5){z-index:6}.share{display:flex;gap:.4rem}.share-link{align-items:center;border-radius:3px;color:var(--white-color);display:flex;font-size:1.1rem;font-weight:800;height:2.6rem;letter-spacing:.04rem;line-height:1;margin:0 .6rem;padding:0 .8rem;text-transform:uppercase}.share-link .icon{height:14px;width:14px}.share-link-facebook{background-color:var(--facebook-color)}.share-link-twitter{background-color:var(--twitter-color)}.share-link-linkedin{background-color:var(--linkedin-color)}.share-link-bluesky{background-color:var(--bluesky-color)}.share-link-threads{background-color:var(--threads-color)}.share-link-mastodon{background-color:var(--mastodon-color)}.share-link-tiktok{background-color:var(--tiktok-color)}.share-link-youtube{background-color:var(--youtube-color)}.share-link-instagram{background-color:var(--instagram-color)}.navigation-previous .navigation-icon{margin-left:-2px}.navigation-next .navigation-link{justify-content:flex-end}.navigation-next .navigation-icon{margin-right:-2px}.navigation-link{align-items:center;display:flex;height:30px;width:30px}.related-wrapper{background-color:var(--lighter-gray-color);margin-top:80px;padding:56px 0 32px}.related-title{font-size:2.1rem;margin-bottom:20px}.comment{margin-top:6rem}.tag{margin-bottom:4.5rem;text-align:center}.tag .tag-name{color:var(--brand-color);font-size:3rem;margin-bottom:0}.tag .tag-name:before{content:"#"}.tag .tag-description{margin:16px auto 0;max-width:520px}.tag .tag-list{font-weight:700;margin-top:2rem}.tag .tag-list-label{color:var(--secondary-text-color);margin-right:.5rem}.tag .tag-list-item:before{content:"#"}.tag .tag-list-item+.tag-list-item{margin-left:.3rem}.tag .tag-media{margin-top:4.5rem}@media (max-width:767px){.tag{margin-bottom:2.5rem}.tag .tag-media{margin-top:3rem}}.owl{display:none;position:relative;width:100%;z-index:1;-webkit-tap-highlight-color:transparent}.owl .owl-stage{position:relative;touch-action:pan-y}.owl .owl-stage:after{clear:both;content:".";display:block;height:0;line-height:0;visibility:hidden}.owl .owl-stage-outer{overflow:hidden}.owl .owl-item,.owl .owl-stage-outer{position:relative;transform:translateZ(0)}.owl .owl-item{backface-visibility:hidden;float:left;min-height:1px;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.owl .owl-item>img{display:block;transform-style:preserve-3d;width:100%}.owl .owl-dots.disabled,.owl .owl-nav.disabled{display:none}.owl .owl-dot,.owl .owl-next,.owl .owl-prev{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.owl .owl-next,.owl .owl-prev{align-items:center;background-color:var(--white-color);border:1px solid var(--light-gray-color);border-radius:3px;color:var(--dark-gray-color);display:flex;height:30px;justify-content:center;outline:none;padding:0;position:absolute;text-align:center;top:-86px;transition:color .5s var(--animation-base);width:30px}.owl .owl-next.disabled,.owl .owl-prev.disabled{color:var(--mid-gray-color);cursor:default}.owl .owl-next .icon,.owl .owl-prev .icon{height:18px;width:18px}.owl .owl-prev{right:34px}.owl .owl-next{right:0}.owl .owl-dots{margin-top:20px}.owl .owl-dot,.owl .owl-dots{display:flex;justify-content:center}.owl .owl-dot{align-items:center;border:0;height:20px;outline:none;padding:0;width:20px}.owl .owl-dot span{background-color:var(--light-gray-color);border-radius:50%;height:8px;width:8px}.owl .owl-dot.active span{background-color:var(--black-color)}.owl.owl-loaded{display:block}.owl.owl-loading{display:block;opacity:0}.owl.owl-hidden{opacity:0}.owl.owl-refresh .owl-item{visibility:hidden}.owl.owl-drag .owl-item{-webkit-user-select:none;-moz-user-select:none;user-select:none}.owl.owl-grab{cursor:move}.no-js .owl{display:block}.u-permalink{bottom:0;left:0;outline:none;position:absolute;right:0;top:0;z-index:50}.u-placeholder{background-color:var(--lighter-gray-color);position:relative;z-index:10}.u-placeholder:before{content:"";display:block}.u-placeholder.horizontal:before{padding-bottom:50%}.u-placeholder.rectangle:before{padding-bottom:62.5%}.u-placeholder.square:before{padding-bottom:100%}.u-object-fit{height:100%;left:0;-o-object-fit:cover;object-fit:cover;position:absolute;top:0;width:100%}.animate__animated{animation-duration:1s;animation-fill-mode:both}@keyframes bounceIn{0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:scale3d(.7,.7,.7)}40%{transform:scale3d(1.1,1.1,1.1)}to{opacity:1;transform:scaleX(1)}}.animate__bounceIn{animation-duration:.3s;animation-name:bounceIn}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.7,.7,.7)}to{opacity:0}}.animate__zoomOut{animation-duration:.3s;animation-name:zoomOut}.theme-dark:root{--primary-text-color:#e2e2e2;--secondary-text-color:#868686;--white-color:#282c35;--color-white:#282c35;--lighter-gray-color:#2f333c;--color-lighter-gray:#2f333c;--light-gray-color:#3b3e46;--color-light-gray:#3b3e46;--color-light-color:#3b3e46;--mid-gray-color:#666;--color-mid-gray:#666;--dark-gray-color:#e6e6e6;--color-dark-gray:#e6e6e6;--darker-gray-color:#fff;--color-darker-gray:#fff}.theme-dark .gh-head-logo img:first-child:not(:only-child){opacity:0}.theme-dark .gh-head-logo img+img{opacity:1}.theme-dark .sticky{background-color:rgba(0,0,0,.6)}.theme-dark .form-button,.theme-dark .pswp__counter{color:var(--darker-gray-color)}.theme-dark .share-link{background-color:var(--darker-gray-color)}.theme-dark .share-link-facebook{color:var(--facebook-color)}.theme-dark .share-link-twitter{color:var(--twitter-color)}.theme-dark .share-link-linkedin{color:var(--linkedin-color)}.theme-dark .share-link-bluesky{color:var(--bluesky-color)}.theme-dark .share-link-threads{color:var(--threads-color)}.theme-dark .share-link-mastodon{color:var(--mastodon-color)}.theme-dark .share-link-tiktok{color:var(--tiktok-color)}.theme-dark .share-link-youtube{color:var(--youtube-color)}.theme-dark .share-link-instagram{color:var(--instagram-color)}.theme-dark .kg-audio-card button{color:var(--darker-gray-color)}.theme-dark .kg-audio-card,.theme-dark .kg-bookmark-card a.kg-bookmark-container,.theme-dark .kg-bookmark-card a.kg-bookmark-container:hover,.theme-dark .kg-file-card-container,.theme-dark .kg-file-card-container:hover,.theme-dark .kg-product-card-container{background-color:var(--lighter-gray-color)!important;opacity:1}@media (prefers-color-scheme:dark){html:not(.theme-light):root{--primary-text-color:#e2e2e2;--secondary-text-color:#868686;--white-color:#282c35;--color-white:#282c35;--lighter-gray-color:#2f333c;--color-lighter-gray:#2f333c;--light-gray-color:#3b3e46;--color-light-gray:#3b3e46;--mid-gray-color:#666;--color-mid-gray:#666;--dark-gray-color:#e6e6e6;--color-dark-gray:#e6e6e6;--darker-gray-color:#fff;--color-darker-gray:#fff}html:not(.theme-light) .gh-head-logo img:first-child:not(:only-child){opacity:0}html:not(.theme-light) .gh-head-logo img+img{opacity:1}html:not(.theme-light) .sticky{background-color:rgba(0,0,0,.6)}html:not(.theme-light) .form-button,html:not(.theme-light) .pswp__counter{color:var(--darker-gray-color)}html:not(.theme-light) .share-link{background-color:var(--darker-gray-color)}html:not(.theme-light) .share-link-facebook{color:var(--facebook-color)}html:not(.theme-light) .share-link-twitter{color:var(--twitter-color)}html:not(.theme-light) .kg-audio-card button{color:var(--darker-gray-color)}html:not(.theme-light) .kg-audio-card,html:not(.theme-light) .kg-bookmark-card a.kg-bookmark-container,html:not(.theme-light) .kg-bookmark-card a.kg-bookmark-container:hover,html:not(.theme-light) .kg-file-card-container,html:not(.theme-light) .kg-file-card-container:hover,html:not(.theme-light) .kg-product-card-container{background-color:var(--lighter-gray-color)!important;opacity:1}}/*# sourceMappingURL=screen.css.map */
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Entire CSS block is duplicated — screen.css should not be manually edited.

screen.css is a build artifact (assets/built/). The AI summary and both static-analysis tools confirm the same: Biome flags "duplicate keyframe selector overwritten by later one" and Stylelint flags duplicate 0%, 40%, and to keyframe stops — all symptoms of the full ruleset being appended twice. This doubles the transferred and parsed payload with zero semantic benefit.

The correct workflow is:

  1. Make changes only in the source CSS files (assets/css/).
  2. Run the build step to regenerate screen.css.
  3. Commit the regenerated artifact.

Manually patching a built file risks the duplication being silently committed and the fix being wiped on the next build.

🧰 Tools
🪛 Biome (2.4.4)

[error] 1-1: The duplicate keyframe selector is overwritten by later one.

(lint/suspicious/noDuplicateSelectorsKeyframeBlock)

🪛 Stylelint (17.3.0)

[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Unexpected deprecated keyword "break-word" for property "word-break" (declaration-property-value-keyword-no-deprecated)

(declaration-property-value-keyword-no-deprecated)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Expected quotes around "url" function argument (function-url-quotes)

(function-url-quotes)


[error] 1-1: Unexpected duplicate "0%" (keyframe-block-no-duplicate-selectors)

(keyframe-block-no-duplicate-selectors)


[error] 1-1: Unexpected duplicate "40%" (keyframe-block-no-duplicate-selectors)

(keyframe-block-no-duplicate-selectors)


[error] 1-1: Unexpected duplicate "to" (keyframe-block-no-duplicate-selectors)

(keyframe-block-no-duplicate-selectors)


[error] 1-1: Expected "to" to be "100%" (keyframe-selector-notation)

(keyframe-selector-notation)


[error] 1-1: Expected "to" to be "100%" (keyframe-selector-notation)

(keyframe-selector-notation)


[error] 1-1: Expected "to" to be "100%" (keyframe-selector-notation)

(keyframe-selector-notation)


[error] 1-1: Expected "to" to be "100%" (keyframe-selector-notation)

(keyframe-selector-notation)


[error] 1-1: Expected "to" to be "100%" (keyframe-selector-notation)

(keyframe-selector-notation)


[error] 1-1: Expected keyframe name "bounceIn" to be kebab-case (keyframes-name-pattern)

(keyframes-name-pattern)


[error] 1-1: Expected keyframe name "zoomOut" to be kebab-case (keyframes-name-pattern)

(keyframes-name-pattern)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected complex :not() pseudo-class notation (selector-not-notation)

(selector-not-notation)


[error] 1-1: Expected "BlinkMacSystemFont" to be "blinkmacsystemfont" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Segoe" to be "segoe" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "UI" to be "ui" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Helvetica" to be "helvetica" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Arial" to be "arial" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Georgia" to be "georgia" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Mulish" to be "mulish" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "BlinkMacSystemFont" to be "blinkmacsystemfont" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Segoe" to be "segoe" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "UI" to be "ui" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Helvetica" to be "helvetica" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Arial" to be "arial" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Lora" to be "lora" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Times" to be "times" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Menlo" to be "menlo" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Consolas" to be "consolas" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Monaco" to be "monaco" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Liberation" to be "liberation" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Mono" to be "mono" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Lucida" to be "lucida" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "Console" to be "console" (value-keyword-case)

(value-keyword-case)


[error] 1-1: Expected "currentColor" to be "currentcolor" (value-keyword-case)

(value-keyword-case)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@packages/dawn/assets/built/screen.css` at line 1, The file contains a
duplicated build artifact (the entire generated ruleset including :root and
keyframes like `@keyframes` bounceIn/zoomOut repeated), so do not edit screen.css
directly; instead remove the duplication from the original source CSS under
assets/css (fix the duplicate keyframes and repeated :root variables in the
source files), run the project's CSS build step to regenerate
assets/built/screen.css, verify the duplicated `@keyframes` (bounceIn, zoomOut)
and repeated :root block are gone, and commit the regenerated artifact.

@minimaluminium minimaluminium self-requested a review March 3, 2026 02:09
@weylandswart weylandswart merged commit 6a489ea into main Mar 4, 2026
49 checks passed
@weylandswart weylandswart deleted the fix-missing-dark-mode-colours branch March 4, 2026 08:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Dawn] Code snippets seem to be unreadable (see issue from 2022)

2 participants