My current theme is based on the stock Thoughts theme, slightly modified to use Catppuccin Macchiato color palette. It's still a WIP (and will always be TBH). Feel free to use it if and however you want.
Credits:
- Sylvia's upvote button
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital, wght@0 ;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&family=IBM+Plex+Sans+Thai+Looped: wght@100 ;200;300;400;500;600;700&family=IBM+Plex+Serif: ital, wght@0 ;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&display=swap');
:root {
--width: 820px;
--font-main: 'IBM Plex Serif', serif;
--font-secondary: 'IBM Plex Mono', 'IBM Plex Sans Thai Looped', monospace;
--font-scale: 1em;
--background-color: #fff;
--heading-color: #000000;
--text-color: #000000;
--link-color: #000000;
--visited-color: rgba(0, 0, 0, 0.8);
--code-background-color: #f2f2f2;
--code-color: #222;
--blockquote-color: #222;
}
@media (prefers-color-scheme: dark) {
:root {
--background-color: #24273a;
--heading-color: #cad3f5;
--text-color: #cad3f5;
--link-color: #8caaee;
--visited-color: #a5adcb;
--code-background-color: #000;
--code-color: #ddd;
--blockquote-color: #ccc;
}
header,
footer {
border-color: #c6d0f5 !important;
}
}
body {
font-family: var(--font-secondary);
font-size: var(--font-scale);
margin: auto;
padding: 20px;
max-width: var(--width);
text-align: left;
background-color: var(--background-color);
word-wrap: break-word;
overflow-wrap: break-word;
line-height: 1.5;
color: var(--text-color);
}
h1 {
font-family: var(--font-main);
color: var(--heading-color);
font-style: italic;
font-weight: 400;
}
h2,
h3,
h4,
h5,
h6 {
font-family: var(--font-main);
font-weight: 400;
color: var(--heading-color);
}
a {
color: var(--link-color);
cursor: pointer;
text-decoration: none;
transition: 0.3s;
}
a:hover {
text-decoration: underline dotted auto;
}
header {
border-bottom: 2px solid #000000;
margin-bottom: 40px;
display: flex;
align-items: center;
justify-content: space-between;
}
nav {
text-align: right;
}
nav a {
margin-right: 8px;
}
nav a:last-child {
margin-right: 0px;
}
strong,
b {
color: var(--heading-color);
}
button {
margin: 0;
cursor: pointer;
}
main {
line-height: 1.6;
}
table {
width: 100%;
}
hr {
border: 0;
border-top: 1px dashed;
}
img {
max-width: 100%;
}
code {
font-family: monospace;
padding: 2px;
background-color: var(--code-background-color);
color: var(--code-color);
border-radius: 3px;
}
blockquote {
border-left: 2px solid #000000;
color: var(--code-color);
padding-left: 20px;
font-style: italic;
}
footer {
padding: 25px 0;
text-align: center;
border-top: 2px solid #000000;
margin-top: 40px;
}
.title:hover {
text-decoration: none;
background: transparent;
}
.title h1 {
font-size: 2em;
font-family: 'IBM Plex Serif', serif;
font-weight: 300;
}
.inline {
width: auto !important;
}
.highlight,
.code {
padding: 1px 15px;
background-color: var(--code-background-color);
color: var(--code-color);
border-radius: 3px;
margin-block-start: 1em;
margin-block-end: 1em;
overflow-x: auto;
}
time {
font-style: normal;
}
ul.embedded.blog-posts {
padding: unset;
}
ul.blog-posts > li {
display: flex;
flex-direction: row-reverse;
justify-content: space-between;
align-items: flex-end; /* This matters when the font sizes for title and date are different, but otherwise can be deleted */
margin: 1.8em 0;
border-bottom: 1px dotted var(--text-color);
}
ul.blog-posts > li > span + a,
ul.blog-posts > li > span:has(> i time) {
margin-bottom: -5px; /* Brings the dotted line up to baseline */
background-color: var(--background-color); /* Background color hides the dots behind text, change to your background color */
}
ul.blog-posts > li > span:has(> i time) {
white-space: nowrap;
padding-left: .3em;
}
ul.blog-posts > li > span + a {
padding-right: .3em;
}
@media (max-width: 520px) {
.blog-posts li {
flex-wrap: wrap;
gap: 0.2rem 0.75rem;
padding-block: 0.9rem 0.5rem;
}
.blog-posts li + li {
margin-block-start: 0;
border-top: 1px solid var(--border);
}
.blog-posts li::before {
display: none;
}
.blog-posts li a {
flex: 1 1 100%;
white-space: normal;
overflow: visible;
text-overflow: clip;
}
.blog-posts li > span {
margin-left: 0;
}
.blog-posts time {
display: block;
font-size: 0.9em;
opacity: 0.85;
white-space: nowrap;
}
}
@media only screen and (max-width:767px) {
header {
flex-wrap: wrap;
}
.title h1 {
font-size: 1.6em;
}
nav {
text-align: left;
}
}
/*toast button*/
.upvote-button svg {
display: none;
}
.upvote-button {
display: block !important;
font-size: 1rem;
}
.upvote-button[disabled] {
color: var(--text-color) !important;
}
.upvote-count {
font-size: inherit;
}
.upvote-button::before {
content: "š¤";
cursor: pointer;
}
.upvote-button:hover::before {
content: "ā¤ļø";
cursor: pointer;
}
.upvote-button[disabled]::before {
content: "š";
cursor: default;
}
.upvote-count::after {
content: " āĖā©ā¹";
background: var(--gradient);
color: var(--text-color);
background-clip: text;
}