/* ==UserStyle== @name Hoogle Catppuccin @namespace github.com/Sebagabones/userstyles/styles/hoogle @homepageURL https://github.com/Sebagabones/userstyles/tree/main/styles/hoogle @version 2025.09.06 @updateURL https://github.com/Sebagabones/userstyles/raw/main/styles/hoogle/catppuccin.user.less @supportURL https://github.com/Sebagabones/userstyles/issues?q=is%3Aopen+is%3Aissue+label%3Ahoogle @description Soothing pastel theme for Hoogle @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://raw.githubusercontent.com/Sebagabones/userstyles/refs/heads/main/lib/lib.less"; @-moz-document domain("hoogle.haskell.org") { :root { @media (prefers-color-scheme: light) { #catppuccin(@lightFlavor); } @media (prefers-color-scheme: dark) { #catppuccin(@darkFlavor); } } #catppuccin(@flavor) { #lib.palette(); #lib.defaults(); a { color: @accent; &:hover { background-color: @surface0; } } body { background-color: @base; color: @text; } /* * Top */ #links { background-color: @accent; color: @surface1; border-color: shade(@accent, 25%); } #top-menu li { border-color: @crust; a, a:visited, a:link { color: @base; } a:hover { background-color: fade(@overlay0, 30%); } } #logo { img { @svg: escape( '' ); content: url("data:image/svg+xml,@{svg}"); } &:hover { background-color: transparent; } } #hoogle, #scope, #submit { background-color: @mantle; color: @subtext1; border-style: solid; border-width: 2px; border-color: @surface0; border-radius: 4px; } .chosen-container { .chosen-drop { background-color: @mantle; border-color: @surface0; } .chosen-single { background-image: none; background-color: @mantle; box-shadow: none; border-style: solid; border-width: 2px; border-color: @surface0; color: @subtext1; } .chosen-default { color: @crust; } .chosen-search input { border-color: @surface1; border-radius: 4px; } .chosen-results { color: @subtext1; li.disabled-result { color: @overlay0; } li.highlighted { background-image: none; background-color: @accent; color: @base; } li.no-results { color: @subtext1; background-color: @mantle; } } } /* * Left */ #left { a { color: @accent; } .plus { @svg: escape( '' ); background-image: url("data:image/svg+xml,@{svg}"); color: @green; } .minus { @svg: escape( '' ); background-image: url("data:image/svg+xml,@{svg}"); color: @red; } } /* * Footer */ #footer { background-color: @crust; color: @subtext1; border-color: @overlay0; } /* * Other */ .error { border-color: @red; } #example { background-color: @mantle; color: @subtext1; border-color: @surface0; } /* * Results */ .result.active { background-color: @mantle; } .ans { background-color: @mantle; border-color: @surface0; a { color: @subtext1; } .name { color: @accent; } } .links a { color: @overlay1; } .from a, .p1, .p2 { color: @green; } .doc, .doc a { color: @subtext1; } .open { @svg: escape( '' ); background-image: url("data:image/svg+xml,@{svg}"); } .shut { @svg: escape( '' ); background-image: url("data:image/svg+xml,@{svg}"); } .c0 { background-color: @rosewater; } .c1 { background-color: @green; } .c2 { background-color: @lavender; } .c3 { background-color: @yellow; } .c4 { background-color: @pink; } .c5 { background-color: @teal; } } }