/* ==UserStyle==
@name Hacker News Catppuccin
@namespace github.com/catppuccin/userstyles/styles/hacker-news
@homepageURL https://github.com/catppuccin/userstyles/tree/main/styles/hacker-news
@version 2025.09.06
@updateURL https://github.com/catppuccin/userstyles/raw/main/styles/hacker-news/catppuccin.user.less
@supportURL https://github.com/catppuccin/userstyles/issues?q=is%3Aopen+is%3Aissue+label%3Ahacker-news
@description Soothing pastel theme for Hacker News
@author Catppuccin
@license MIT
@preprocessor less
@var select lightFlavor "Light Flavor" ["latte:Latte*", "frappe:Frappé", "macchiato:Macchiato", "mocha:Mocha"]
@var select darkFlavor "Dark Flavor" ["latte:Latte", "frappe:Frappé", "macchiato:Macchiato", "mocha:Mocha*"]
@var select accentColor "Accent" ["rosewater:Rosewater", "flamingo:Flamingo", "pink:Pink", "mauve:Mauve*", "red:Red", "maroon:Maroon", "peach:Peach", "yellow:Yellow", "green:Green", "teal:Teal", "blue:Blue", "sapphire:Sapphire", "sky:Sky", "lavender:Lavender", "subtext0:Gray"]
==/UserStyle== */
@import "https://userstyles.catppuccin.com/lib/lib.less";
@-moz-document domain("news.ycombinator.com") {
:root {
@media (prefers-color-scheme: light) {
#catppuccin(@lightFlavor);
}
@media (prefers-color-scheme: dark) {
#catppuccin(@darkFlavor);
}
}
#catppuccin(@flavor) {
#lib.palette();
#lib.defaults();
[bgcolor="#fafaf0"],
[bgcolor="#f6f6ef"] {
background-color: @base;
}
body {
background-color: @mantle;
color: @text;
}
td {
color: @text;
}
/* Header */
td[bgcolor="#ff6600"] {
background-color: @accent;
.pagetop,
.pagetop a {
color: @crust !important;
}
img[src="y18.svg"] {
@svg: escape(
''
);
content: url("data:image/svg+xml,@{svg}");
border-color: @crust !important;
}
[color="#ffffff"] {
color: @crust;
}
}
td[bgcolor="#ffffaa"] {
background-color: @yellow;
td {
color: @crust;
}
}
.subtext,
.comhead {
&,
a:link,
a:visited,
a:hover {
color: @overlay2 !important;
}
}
a:link {
color: @blue;
&:hover {
color: @sky;
}
}
.hnmore a:link,
a:visited {
color: @lavender;
}
[color="#3c963c"] {
color: @green;
}
/* Story points */
.score {
color: @subtext0;
}
/* Story ranking number */
.title {
color: @lavender;
}
/* Comment text */
.commtext {
color: @text;
}
/* Comment box */
input,
textarea,
select {
background-color: @mantle;
color: @text;
border-width: 1px;
border-style: solid;
border-color: @surface0;
border-radius: 2px;
}
input {
padding: 2px;
}
/* Poll questions */
td.comment > div > font {
color: @text;
}
/* Text post content */
.toptext {
color: @text;
}
.votearrow {
@svg: escape(
''
);
background-image: url("data:image/svg+xml,@{svg}");
}
.yclinks {
color: @surface2;
}
b {
color: @text;
}
table[bgcolor="#ff6600"] {
background-color: @accent;
}
}
}