Merge pull request #2630 from ZhenShuo2021/fix/contrast

🐛 Fix: improve contrast
This commit is contained in:
Nuno C.
2025-12-22 17:07:21 +00:00
committed by GitHub
16 changed files with 739 additions and 349 deletions

View File

@@ -47,6 +47,7 @@
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1); --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
--animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
--blur-sm: 8px; --blur-sm: 8px;
--blur-xl: 24px;
--blur-2xl: 40px; --blur-2xl: 40px;
--default-transition-duration: 150ms; --default-transition-duration: 150ms;
--default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
@@ -518,6 +519,7 @@
border-top-width: 1px; border-top-width: 1px;
margin-top: 3em; margin-top: 3em;
margin-bottom: 3em; margin-bottom: 3em;
border: 0.8px solid rgba(var(--color-neutral-300), 1);
} }
:where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
font-weight: 500; font-weight: 500;
@@ -614,7 +616,6 @@
color: var(--tw-prose-code); color: var(--tw-prose-code);
font-weight: 600; font-weight: 600;
font-size: 0.875em; font-size: 0.875em;
background-color: rgba(var(--color-neutral-50), 1);
padding-top: 3px; padding-top: 3px;
padding-bottom: 3px; padding-bottom: 3px;
padding-left: 5px; padding-left: 5px;
@@ -741,9 +742,9 @@
--tw-prose-bold: rgba(var(--color-neutral-900), 1); --tw-prose-bold: rgba(var(--color-neutral-900), 1);
--tw-prose-counters: rgba(var(--color-neutral-800), 1); --tw-prose-counters: rgba(var(--color-neutral-800), 1);
--tw-prose-bullets: rgba(var(--color-neutral-500), 1); --tw-prose-bullets: rgba(var(--color-neutral-500), 1);
--tw-prose-hr: rgba(var(--color-neutral-200), 1); --tw-prose-hr: oklch(92.8% 0.006 264.531);
--tw-prose-quotes: rgba(var(--color-neutral-700), 1); --tw-prose-quotes: rgba(var(--color-neutral-700), 1);
--tw-prose-quote-borders: rgba(var(--color-primary-200), 1); --tw-prose-quote-borders: rgba(var(--color-primary-500), 1);
--tw-prose-captions: rgba(var(--color-neutral-500), 1); --tw-prose-captions: rgba(var(--color-neutral-500), 1);
--tw-prose-kbd: oklch(21% 0.034 264.665); --tw-prose-kbd: oklch(21% 0.034 264.665);
--tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.034 264.665) 10%, transparent); --tw-prose-kbd-shadows: color-mix(in oklab, oklch(21% 0.034 264.665) 10%, transparent);
@@ -759,9 +760,9 @@
--tw-prose-invert-bold: rgba(var(--color-neutral), 1); --tw-prose-invert-bold: rgba(var(--color-neutral), 1);
--tw-prose-invert-counters: rgba(var(--color-neutral-400), 1); --tw-prose-invert-counters: rgba(var(--color-neutral-400), 1);
--tw-prose-invert-bullets: rgba(var(--color-neutral-600), 1); --tw-prose-invert-bullets: rgba(var(--color-neutral-600), 1);
--tw-prose-invert-hr: rgba(var(--color-neutral-500), 1); --tw-prose-invert-hr: oklch(37.3% 0.034 259.733);
--tw-prose-invert-quotes: rgba(var(--color-neutral-200), 1); --tw-prose-invert-quotes: rgba(var(--color-neutral-200), 1);
--tw-prose-invert-quote-borders: rgba(var(--color-primary-900), 1); --tw-prose-invert-quote-borders: rgba(var(--color-primary-600), 1);
--tw-prose-invert-captions: rgba(var(--color-neutral-400), 1); --tw-prose-invert-captions: rgba(var(--color-neutral-400), 1);
--tw-prose-invert-kbd: #fff; --tw-prose-invert-kbd: #fff;
--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%); --tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);
@@ -1609,8 +1610,8 @@
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: rgba(var(--color-primary-400), 1); background-color: rgba(var(--color-primary-400), 1);
} }
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(code:not(pre code)):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: rgba(var(--color-neutral-700), 1); background-color: color-mix(in oklab, oklch(21% 0.006 285.885) 70%, transparent);
} }
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: rgba(var(--color-primary-400), 1); text-decoration-color: rgba(var(--color-primary-400), 1);
@@ -1618,6 +1619,9 @@
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: rgba(var(--color-primary-400), 1); text-decoration-color: rgba(var(--color-primary-400), 1);
} }
:where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
border: 0.8px solid rgba(var(--color-neutral-500), 1);
}
} }
.bg-\[\#6d6d6d\] { .bg-\[\#6d6d6d\] {
background-color: #6d6d6d; background-color: #6d6d6d;
@@ -1640,6 +1644,12 @@
background-color: color-mix(in oklab, rgba(var(--color-neutral-100), 1) 50%, transparent); background-color: color-mix(in oklab, rgba(var(--color-neutral-100), 1) 50%, transparent);
} }
} }
.bg-neutral-100\/75 {
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-100), 1), 1) 75%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-100), 1) 75%, transparent);
}
}
.bg-neutral-300 { .bg-neutral-300 {
background-color: rgba(var(--color-neutral-300), 1); background-color: rgba(var(--color-neutral-300), 1);
} }
@@ -2176,6 +2186,11 @@
-webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,); -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,); backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
} }
.backdrop-blur-xl {
--tw-backdrop-blur: blur(var(--blur-xl));
-webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
}
.transition { .transition {
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events; transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
@@ -3056,8 +3071,8 @@
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: rgba(var(--color-primary-400), 1); background-color: rgba(var(--color-primary-400), 1);
} }
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(code:not(pre code)):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: rgba(var(--color-neutral-700), 1); background-color: color-mix(in oklab, oklch(21% 0.006 285.885) 70%, transparent);
} }
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: rgba(var(--color-primary-400), 1); text-decoration-color: rgba(var(--color-primary-400), 1);
@@ -3065,6 +3080,9 @@
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) { :where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: rgba(var(--color-primary-400), 1); text-decoration-color: rgba(var(--color-primary-400), 1);
} }
:where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
border: 0.8px solid rgba(var(--color-neutral-500), 1);
}
} }
} }
.dark\:bg-neutral-400 { .dark\:bg-neutral-400 {
@@ -3095,6 +3113,14 @@
} }
} }
} }
.dark\:bg-neutral-800\/60 {
&:is(.dark *) {
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-800), 1), 1) 60%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 60%, transparent);
}
}
}
.dark\:bg-neutral-900\/50 { .dark\:bg-neutral-900\/50 {
&:is(.dark *) { &:is(.dark *) {
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-900), 1), 1) 50%, transparent); background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-900), 1), 1) 50%, transparent);
@@ -3288,14 +3314,10 @@
.prose .chroma { .prose .chroma {
position: static; position: static;
border-radius: var(--radius-md); border-radius: var(--radius-md);
background-color: rgba(var(--color-neutral-50), 1); }
color: rgba(var(--color-neutral-700), 1); .prose .highlight:not(:has(table)) .chroma, .prose .highlight > .chroma {
&:is(.dark *) { --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
background-color: rgba(var(--color-neutral-700), 1); box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
&:is(.dark *) {
color: rgba(var(--color-neutral-200), 1);
}
} }
.chroma .lntd, .chroma .lntd pre { .chroma .lntd, .chroma .lntd pre {
margin: calc(var(--spacing) * 0); margin: calc(var(--spacing) * 0);
@@ -3318,134 +3340,524 @@
margin-inline: calc(var(--spacing) * -4); margin-inline: calc(var(--spacing) * -4);
display: block; display: block;
width: auto; width: auto;
background-color: rgba(var(--color-primary-100), 1);
padding-inline: calc(var(--spacing) * 4); padding-inline: calc(var(--spacing) * 4);
&:is(.dark *) {
background-color: rgba(var(--color-primary-900), 1);
}
} }
.chroma .lntd .hl { .chroma .lntd .hl {
margin: calc(var(--spacing) * 0); margin: calc(var(--spacing) * 0);
padding: calc(var(--spacing) * 0); padding: calc(var(--spacing) * 0);
} }
.chroma .lnt, .chroma .ln { .chroma:not(:is(table *)) > code {
margin-right: 0.4em; display: block;
padding-inline: 0.4em; min-width: max-content;
padding-block: calc(var(--spacing) * 0); }
color: rgba(var(--color-neutral-600), 1); html:not(.dark) {
&:is(.dark *) { .bg {
color: rgba(var(--color-neutral-300), 1); background-color: #fff;
}
.chroma {
background-color: #fff;
}
.chroma .err {
color: #f6f8fa;
background-color: #82071e;
}
.chroma .lnlinks {
outline: none;
text-decoration: none;
color: inherit;
}
.chroma .lntd {
vertical-align: top;
padding: 0;
margin: 0;
border: 0;
}
.chroma .lntable {
border-spacing: 0;
}
.chroma .hl {
background-color: #e5e5e5;
}
.chroma .lnt {
white-space: pre;
-webkit-user-select: none;
user-select: none;
margin-right: 0.4em;
padding: 0 0.4em 0 0.4em;
color: #7f7f7f;
}
.chroma .ln {
white-space: pre;
-webkit-user-select: none;
user-select: none;
margin-right: 0.4em;
padding: 0 0.4em 0 0.4em;
color: #7f7f7f;
}
.chroma .line {
display: flex;
}
.chroma .k {
color: #cf222e;
}
.chroma .kc {
color: #cf222e;
}
.chroma .kd {
color: #cf222e;
}
.chroma .kn {
color: #cf222e;
}
.chroma .kp {
color: #cf222e;
}
.chroma .kr {
color: #cf222e;
}
.chroma .kt {
color: #cf222e;
}
.chroma .na {
color: #1f2328;
}
.chroma .nc {
color: #1f2328;
}
.chroma .no {
color: #0550ae;
}
.chroma .nd {
color: #0550ae;
}
.chroma .ni {
color: #6639ba;
}
.chroma .nl {
color: #900;
font-weight: bold;
}
.chroma .nn {
color: #24292e;
}
.chroma .nx {
color: #1f2328;
}
.chroma .nt {
color: #0550ae;
}
.chroma .nb {
color: #6639ba;
}
.chroma .bp {
color: #6a737d;
}
.chroma .nv {
color: #953800;
}
.chroma .vc {
color: #953800;
}
.chroma .vg {
color: #953800;
}
.chroma .vi {
color: #953800;
}
.chroma .vm {
color: #953800;
}
.chroma .nf {
color: #6639ba;
}
.chroma .fm {
color: #6639ba;
}
.chroma .s {
color: #0a3069;
}
.chroma .sa {
color: #0a3069;
}
.chroma .sb {
color: #0a3069;
}
.chroma .sc {
color: #0a3069;
}
.chroma .dl {
color: #0a3069;
}
.chroma .sd {
color: #0a3069;
}
.chroma .s2 {
color: #0a3069;
}
.chroma .se {
color: #0a3069;
}
.chroma .sh {
color: #0a3069;
}
.chroma .si {
color: #0a3069;
}
.chroma .sx {
color: #0a3069;
}
.chroma .sr {
color: #0a3069;
}
.chroma .s1 {
color: #0a3069;
}
.chroma .ss {
color: #032f62;
}
.chroma .m {
color: #0550ae;
}
.chroma .mb {
color: #0550ae;
}
.chroma .mf {
color: #0550ae;
}
.chroma .mh {
color: #0550ae;
}
.chroma .mi {
color: #0550ae;
}
.chroma .il {
color: #0550ae;
}
.chroma .mo {
color: #0550ae;
}
.chroma .o {
color: #0550ae;
}
.chroma .ow {
color: #0550ae;
}
.chroma .p {
color: #1f2328;
}
.chroma .c {
color: #57606a;
}
.chroma .ch {
color: #57606a;
}
.chroma .cm {
color: #57606a;
}
.chroma .c1 {
color: #57606a;
}
.chroma .cs {
color: #57606a;
}
.chroma .cp {
color: #57606a;
}
.chroma .cpf {
color: #57606a;
}
.chroma .gd {
color: #82071e;
background-color: #ffebe9;
}
.chroma .ge {
color: #1f2328;
}
.chroma .gi {
color: #116329;
background-color: #dafbe1;
}
.chroma .go {
color: #1f2328;
}
.chroma .gl {
text-decoration: underline;
}
.chroma .w {
color: #fff;
} }
} }
.chroma .k, .chroma .kd, .chroma .kn, .chroma .kp, .chroma .kr, .chroma .nc, .chroma .fm, .chroma .nn, .chroma .vc, .chroma .o { html.dark {
color: rgba(var(--color-primary-600), 1); .bg {
&:is(.dark *) { color: #e6edf3;
color: rgba(var(--color-primary-300), 1); background-color: #0d1117;
} }
} .chroma {
.chroma .kc { color: #e6edf3;
--tw-font-weight: var(--font-weight-semibold); background-color: #0d1117;
font-weight: var(--font-weight-semibold);
color: rgba(var(--color-secondary-400), 1);
&:is(.dark *) {
color: rgba(var(--color-secondary-500), 1);
} }
} .chroma .err {
.chroma .kt, .chroma .nv, .chroma .vi, .chroma .vm, .chroma .m, .chroma .mb, .chroma .mf, .chroma .mh, .chroma .mi, .chroma .il, .chroma .mo { color: #f85149;
color: rgba(var(--color-secondary-400), 1);
&:is(.dark *) {
color: rgba(var(--color-secondary-600), 1);
} }
} .chroma .lnlinks {
.chroma .n, .chroma .nd, .chroma .ni, .chroma .nl { outline: none;
color: rgba(var(--color-secondary-900), 1); text-decoration: none;
&:is(.dark *) { color: inherit;
color: rgba(var(--color-secondary-200), 1);
} }
} .chroma .lntd {
.chroma .na, .chroma .nb, .chroma .bp, .chroma .nx, .chroma .py, .chroma .nt { vertical-align: top;
color: rgba(var(--color-secondary-800), 1); padding: 0;
&:is(.dark *) { margin: 0;
color: rgba(var(--color-secondary-300), 1); border: 0;
} }
} .chroma .lntable {
.chroma .no, .chroma .ne, .chroma .vg { border-spacing: 0;
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
color: rgba(var(--color-secondary-400), 1);
&:is(.dark *) {
color: rgba(var(--color-secondary-500), 1);
} }
} .chroma .hl {
.chroma .nf { background-color: #333;
color: rgba(var(--color-secondary-600), 1);
&:is(.dark *) {
color: rgba(var(--color-secondary-500), 1);
} }
} .chroma .lnt {
.chroma .l, .chroma .ld, .chroma .s, .chroma .sa, .chroma .sb, .chroma .sc, .chroma .dl, .chroma .sd, .chroma .s2, .chroma .sh, .chroma .si, .chroma .sx, .chroma .s1, .chroma .gi, .chroma .go, .chroma .gp { white-space: pre;
color: rgba(var(--color-primary-800), 1); -webkit-user-select: none;
&:is(.dark *) { user-select: none;
color: rgba(var(--color-primary-400), 1); margin-right: 0.4em;
padding: 0 0.4em 0 0.4em;
color: #737679;
} }
} .chroma .ln {
.chroma .se { white-space: pre;
--tw-font-weight: var(--font-weight-semibold); -webkit-user-select: none;
font-weight: var(--font-weight-semibold); user-select: none;
color: rgba(var(--color-secondary-400), 1); margin-right: 0.4em;
&:is(.dark *) { padding: 0 0.4em 0 0.4em;
color: rgba(var(--color-secondary-500), 1); color: #6e7681;
} }
} .chroma .line {
.chroma .sr, .chroma .ss { display: flex;
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
color: rgba(var(--color-primary-800), 1);
&:is(.dark *) {
color: rgba(var(--color-primary-400), 1);
} }
} .chroma .k {
.chroma .ow { color: #ff7b72;
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
color: rgba(var(--color-primary-400), 1);
&:is(.dark *) {
color: rgba(var(--color-primary-600), 1);
} }
} .chroma .kc {
.chroma .c, .chroma .cm, .chroma .c1, .chroma .cs, .chroma .cp, .chroma .cpf { color: #79c0ff;
color: rgba(var(--color-neutral-500), 1);
font-style: italic;
&:is(.dark *) {
color: rgba(var(--color-neutral-400), 1);
} }
} .chroma .kd {
.chroma .ch { color: #ff7b72;
--tw-font-weight: var(--font-weight-semibold); }
font-weight: var(--font-weight-semibold); .chroma .kn {
color: rgba(var(--color-neutral-500), 1); color: #ff7b72;
font-style: italic; }
&:is(.dark *) { .chroma .kp {
color: rgba(var(--color-neutral-400), 1); color: #79c0ff;
}
.chroma .kr {
color: #ff7b72;
}
.chroma .kt {
color: #ff7b72;
}
.chroma .nc {
color: #f0883e;
font-weight: bold;
}
.chroma .no {
color: #79c0ff;
font-weight: bold;
}
.chroma .nd {
color: #d2a8ff;
font-weight: bold;
}
.chroma .ni {
color: #ffa657;
}
.chroma .ne {
color: #f0883e;
font-weight: bold;
}
.chroma .nl {
color: #79c0ff;
font-weight: bold;
}
.chroma .nn {
color: #ff7b72;
}
.chroma .py {
color: #79c0ff;
}
.chroma .nt {
color: #7ee787;
}
.chroma .nv {
color: #79c0ff;
}
.chroma .vc {
color: #79c0ff;
}
.chroma .vg {
color: #79c0ff;
}
.chroma .vi {
color: #79c0ff;
}
.chroma .vm {
color: #79c0ff;
}
.chroma .nf {
color: #d2a8ff;
font-weight: bold;
}
.chroma .fm {
color: #d2a8ff;
font-weight: bold;
}
.chroma .l {
color: #a5d6ff;
}
.chroma .ld {
color: #79c0ff;
}
.chroma .s {
color: #a5d6ff;
}
.chroma .sa {
color: #79c0ff;
}
.chroma .sb {
color: #a5d6ff;
}
.chroma .sc {
color: #a5d6ff;
}
.chroma .dl {
color: #79c0ff;
}
.chroma .sd {
color: #a5d6ff;
}
.chroma .s2 {
color: #a5d6ff;
}
.chroma .se {
color: #79c0ff;
}
.chroma .sh {
color: #79c0ff;
}
.chroma .si {
color: #a5d6ff;
}
.chroma .sx {
color: #a5d6ff;
}
.chroma .sr {
color: #79c0ff;
}
.chroma .s1 {
color: #a5d6ff;
}
.chroma .ss {
color: #a5d6ff;
}
.chroma .m {
color: #a5d6ff;
}
.chroma .mb {
color: #a5d6ff;
}
.chroma .mf {
color: #a5d6ff;
}
.chroma .mh {
color: #a5d6ff;
}
.chroma .mi {
color: #a5d6ff;
}
.chroma .il {
color: #a5d6ff;
}
.chroma .mo {
color: #a5d6ff;
}
.chroma .o {
color: #ff7b72;
font-weight: bold;
}
.chroma .ow {
color: #ff7b72;
font-weight: bold;
}
.chroma .c {
color: #8b949e;
font-style: italic;
}
.chroma .ch {
color: #8b949e;
font-style: italic;
}
.chroma .cm {
color: #8b949e;
font-style: italic;
}
.chroma .c1 {
color: #8b949e;
font-style: italic;
}
.chroma .cs {
color: #8b949e;
font-weight: bold;
font-style: italic;
}
.chroma .cp {
color: #8b949e;
font-weight: bold;
font-style: italic;
}
.chroma .cpf {
color: #8b949e;
font-weight: bold;
font-style: italic;
}
.chroma .gd {
color: #ffa198;
background-color: #490202;
}
.chroma .ge {
font-style: italic;
}
.chroma .gr {
color: #ffa198;
}
.chroma .gh {
color: #79c0ff;
font-weight: bold;
}
.chroma .gi {
color: #56d364;
background-color: #0f5323;
}
.chroma .go {
color: #8b949e;
}
.chroma .gp {
color: #8b949e;
}
.chroma .gs {
font-weight: bold;
}
.chroma .gu {
color: #79c0ff;
}
.chroma .gt {
color: #ff7b72;
}
.chroma .gl {
text-decoration: underline;
}
.chroma .w {
color: #6e7681;
} }
}
.chroma .ge {
font-style: italic;
}
.chroma .gh {
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
color: rgba(var(--color-neutral-500), 1);
}
.chroma .gs {
--tw-font-weight: var(--font-weight-semibold);
font-weight: var(--font-weight-semibold);
}
.chroma .gu, .chroma .gt {
color: rgba(var(--color-neutral-500), 1);
}
.chroma .gl {
text-decoration-line: underline;
} }
} }
#zen-mode-button { #zen-mode-button {
@@ -3522,6 +3934,9 @@ body.zen-mode-enable {
.dark .ios-toggle::after { .dark .ios-toggle::after {
background: #f5f5f5; background: #f5f5f5;
} }
html.dark {
color-scheme: dark;
}
body a, body button { body a, body button {
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to; transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function)); transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
@@ -3610,7 +4025,7 @@ button, [role="button"] {
font-weight: var(--font-weight-normal); font-weight: var(--font-weight-normal);
color: rgba(var(--color-neutral-700), 1); color: rgba(var(--color-neutral-700), 1);
&:is(.dark *) { &:is(.dark *) {
color: rgba(var(--color-neutral-400), 1); color: rgba(var(--color-neutral-300), 1);
} }
} }
.toc ul > li { .toc ul > li {

View File

@@ -1,8 +1,12 @@
/* -- Chroma Highlight -- */ /* -- Chroma Highlight -- */
/* Background */ /* Background */
.prose .chroma { .prose .chroma {
@apply static rounded-md text-neutral-700 bg-neutral-50 dark:bg-neutral-700 dark:text-neutral-200; @apply static rounded-md;
}
.prose .highlight:not(:has(table)) .chroma,
.prose .highlight > .chroma {
@apply shadow;
} }
/* LineTableTD */ /* LineTableTD */
@@ -19,208 +23,173 @@
/* LineHighlight */ /* LineHighlight */
.chroma .hl { .chroma .hl {
@apply block w-auto px-4 -mx-4 bg-primary-100 dark:bg-primary-900; @apply block w-auto px-4 -mx-4;
} }
.chroma .lntd .hl { .chroma .lntd .hl {
@apply p-0 m-0; @apply p-0 m-0;
} }
/* LineNumbersTable */ /* linenos=inline */
/* LineNumbers */ .chroma:not(:is(table *)) > code {
.chroma .lnt, display: block;
.chroma .ln { min-width: max-content;
@apply text-neutral-600 dark:text-neutral-300 mr-[0.4em] px-[0.4em] py-0;
} }
/* Keyword */ html:not(.dark) {
/* KeywordDeclaration */ /* Generated using: hugo gen chromastyles --style=github */
/* KeywordNamespace */
/* KeywordPseudo */
/* KeywordReserved */
/* NameClass */
/* NameFunctionMagic */
/* NameNamespace */
/* NameVariableClass */
/* Operator */
.chroma .k,
.chroma .kd,
.chroma .kn,
.chroma .kp,
.chroma .kr,
.chroma .nc,
.chroma .fm,
.chroma .nn,
.chroma .vc,
.chroma .o {
@apply text-primary-600 dark:text-primary-300;
}
/* KeywordConstant */ /* Background */ .bg { background-color:#fff; }
.chroma .kc { /* PreWrapper */ .chroma { background-color:#fff; }
@apply font-semibold text-secondary-400 dark:text-secondary-500; /* Error */ .chroma .err { color:#f6f8fa;background-color:#82071e }
/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
/* LineTable */ .chroma .lntable { border-spacing:0; }
/* LineHighlight */ .chroma .hl { background-color:#e5e5e5 }
/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f }
/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f }
/* Line */ .chroma .line { display:flex; }
/* Keyword */ .chroma .k { color:#cf222e }
/* KeywordConstant */ .chroma .kc { color:#cf222e }
/* KeywordDeclaration */ .chroma .kd { color:#cf222e }
/* KeywordNamespace */ .chroma .kn { color:#cf222e }
/* KeywordPseudo */ .chroma .kp { color:#cf222e }
/* KeywordReserved */ .chroma .kr { color:#cf222e }
/* KeywordType */ .chroma .kt { color:#cf222e }
/* NameAttribute */ .chroma .na { color:#1f2328 }
/* NameClass */ .chroma .nc { color:#1f2328 }
/* NameConstant */ .chroma .no { color:#0550ae }
/* NameDecorator */ .chroma .nd { color:#0550ae }
/* NameEntity */ .chroma .ni { color:#6639ba }
/* NameLabel */ .chroma .nl { color:#900;font-weight:bold }
/* NameNamespace */ .chroma .nn { color:#24292e }
/* NameOther */ .chroma .nx { color:#1f2328 }
/* NameTag */ .chroma .nt { color:#0550ae }
/* NameBuiltin */ .chroma .nb { color:#6639ba }
/* NameBuiltinPseudo */ .chroma .bp { color:#6a737d }
/* NameVariable */ .chroma .nv { color:#953800 }
/* NameVariableClass */ .chroma .vc { color:#953800 }
/* NameVariableGlobal */ .chroma .vg { color:#953800 }
/* NameVariableInstance */ .chroma .vi { color:#953800 }
/* NameVariableMagic */ .chroma .vm { color:#953800 }
/* NameFunction */ .chroma .nf { color:#6639ba }
/* NameFunctionMagic */ .chroma .fm { color:#6639ba }
/* LiteralString */ .chroma .s { color:#0a3069 }
/* LiteralStringAffix */ .chroma .sa { color:#0a3069 }
/* LiteralStringBacktick */ .chroma .sb { color:#0a3069 }
/* LiteralStringChar */ .chroma .sc { color:#0a3069 }
/* LiteralStringDelimiter */ .chroma .dl { color:#0a3069 }
/* LiteralStringDoc */ .chroma .sd { color:#0a3069 }
/* LiteralStringDouble */ .chroma .s2 { color:#0a3069 }
/* LiteralStringEscape */ .chroma .se { color:#0a3069 }
/* LiteralStringHeredoc */ .chroma .sh { color:#0a3069 }
/* LiteralStringInterpol */ .chroma .si { color:#0a3069 }
/* LiteralStringOther */ .chroma .sx { color:#0a3069 }
/* LiteralStringRegex */ .chroma .sr { color:#0a3069 }
/* LiteralStringSingle */ .chroma .s1 { color:#0a3069 }
/* LiteralStringSymbol */ .chroma .ss { color:#032f62 }
/* LiteralNumber */ .chroma .m { color:#0550ae }
/* LiteralNumberBin */ .chroma .mb { color:#0550ae }
/* LiteralNumberFloat */ .chroma .mf { color:#0550ae }
/* LiteralNumberHex */ .chroma .mh { color:#0550ae }
/* LiteralNumberInteger */ .chroma .mi { color:#0550ae }
/* LiteralNumberIntegerLong */ .chroma .il { color:#0550ae }
/* LiteralNumberOct */ .chroma .mo { color:#0550ae }
/* Operator */ .chroma .o { color:#0550ae }
/* OperatorWord */ .chroma .ow { color:#0550ae }
/* Punctuation */ .chroma .p { color:#1f2328 }
/* Comment */ .chroma .c { color:#57606a }
/* CommentHashbang */ .chroma .ch { color:#57606a }
/* CommentMultiline */ .chroma .cm { color:#57606a }
/* CommentSingle */ .chroma .c1 { color:#57606a }
/* CommentSpecial */ .chroma .cs { color:#57606a }
/* CommentPreproc */ .chroma .cp { color:#57606a }
/* CommentPreprocFile */ .chroma .cpf { color:#57606a }
/* GenericDeleted */ .chroma .gd { color:#82071e;background-color:#ffebe9 }
/* GenericEmph */ .chroma .ge { color:#1f2328 }
/* GenericInserted */ .chroma .gi { color:#116329;background-color:#dafbe1 }
/* GenericOutput */ .chroma .go { color:#1f2328 }
/* GenericUnderline */ .chroma .gl { text-decoration:underline }
/* TextWhitespace */ .chroma .w { color:#fff }
} }
html.dark {
/* Generated using: hugo gen chromastyles --style=github-dark */
/* KeywordType */ /* Background */ .bg { color:#e6edf3;background-color:#0d1117; }
/* NameVariable */ /* PreWrapper */ .chroma { color:#e6edf3;background-color:#0d1117; }
/* NameVariableInstance */ /* Error */ .chroma .err { color:#f85149 }
/* NameVariableMagic */ /* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
/* LiteralNumber */ /* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
/* LiteralNumberBin */ /* LineTable */ .chroma .lntable { border-spacing:0; }
/* LiteralNumberFloat */ /* LineHighlight */ .chroma .hl { background-color:#333 }
/* LiteralNumberHex */ /* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#737679 }
/* LiteralNumberInteger */ /* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#6e7681 }
/* LiteralNumberIntegerLong */ /* Line */ .chroma .line { display:flex; }
/* LiteralNumberOct */ /* Keyword */ .chroma .k { color:#ff7b72 }
.chroma .kt, /* KeywordConstant */ .chroma .kc { color:#79c0ff }
.chroma .nv, /* KeywordDeclaration */ .chroma .kd { color:#ff7b72 }
.chroma .vi, /* KeywordNamespace */ .chroma .kn { color:#ff7b72 }
.chroma .vm, /* KeywordPseudo */ .chroma .kp { color:#79c0ff }
.chroma .m, /* KeywordReserved */ .chroma .kr { color:#ff7b72 }
.chroma .mb, /* KeywordType */ .chroma .kt { color:#ff7b72 }
.chroma .mf, /* NameClass */ .chroma .nc { color:#f0883e;font-weight:bold }
.chroma .mh, /* NameConstant */ .chroma .no { color:#79c0ff;font-weight:bold }
.chroma .mi, /* NameDecorator */ .chroma .nd { color:#d2a8ff;font-weight:bold }
.chroma .il, /* NameEntity */ .chroma .ni { color:#ffa657 }
.chroma .mo { /* NameException */ .chroma .ne { color:#f0883e;font-weight:bold }
@apply text-secondary-400 dark:text-secondary-600; /* NameLabel */ .chroma .nl { color:#79c0ff;font-weight:bold }
} /* NameNamespace */ .chroma .nn { color:#ff7b72 }
/* NameProperty */ .chroma .py { color:#79c0ff }
/* Name */ /* NameTag */ .chroma .nt { color:#7ee787 }
/* NameDecorator */ /* NameVariable */ .chroma .nv { color:#79c0ff }
/* NameEntity */ /* NameVariableClass */ .chroma .vc { color:#79c0ff }
/* NameLabel */ /* NameVariableGlobal */ .chroma .vg { color:#79c0ff }
.chroma .n, /* NameVariableInstance */ .chroma .vi { color:#79c0ff }
.chroma .nd, /* NameVariableMagic */ .chroma .vm { color:#79c0ff }
.chroma .ni, /* NameFunction */ .chroma .nf { color:#d2a8ff;font-weight:bold }
.chroma .nl { /* NameFunctionMagic */ .chroma .fm { color:#d2a8ff;font-weight:bold }
@apply text-secondary-900 dark:text-secondary-200; /* Literal */ .chroma .l { color:#a5d6ff }
} /* LiteralDate */ .chroma .ld { color:#79c0ff }
/* LiteralString */ .chroma .s { color:#a5d6ff }
/* NameAttribute */ /* LiteralStringAffix */ .chroma .sa { color:#79c0ff }
/* NameBuiltin */ /* LiteralStringBacktick */ .chroma .sb { color:#a5d6ff }
/* NameBuiltinPseudo */ /* LiteralStringChar */ .chroma .sc { color:#a5d6ff }
/* NameOther */ /* LiteralStringDelimiter */ .chroma .dl { color:#79c0ff }
/* NameProperty */ /* LiteralStringDoc */ .chroma .sd { color:#a5d6ff }
/* NameTag */ /* LiteralStringDouble */ .chroma .s2 { color:#a5d6ff }
.chroma .na, /* LiteralStringEscape */ .chroma .se { color:#79c0ff }
.chroma .nb, /* LiteralStringHeredoc */ .chroma .sh { color:#79c0ff }
.chroma .bp, /* LiteralStringInterpol */ .chroma .si { color:#a5d6ff }
.chroma .nx, /* LiteralStringOther */ .chroma .sx { color:#a5d6ff }
.chroma .py, /* LiteralStringRegex */ .chroma .sr { color:#79c0ff }
.chroma .nt { /* LiteralStringSingle */ .chroma .s1 { color:#a5d6ff }
@apply text-secondary-800 dark:text-secondary-300; /* LiteralStringSymbol */ .chroma .ss { color:#a5d6ff }
} /* LiteralNumber */ .chroma .m { color:#a5d6ff }
/* LiteralNumberBin */ .chroma .mb { color:#a5d6ff }
/* NameConstant */ /* LiteralNumberFloat */ .chroma .mf { color:#a5d6ff }
/* NameException */ /* LiteralNumberHex */ .chroma .mh { color:#a5d6ff }
/* NameVariableGlobal */ /* LiteralNumberInteger */ .chroma .mi { color:#a5d6ff }
.chroma .no, /* LiteralNumberIntegerLong */ .chroma .il { color:#a5d6ff }
.chroma .ne, /* LiteralNumberOct */ .chroma .mo { color:#a5d6ff }
.chroma .vg { /* Operator */ .chroma .o { color:#ff7b72;font-weight:bold }
@apply font-semibold text-secondary-400 dark:text-secondary-500; /* OperatorWord */ .chroma .ow { color:#ff7b72;font-weight:bold }
} /* Comment */ .chroma .c { color:#8b949e;font-style:italic }
/* CommentHashbang */ .chroma .ch { color:#8b949e;font-style:italic }
/* NameFunction */ /* CommentMultiline */ .chroma .cm { color:#8b949e;font-style:italic }
.chroma .nf { /* CommentSingle */ .chroma .c1 { color:#8b949e;font-style:italic }
@apply text-secondary-600 dark:text-secondary-500; /* CommentSpecial */ .chroma .cs { color:#8b949e;font-weight:bold;font-style:italic }
} /* CommentPreproc */ .chroma .cp { color:#8b949e;font-weight:bold;font-style:italic }
/* CommentPreprocFile */ .chroma .cpf { color:#8b949e;font-weight:bold;font-style:italic }
/* Literal */ /* GenericDeleted */ .chroma .gd { color:#ffa198;background-color:#490202 }
/* LiteralDate */ /* GenericEmph */ .chroma .ge { font-style:italic }
/* LiteralString */ /* GenericError */ .chroma .gr { color:#ffa198 }
/* LiteralStringAffix */ /* GenericHeading */ .chroma .gh { color:#79c0ff;font-weight:bold }
/* LiteralStringBacktick */ /* GenericInserted */ .chroma .gi { color:#56d364;background-color:#0f5323 }
/* LiteralStringChar */ /* GenericOutput */ .chroma .go { color:#8b949e }
/* LiteralStringDelimiter */ /* GenericPrompt */ .chroma .gp { color:#8b949e }
/* LiteralStringDoc */ /* GenericStrong */ .chroma .gs { font-weight:bold }
/* LiteralStringDouble */ /* GenericSubheading */ .chroma .gu { color:#79c0ff }
/* LiteralStringHeredoc */ /* GenericTraceback */ .chroma .gt { color:#ff7b72 }
/* LiteralStringInterpol */ /* GenericUnderline */ .chroma .gl { text-decoration:underline }
/* LiteralStringOther */ /* TextWhitespace */ .chroma .w { color:#6e7681 }
/* LiteralStringSingle */
/* GenericInserted */
/* GenericOutput */
/* GenericPrompt */
.chroma .l,
.chroma .ld,
.chroma .s,
.chroma .sa,
.chroma .sb,
.chroma .sc,
.chroma .dl,
.chroma .sd,
.chroma .s2,
.chroma .sh,
.chroma .si,
.chroma .sx,
.chroma .s1,
.chroma .gi,
.chroma .go,
.chroma .gp {
@apply text-primary-800 dark:text-primary-400;
}
/* LiteralStringEscape */
.chroma .se {
@apply font-semibold text-secondary-400 dark:text-secondary-500;
}
/* LiteralStringRegex */
/* LiteralStringSymbol */
.chroma .sr,
.chroma .ss {
@apply font-semibold text-primary-800 dark:text-primary-400;
}
/* OperatorWord */
.chroma .ow {
@apply font-semibold text-primary-400 dark:text-primary-600;
}
/* Comment */
/* CommentMultiline */
/* CommentSingle */
/* CommentSpecial */
/* CommentPreproc */
/* CommentPreprocFile */
.chroma .c,
.chroma .cm,
.chroma .c1,
.chroma .cs,
.chroma .cp,
.chroma .cpf {
@apply italic text-neutral-500 dark:text-neutral-400;
}
/* CommentHashbang */
.chroma .ch {
@apply italic font-semibold text-neutral-500 dark:text-neutral-400;
}
/* GenericEmph */
.chroma .ge {
@apply italic;
}
/* GenericHeading */
.chroma .gh {
@apply font-semibold text-neutral-500;
}
/* GenericStrong */
.chroma .gs {
@apply font-semibold;
}
/* GenericSubheading */
/* GenericTraceback */
.chroma .gu,
.chroma .gt {
@apply text-neutral-500;
}
/* GenericUnderline */
.chroma .gl {
@apply underline;
} }

View File

@@ -7,6 +7,10 @@
@import "./components/zen-mode.css"; @import "./components/zen-mode.css";
@import "./components/a11y.css"; @import "./components/a11y.css";
html.dark {
color-scheme: dark;
}
body a, body a,
body button { body button {
@apply transition-colors; @apply transition-colors;
@@ -82,7 +86,7 @@ button,
} }
.toc a { .toc a {
@apply font-normal text-neutral-700 dark:text-neutral-400; @apply font-normal text-neutral-700 dark:text-neutral-300;
} }
.toc ul > li { .toc ul > li {

View File

@@ -126,7 +126,7 @@ Simply by changing this one value, all the font sizes on your website will be ad
### Changing Syntax Highlighting Theme ### Changing Syntax Highlighting Theme
Blowfish uses a custom syntax highlighting style, with colors defined in `assets/css/schemes`. To change the syntax highlighting theme, create `assets/css/custom.css` and add the following: To change the syntax highlighting theme, create `assets/css/custom.css` and add the following:
```css ```css
.chroma, .chroma,

View File

@@ -127,7 +127,7 @@ html {
### シンタックスハイライトテーマの変更 ### シンタックスハイライトテーマの変更
Blowfish はカスタム構文ハイライトスタイルを使用しており、色は `assets/css/schemes` に定義されています。構文ハイライトテーマを変更するには、`assets/css/custom.css` を作成し、次の内容を追加してください: 構文ハイライトテーマを変更するには、`assets/css/custom.css` を作成し、次の内容を追加してください:
```css ```css
.chroma, .chroma,

View File

@@ -126,7 +126,7 @@ Simply by changing this one value, all the font sizes on your website will be ad
### Changing Syntax Highlighting Theme ### Changing Syntax Highlighting Theme
Blowfish uses a custom syntax highlighting style, with colors defined in `assets/css/schemes`. To change the syntax highlighting theme, create `assets/css/custom.css` and add the following: To change the syntax highlighting theme, create `assets/css/custom.css` and add the following:
```css ```css
.chroma, .chroma,

View File

@@ -125,7 +125,7 @@ html {
### 更换语法高亮主题 ### 更换语法高亮主题
Blowfish 使用自定义的语法高亮样式,颜色定义在 `assets/css/schemes` 中。要更换语法高亮主题,请创建 `assets/css/custom.css`,然后添加以下内容: 要更换语法高亮主题,请创建 `assets/css/custom.css`,然后添加以下内容:
```css ```css
.chroma, .chroma,

View File

@@ -18,7 +18,7 @@
{{ $cardContentClasses := "" }} {{ $cardContentClasses := "" }}
{{ if site.Params.list.showCards }} {{ if site.Params.list.showCards }}
{{ $cardClasses = printf "%s overflow-hidden rounded-md border-2 border-neutral-200 dark:border-neutral-700" $cardClasses }} {{ $cardClasses = printf "%s overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600" $cardClasses }}
{{ $imgWrapperClasses = "" }} {{ $imgWrapperClasses = "" }}
{{ $cardContentClasses = printf "%s p-4 pt-2" $cardContentClasses }} {{ $cardContentClasses = printf "%s p-4 pt-2" $cardContentClasses }}
{{ else }} {{ else }}
@@ -85,7 +85,7 @@
<div class="flex-none relative overflow-hidden {{ $imgWrapperClasses }} thumbnail"> <div class="flex-none relative overflow-hidden {{ $imgWrapperClasses }} thumbnail">
<img <img
src="{{ . }}" src="{{ . }}"
alt="{{ with $target.Params.featuredImageAlt }}{{ . }}{{ else }}{{ $target.Title | emojify }}{{ end }}" role="presentation"
loading="lazy" loading="lazy"
decoding="async" decoding="async"
class="not-prose absolute inset-0 w-full h-full object-cover"> class="not-prose absolute inset-0 w-full h-full object-cover">

View File

@@ -51,12 +51,12 @@
<article <article
class="relative min-h-full min-w-full overflow-hidden rounded border border-2 border-neutral-200 shadow-2xl dark:border-neutral-700"> class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600">
{{ with $featuredURL }} {{ with $featuredURL }}
<div class="flex-none relative overflow-hidden thumbnail_card_related"> <div class="flex-none relative overflow-hidden thumbnail_card_related">
<img <img
src="{{ . }}" src="{{ . }}"
alt="{{ $page.Title }}" role="presentation"
loading="lazy" loading="lazy"
decoding="async" decoding="async"
fetchpriority="low" fetchpriority="low"
@@ -68,7 +68,7 @@
{{ partial "badge.html" (i18n "article.draft" | emojify) }} {{ partial "badge.html" (i18n "article.draft" | emojify) }}
</span> </span>
{{ end }} {{ end }}
<div class="px-6 py-4"> <div class="p-4">
<header> <header>
<a <a
{{ with $page.Params.externalUrl }} {{ with $page.Params.externalUrl }}

View File

@@ -55,12 +55,12 @@
<article <article
class="relative min-h-full min-w-full overflow-hidden rounded border border-2 border-neutral-200 shadow-2xl dark:border-neutral-700"> class="relative min-h-full min-w-full overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600">
{{ with $featuredURL }} {{ with $featuredURL }}
<div class="flex-none relative overflow-hidden thumbnail_card"> <div class="flex-none relative overflow-hidden thumbnail_card">
<img <img
src="{{ . }}" src="{{ . }}"
alt="{{ $page.Title | plainify }}" role="presentation"
loading="lazy" loading="lazy"
decoding="async" decoding="async"
class="not-prose absolute inset-0 w-full h-full object-cover"> class="not-prose absolute inset-0 w-full h-full object-cover">
@@ -71,7 +71,7 @@
{{ partial "badge.html" (i18n "article.draft" | emojify) }} {{ partial "badge.html" (i18n "article.draft" | emojify) }}
</span> </span>
{{ end }} {{ end }}
<div class="px-6 py-4"> <div class="p-4">
<header> <header>
<a <a
{{ with $page.Params.externalUrl }} {{ with $page.Params.externalUrl }}

View File

@@ -11,7 +11,7 @@
{{ $cardContentClasses := "" }} {{ $cardContentClasses := "" }}
{{ if site.Params.list.showCards }} {{ if site.Params.list.showCards }}
{{ $cardClasses = printf "%s overflow-hidden rounded-md border-2 border-neutral-200 dark:border-neutral-700" $cardClasses }} {{ $cardClasses = printf "%s overflow-hidden rounded-lg border border-neutral-300 dark:border-neutral-600" $cardClasses }}
{{ $imgWrapperClasses = "" }} {{ $imgWrapperClasses = "" }}
{{ $cardContentClasses = printf "%s p-4" $cardContentClasses }} {{ $cardContentClasses = printf "%s p-4" $cardContentClasses }}
{{ else }} {{ else }}
@@ -78,7 +78,7 @@
<div class="flex-none relative overflow-hidden {{ $imgWrapperClasses }} thumbnail"> <div class="flex-none relative overflow-hidden {{ $imgWrapperClasses }} thumbnail">
<img <img
src="{{ . }}" src="{{ . }}"
alt="{{ $.Params.featuredImageAlt | default ($.Title | emojify) }}" role="presentation"
loading="lazy" loading="lazy"
decoding="async" decoding="async"
class="not-prose absolute inset-0 w-full h-full object-cover"> class="not-prose absolute inset-0 w-full h-full object-cover">

View File

@@ -69,7 +69,7 @@
<img <img
id="background-image" id="background-image"
src="{{ . }}" src="{{ . }}"
alt="{{ $.Title }}" role="presentation"
loading="eager" loading="eager"
decoding="async" decoding="async"
fetchpriority="high" fetchpriority="high"
@@ -84,7 +84,7 @@
{{ if $shouldBlur | default false }} {{ if $shouldBlur | default false }}
<div <div
id="background-blur" id="background-blur"
class="fixed opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-2xl"></div> class="fixed opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-xl bg-neutral-100/75 dark:bg-neutral-800/60"></div>
{{ $backgroundBlur := resources.Get "js/background-blur.js" }} {{ $backgroundBlur := resources.Get "js/background-blur.js" }}
{{ $backgroundBlur = $backgroundBlur | resources.Minify | resources.Fingerprint ($.Site.Params.fingerprintAlgorithm | default "sha512") }} {{ $backgroundBlur = $backgroundBlur | resources.Minify | resources.Fingerprint ($.Site.Params.fingerprintAlgorithm | default "sha512") }}
<script <script

View File

@@ -53,7 +53,7 @@
<div class="overflow-hidden h-36 md:h-56 lg:h-72"> <div class="overflow-hidden h-36 md:h-56 lg:h-72">
<img <img
src="{{ . }}" src="{{ . }}"
alt="{{ with $.Params.featureimagealt }}{{ . }}{{ else }}{{ with $.Title }}Featured image for {{ . }}{{ else }}Featured image{{ end }}{{ end }}" role="presentation"
loading="eager" loading="eager"
decoding="async" decoding="async"
fetchpriority="high" fetchpriority="high"

View File

@@ -87,7 +87,7 @@
<div class="overflow-hidden rounded-md h-36 md:h-56 lg:h-72 nozoom"> <div class="overflow-hidden rounded-md h-36 md:h-56 lg:h-72 nozoom">
<img <img
src="{{ . }}" src="{{ . }}"
alt="{{ $.Title }}" role="presentation"
loading="eager" loading="eager"
decoding="async" decoding="async"
fetchpriority="high" fetchpriority="high"
@@ -107,7 +107,6 @@
<img <img
id="background-image-main" id="background-image-main"
src="{{ . }}" src="{{ . }}"
alt=""
role="presentation" role="presentation"
loading="eager" loading="eager"
decoding="async" decoding="async"
@@ -124,7 +123,7 @@
{{ if $shouldBlur | default false }} {{ if $shouldBlur | default false }}
<div <div
id="background-blur" id="background-blur"
class="fixed opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-2xl"></div> class="fixed opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-xl bg-neutral-100/75 dark:bg-neutral-800/60"></div>
{{ $backgroundBlur := resources.Get "js/background-blur.js" }} {{ $backgroundBlur := resources.Get "js/background-blur.js" }}
{{ $backgroundBlur = $backgroundBlur | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }} {{ $backgroundBlur = $backgroundBlur | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }}
<script <script

View File

@@ -105,7 +105,7 @@
{{ if .Site.Params.homepage.layoutBackgroundBlur | default false }} {{ if .Site.Params.homepage.layoutBackgroundBlur | default false }}
<div <div
id="background-blur" id="background-blur"
class="fixed opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-2xl"></div> class="fixed opacity-0 inset-x-0 top-0 h-full single_hero_background nozoom backdrop-blur-xl bg-neutral-100/75 dark:bg-neutral-800/60"></div>
{{ $backgroundBlur := resources.Get "js/background-blur.js" }} {{ $backgroundBlur := resources.Get "js/background-blur.js" }}
{{ $backgroundBlur = $backgroundBlur | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }} {{ $backgroundBlur = $backgroundBlur | resources.Minify | resources.Fingerprint (.Site.Params.fingerprintAlgorithm | default "sha512") }}
<script <script

View File

@@ -68,9 +68,8 @@ module.exports = {
"--tw-prose-bold": theme("colors.neutral.900 / 1"), "--tw-prose-bold": theme("colors.neutral.900 / 1"),
"--tw-prose-counters": theme("colors.neutral.800 / 1"), "--tw-prose-counters": theme("colors.neutral.800 / 1"),
"--tw-prose-bullets": theme("colors.neutral.500 / 1"), "--tw-prose-bullets": theme("colors.neutral.500 / 1"),
"--tw-prose-hr": theme("colors.neutral.200 / 1"),
"--tw-prose-quotes": theme("colors.neutral.700 / 1"), "--tw-prose-quotes": theme("colors.neutral.700 / 1"),
"--tw-prose-quote-borders": theme("colors.primary.200 / 1"), "--tw-prose-quote-borders": theme("colors.primary.500 / 1"),
"--tw-prose-captions": theme("colors.neutral.500 / 1"), "--tw-prose-captions": theme("colors.neutral.500 / 1"),
"--tw-prose-code": theme("colors.secondary.700 / 1"), "--tw-prose-code": theme("colors.secondary.700 / 1"),
"--tw-prose-pre-code": theme("colors.neutral.700 / 1"), "--tw-prose-pre-code": theme("colors.neutral.700 / 1"),
@@ -84,9 +83,8 @@ module.exports = {
"--tw-prose-invert-bold": theme("colors.neutral.DEFAULT / 1"), "--tw-prose-invert-bold": theme("colors.neutral.DEFAULT / 1"),
"--tw-prose-invert-counters": theme("colors.neutral.400 / 1"), "--tw-prose-invert-counters": theme("colors.neutral.400 / 1"),
"--tw-prose-invert-bullets": theme("colors.neutral.600 / 1"), "--tw-prose-invert-bullets": theme("colors.neutral.600 / 1"),
"--tw-prose-invert-hr": theme("colors.neutral.500 / 1"),
"--tw-prose-invert-quotes": theme("colors.neutral.200 / 1"), "--tw-prose-invert-quotes": theme("colors.neutral.200 / 1"),
"--tw-prose-invert-quote-borders": theme("colors.primary.900 / 1"), "--tw-prose-invert-quote-borders": theme("colors.primary.600 / 1"),
"--tw-prose-invert-captions": theme("colors.neutral.400 / 1"), "--tw-prose-invert-captions": theme("colors.neutral.400 / 1"),
"--tw-prose-invert-code": theme("colors.secondary.400 / 1"), "--tw-prose-invert-code": theme("colors.secondary.400 / 1"),
"--tw-prose-invert-pre-code": theme("colors.neutral.200 / 1"), "--tw-prose-invert-pre-code": theme("colors.neutral.200 / 1"),
@@ -106,6 +104,9 @@ module.exports = {
"a code": { "a code": {
color: "var(--tw-prose-code)", color: "var(--tw-prose-code)",
}, },
hr: {
border: '0.8px solid theme("colors.neutral.300 / 1")',
},
kbd: { kbd: {
backgroundColor: theme("colors.neutral.200 / 1"), backgroundColor: theme("colors.neutral.200 / 1"),
padding: "0.1rem 0.4rem", padding: "0.1rem 0.4rem",
@@ -120,7 +121,6 @@ module.exports = {
borderRadius: "0.25rem", borderRadius: "0.25rem",
}, },
code: { code: {
backgroundColor: theme("colors.neutral.50 / 1"),
paddingTop: "3px", paddingTop: "3px",
paddingBottom: "3px", paddingBottom: "3px",
paddingLeft: "5px", paddingLeft: "5px",
@@ -162,8 +162,8 @@ module.exports = {
mark: { mark: {
backgroundColor: theme("colors.primary.400 / 1"), backgroundColor: theme("colors.primary.400 / 1"),
}, },
code: { "code:not(pre code)": {
backgroundColor: theme("colors.neutral.700 / 1"), backgroundColor: theme("colors.zinc.900 / 0.7"),
}, },
"a.active": { "a.active": {
"text-decoration-color": theme("colors.primary.400 / 1"), "text-decoration-color": theme("colors.primary.400 / 1"),
@@ -171,6 +171,9 @@ module.exports = {
"p.active": { "p.active": {
"text-decoration-color": theme("colors.primary.400 / 1"), "text-decoration-color": theme("colors.primary.400 / 1"),
}, },
hr: {
border: '0.8px solid theme("colors.neutral.500 / 1")',
},
}, },
}, },
}), }),