512 lines
12 KiB
CSS
512 lines
12 KiB
CSS
/* ==UserStyle==
|
|
@name NixOS Search Catppuccin
|
|
@namespace github.com/catppuccin/userstyles/nixos-search
|
|
@homepageURL https://github.com/catppuccin/userstyles/tree/main/styles/nixos-search
|
|
@version 0.3.0
|
|
@description Soothing pastel theme for NixOS Search
|
|
@author Catppuccin
|
|
@updateURL https://github.com/catppuccin/userstyles/raw/main/styles/nixos-search/catppuccin.user.css
|
|
@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== */
|
|
@-moz-document domain("search.nixos.org") {
|
|
@media (prefers-color-scheme: light) {
|
|
#catppuccin(@lightFlavor, @accentColor);
|
|
}
|
|
|
|
@media (prefers-color-scheme: dark) {
|
|
#catppuccin(@darkFlavor, @accentColor);
|
|
}
|
|
|
|
#catppuccin(@lookup, @accent) {
|
|
@rosewater: @catppuccin[@@lookup][@rosewater];
|
|
@flamingo: @catppuccin[@@lookup][@flamingo];
|
|
@pink: @catppuccin[@@lookup][@pink];
|
|
@mauve: @catppuccin[@@lookup][@mauve];
|
|
@red: @catppuccin[@@lookup][@red];
|
|
@maroon: @catppuccin[@@lookup][@maroon];
|
|
@peach: @catppuccin[@@lookup][@peach];
|
|
@yellow: @catppuccin[@@lookup][@yellow];
|
|
@green: @catppuccin[@@lookup][@green];
|
|
@teal: @catppuccin[@@lookup][@teal];
|
|
@sky: @catppuccin[@@lookup][@sky];
|
|
@sapphire: @catppuccin[@@lookup][@sapphire];
|
|
@blue: @catppuccin[@@lookup][@blue];
|
|
@lavender: @catppuccin[@@lookup][@lavender];
|
|
@text: @catppuccin[@@lookup][@text];
|
|
@subtext1: @catppuccin[@@lookup][@subtext1];
|
|
@subtext0: @catppuccin[@@lookup][@subtext0];
|
|
@overlay2: @catppuccin[@@lookup][@overlay2];
|
|
@overlay1: @catppuccin[@@lookup][@overlay1];
|
|
@overlay0: @catppuccin[@@lookup][@overlay0];
|
|
@surface2: @catppuccin[@@lookup][@surface2];
|
|
@surface1: @catppuccin[@@lookup][@surface1];
|
|
@surface0: @catppuccin[@@lookup][@surface0];
|
|
@base: @catppuccin[@@lookup][@base];
|
|
@mantle: @catppuccin[@@lookup][@mantle];
|
|
@crust: @catppuccin[@@lookup][@crust];
|
|
@accent-color: @catppuccin[@@lookup][@@accent];
|
|
|
|
/* Generic */
|
|
html,
|
|
body {
|
|
background-color: @base;
|
|
color: @text;
|
|
}
|
|
|
|
code,
|
|
pre {
|
|
color: @red;
|
|
background-color: @surface0;
|
|
border: none;
|
|
}
|
|
|
|
a,
|
|
a:hover,
|
|
a:focus {
|
|
color: @accent-color;
|
|
outline: none;
|
|
}
|
|
|
|
/* Navbar */
|
|
.navbar .navbar-static-top {
|
|
background-color: @mantle;
|
|
}
|
|
|
|
.navbar-inner {
|
|
background-color: @mantle;
|
|
background-image: none;
|
|
border: 1px solid @base;
|
|
}
|
|
|
|
.nav-tabs {
|
|
border-bottom: 1px solid @surface0;
|
|
}
|
|
|
|
.nav-tabs > .active > a,
|
|
.nav-tabs > .active > a:hover,
|
|
.nav-tabs > .active > a:focus {
|
|
background-color: @base;
|
|
border: 1px solid @surface0;
|
|
color: @text;
|
|
}
|
|
|
|
.navbar .nav > li > a {
|
|
text-shadow: none;
|
|
color: @subtext0;
|
|
}
|
|
|
|
.navbar .nav > li > a:focus,
|
|
.navbar .nav > li > a:hover {
|
|
color: @text;
|
|
border: none;
|
|
}
|
|
|
|
.navbar .nav > .active > a,
|
|
.navbar .nav > .active > a:hover,
|
|
.navbar .nav > .active > a:focus {
|
|
background-color: @surface0;
|
|
color: @text;
|
|
}
|
|
|
|
/* Installation instructions tabs */
|
|
.nav > li > a:hover,
|
|
.nav > li > a:focus {
|
|
background-color: @surface0;
|
|
border: 1px solid @surface0;
|
|
}
|
|
|
|
/* "Experimental" label */
|
|
.label,
|
|
.badge {
|
|
background-color: @accent-color;
|
|
color: @crust;
|
|
text-shadow: none;
|
|
}
|
|
|
|
/* Buttons */
|
|
.btn {
|
|
background-color: @surface0;
|
|
background-image: none;
|
|
text-shadow: none;
|
|
box-shadow: none;
|
|
color: @text;
|
|
border: 1px solid @base;
|
|
}
|
|
|
|
.btn:focus {
|
|
outline: none;
|
|
color: @text;
|
|
background-color: @surface1;
|
|
}
|
|
|
|
.btn:hover,
|
|
.btn:active,
|
|
.btn.active,
|
|
.btn.disabled,
|
|
.btn[disabled] {
|
|
background-color: @surface1;
|
|
color: @text;
|
|
}
|
|
|
|
/* "Sort" menu */
|
|
.dropdown-menu {
|
|
background-color: @mantle;
|
|
border: 1px solid @crust;
|
|
box-shadow: 0 5px 10px @mantle;
|
|
}
|
|
|
|
.dropdown-menu > li > a {
|
|
color: @text;
|
|
}
|
|
|
|
.dropdown-menu > li > a:hover,
|
|
.dropdown-menu > li > a:focus,
|
|
.dropdown-submenu:hover > a,
|
|
.dropdown-submenu:focus > a {
|
|
background-color: @surface0;
|
|
background-image: none;
|
|
}
|
|
|
|
.dropdown-menu .divider {
|
|
background-color: @surface0;
|
|
border-bottom: @surface0;
|
|
}
|
|
|
|
.dropdown .caret {
|
|
border-top: 4px solid @text;
|
|
}
|
|
|
|
/* Overrides menu item hover color */
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :first-child
|
|
> div:first-child
|
|
> ul
|
|
> li
|
|
> a {
|
|
color: @text;
|
|
}
|
|
|
|
/* Loading indicator */
|
|
.loader {
|
|
color: @crust;
|
|
}
|
|
|
|
/* Input box */
|
|
textarea,
|
|
input[type="text"],
|
|
input[type="password"],
|
|
input[type="datetime"],
|
|
input[type="datetime-local"],
|
|
input[type="date"],
|
|
input[type="month"],
|
|
input[type="time"],
|
|
input[type="week"],
|
|
input[type="number"],
|
|
input[type="email"],
|
|
input[type="url"],
|
|
input[type="search"],
|
|
input[type="tel"],
|
|
input[type="color"],
|
|
.uneditable-input {
|
|
background-color: @surface0;
|
|
color: @text;
|
|
border: 1px solid @base;
|
|
}
|
|
|
|
textarea:focus,
|
|
input[type="text"]:focus,
|
|
input[type="password"]:focus,
|
|
input[type="datetime"]:focus,
|
|
input[type="datetime-local"]:focus,
|
|
input[type="date"]:focus,
|
|
input[type="month"]:focus,
|
|
input[type="time"]:focus,
|
|
input[type="week"]:focus,
|
|
input[type="number"]:focus,
|
|
input[type="email"]:focus,
|
|
input[type="url"]:focus,
|
|
input[type="search"]:focus,
|
|
input[type="tel"]:focus,
|
|
input[type="color"]:focus,
|
|
.uneditable-input:focus {
|
|
border-color: @accent-color;
|
|
box-shadow:
|
|
inset 0 1px 1px @crust,
|
|
0 0 8px @accent-color;
|
|
}
|
|
|
|
/* Fix input box placeholder text */
|
|
textarea::placeholder,
|
|
input[type="text"]::placeholder,
|
|
input[type="password"]::placeholder,
|
|
input[type="datetime"]::placeholder,
|
|
input[type="datetime-local"]::placeholder,
|
|
input[type="date"]::placeholder,
|
|
input[type="month"]::placeholder,
|
|
input[type="time"]::placeholder,
|
|
input[type="week"]::placeholder,
|
|
input[type="number"]::placeholder,
|
|
input[type="email"]::placeholder,
|
|
input[type="url"]::placeholder,
|
|
input[type="search"]::placeholder,
|
|
input[type="tel"]::placeholder,
|
|
input[type="color"]::placeholder,
|
|
.uneditable-input::placeholder {
|
|
color: @subtext0;
|
|
}
|
|
|
|
/* Search results */
|
|
.search-page > .search-results > div > :nth-child(2) > li {
|
|
border-bottom: 1px solid @surface0;
|
|
}
|
|
|
|
.search-page > .search-results > div > :nth-child(2) > li > :first-child {
|
|
color: @accent-color;
|
|
}
|
|
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :nth-child(2)
|
|
> li.package
|
|
> :nth-child(5)
|
|
> :nth-child(2)
|
|
ul.nav-tabs
|
|
> li
|
|
> a {
|
|
color: @text;
|
|
}
|
|
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :nth-child(2)
|
|
> li.package
|
|
> :nth-child(5)
|
|
> :nth-child(2)
|
|
pre {
|
|
color: @text;
|
|
background-color: @mantle;
|
|
border: none;
|
|
}
|
|
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :nth-child(2)
|
|
> li.package
|
|
.result-item-show-more {
|
|
background-color: @base;
|
|
color: @text;
|
|
}
|
|
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :nth-child(2)
|
|
> li.package
|
|
> :nth-child(3)
|
|
> li {
|
|
color: @text;
|
|
}
|
|
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :nth-child(2)
|
|
> li.package
|
|
> :nth-child(5)
|
|
> :nth-child(2)
|
|
div.tab-content {
|
|
border: 1px solid @surface0;
|
|
}
|
|
|
|
.search-page
|
|
> .search-results
|
|
> div
|
|
> :nth-child(2)
|
|
> li.option
|
|
> :nth-child(2)
|
|
> div:nth-child(2n)
|
|
pre
|
|
code {
|
|
color: @text;
|
|
background-color: @mantle;
|
|
}
|
|
|
|
/* Search sidebar */
|
|
.search-page ul.search-sidebar > li {
|
|
border-color: @surface0;
|
|
}
|
|
|
|
.search-page ul.search-sidebar > li > ul > li > a {
|
|
color: @text;
|
|
}
|
|
|
|
.search-page ul.search-sidebar > li > ul > li > a:hover {
|
|
background-color: @surface0;
|
|
}
|
|
|
|
.search-page ul.search-sidebar > li > ul > li > a.selected {
|
|
color: @crust;
|
|
background-color: @accent-color;
|
|
}
|
|
|
|
/* Override sidebar labels (number of packages) */
|
|
.search-sidebar .label,
|
|
.search-sidebar .badge {
|
|
background-color: @surface0;
|
|
color: @text;
|
|
text-shadow: none;
|
|
}
|
|
|
|
/* Pager */
|
|
.pager li > a,
|
|
.pager li > span {
|
|
color: @text;
|
|
background-color: @surface0;
|
|
border: none;
|
|
border-radius: 5px;
|
|
}
|
|
|
|
.pager li > a:hover,
|
|
.pager li > a:focus {
|
|
background-color: @surface1;
|
|
transition: all;
|
|
transition-duration: 5ms;
|
|
}
|
|
|
|
.pager .disabled > a,
|
|
.pager .disabled > a:hover,
|
|
.pager .disabled > a:focus,
|
|
.pager .disabled > span {
|
|
color: @text;
|
|
background-color: @mantle;
|
|
border: none;
|
|
border-radius: 5px;
|
|
}
|
|
}
|
|
}
|
|
|
|
@catppuccin: {
|
|
@latte: {
|
|
@rosewater: #dc8a78;
|
|
@flamingo: #dd7878;
|
|
@pink: #ea76cb;
|
|
@mauve: #8839ef;
|
|
@red: #d20f39;
|
|
@maroon: #e64553;
|
|
@peach: #fe640b;
|
|
@yellow: #df8e1d;
|
|
@green: #40a02b;
|
|
@teal: #179299;
|
|
@sky: #04a5e5;
|
|
@sapphire: #209fb5;
|
|
@blue: #1e66f5;
|
|
@lavender: #7287fd;
|
|
@text: #4c4f69;
|
|
@subtext1: #5c5f77;
|
|
@subtext0: #6c6f85;
|
|
@overlay2: #7c7f93;
|
|
@overlay1: #8c8fa1;
|
|
@overlay0: #9ca0b0;
|
|
@surface2: #acb0be;
|
|
@surface1: #bcc0cc;
|
|
@surface0: #ccd0da;
|
|
@base: #eff1f5;
|
|
@mantle: #e6e9ef;
|
|
@crust: #dce0e8;
|
|
};
|
|
@frappe: {
|
|
@rosewater: #f2d5cf;
|
|
@flamingo: #eebebe;
|
|
@pink: #f4b8e4;
|
|
@mauve: #ca9ee6;
|
|
@red: #e78284;
|
|
@maroon: #ea999c;
|
|
@peach: #ef9f76;
|
|
@yellow: #e5c890;
|
|
@green: #a6d189;
|
|
@teal: #81c8be;
|
|
@sky: #99d1db;
|
|
@sapphire: #85c1dc;
|
|
@blue: #8caaee;
|
|
@lavender: #babbf1;
|
|
@text: #c6d0f5;
|
|
@subtext1: #b5bfe2;
|
|
@subtext0: #a5adce;
|
|
@overlay2: #949cbb;
|
|
@overlay1: #838ba7;
|
|
@overlay0: #737994;
|
|
@surface2: #626880;
|
|
@surface1: #51576d;
|
|
@surface0: #414559;
|
|
@base: #303446;
|
|
@mantle: #292c3c;
|
|
@crust: #232634;
|
|
};
|
|
@macchiato: {
|
|
@rosewater: #f4dbd6;
|
|
@flamingo: #f0c6c6;
|
|
@pink: #f5bde6;
|
|
@mauve: #c6a0f6;
|
|
@red: #ed8796;
|
|
@maroon: #ee99a0;
|
|
@peach: #f5a97f;
|
|
@yellow: #eed49f;
|
|
@green: #a6da95;
|
|
@teal: #8bd5ca;
|
|
@sky: #91d7e3;
|
|
@sapphire: #7dc4e4;
|
|
@blue: #8aadf4;
|
|
@lavender: #b7bdf8;
|
|
@text: #cad3f5;
|
|
@subtext1: #b8c0e0;
|
|
@subtext0: #a5adcb;
|
|
@overlay2: #939ab7;
|
|
@overlay1: #8087a2;
|
|
@overlay0: #6e738d;
|
|
@surface2: #5b6078;
|
|
@surface1: #494d64;
|
|
@surface0: #363a4f;
|
|
@base: #24273a;
|
|
@mantle: #1e2030;
|
|
@crust: #181926;
|
|
};
|
|
@mocha: {
|
|
@rosewater: #f5e0dc;
|
|
@flamingo: #f2cdcd;
|
|
@pink: #f5c2e7;
|
|
@mauve: #cba6f7;
|
|
@red: #f38ba8;
|
|
@maroon: #eba0ac;
|
|
@peach: #fab387;
|
|
@yellow: #f9e2af;
|
|
@green: #a6e3a1;
|
|
@teal: #94e2d5;
|
|
@sky: #89dceb;
|
|
@sapphire: #74c7ec;
|
|
@blue: #89b4fa;
|
|
@lavender: #b4befe;
|
|
@text: #cdd6f4;
|
|
@subtext1: #bac2de;
|
|
@subtext0: #a6adc8;
|
|
@overlay2: #9399b2;
|
|
@overlay1: #7f849c;
|
|
@overlay0: #6c7086;
|
|
@surface2: #585b70;
|
|
@surface1: #45475a;
|
|
@surface0: #313244;
|
|
@base: #1e1e2e;
|
|
@mantle: #181825;
|
|
@crust: #11111b;
|
|
};
|
|
};
|