Skip to content

Instantly share code, notes, and snippets.

@TehPeGaSuS
Last active April 27, 2025 20:26
Show Gist options
  • Save TehPeGaSuS/a1238ac29a9141cb8877d4d608011d6e to your computer and use it in GitHub Desktop.
Save TehPeGaSuS/a1238ac29a9141cb8877d4d608011d6e to your computer and use it in GitHub Desktop.
A dark theme for TheLounge IRC client inspired by Antelope Canyon (kindly shared by **ksliberal** on #thelounge @ irc.libera.chat)
/*
thelounge-theme-canyon
A dark theme for TheLounge IRC client inspired by Antelope Canyon
Installation instructions can be found at https://thelounge.chat/docs/server/configuration.html#theme
*/
:root {
/* Base colors from the canyon photo */
--canyon-orange: #FF7F38; /* Much more vibrant orange for usernames */
--canyon-bright: #FF6E3D; /* Bright orange */
--canyon-purple: #8B3B87; /* Rich purple */
--canyon-deep: #622c7c; /* Deep purple */
/* Additional chat colors */
--chat-cyan: #9C4424; /* Like +Aristos */
--chat-bright-cyan: #9500e5; /* Like @chalcedony */
--chat-green: #491586; /* Like +COBOL */
--chat-purple: #B14FFF; /* Like +chicken_m */
--chat-orange: #FF8C38; /* Like @Didache */
--chat-system: #996633; /* System messages */
/* Base colors */
--bg-hard: #1d1d1d;
--bg: #000000;
--bg-soft: #1a1a1a;
--bg1: #2a2a2a;
--bg2: #333333;
--bg3: #404040;
--bg4: #4d4d4d;
--gray-245: #928374;
--gray-244: #928374;
--fg-hard: #ffffff;
--fg: #f5f5f5;
--fg-soft: #e6e6e6;
--fg1: #d9d9d9;
--fg2: #cccccc;
--fg3: #bfbfbf;
--fg4: #b3b3b3;
--bright-red: #F90; /* Canyon orange */
--bright-green: #00FF9F; /* Bright mint */
--bright-yellow: #FFB000; /* Warm yellow */
--bright-blue: #FFE4FF; /* Cyan like @chalcedony */
--bright-purple: #FF00FF; /* Vibrant purple */
--bright-aqua: #9C4424; /* Bright cyan */
--bright-orange: #F90; /* Canyon orange */
--neutral-red: #A34C00; /* Deeper orange */
--neutral-green: #00CC7A; /* Deep mint */
--neutral-yellow: #FF9100; /* Deep warm yellow */
--neutral-blue: #6B2E8B;
--neutral-purple: #CC00CC; /* Deep purple */
--neutral-aqua: #00CCCC; /* Deep cyan */
--neutral-orange: #A34C00; /* Deeper orange */
--dim-red: #853E00; /* Darkest orange */
--dim-green: #009957; /* Dark mint */
--dim-yellow: #CC7400; /* Dark warm yellow */
--dim-blue: #371559;
--dim-purple: #990099; /* Dark purple */
--dim-aqua: #009999; /* Dark cyan */
--dim-orange: #853E00; /* Darkest orange */
--monospace-font: "JetBrains Mono", "Fira Code", "Source Code Pro", "IBM Plex Mono", "Cascadia Code", monospace;
--canyon-medium: #F90; /* Deep orange midtone */
--canyon-shadow: #8B3B87; /* Rich purple shadow */
--vibrant-orange: #FF6600; /* The perfect orange from @miracles */
}
:root {
--body-color: var(--fg1);
--dim-color: var(--fg3);
--link-color: var(--bright-orange);
--window-bg-color: var(--bg);
--body-bg-color: var(--bg);
--active-bg-color: var(--bg1);
--dark-bg-color: var(--bg-hard);
--date-marker-color: var(--bright-orange);
--unread-marker-color: var(--bright-green);
--highlight-bg-color: var(--bright-orange);
--highlight-border-color: var(--bright-orange);
--overlay-bg-color: rgba(0, 0, 0, 0.7);
--upload-progressbar-color: var(--bright-orange);
}
.user.color-1,
.user.color-17 {
color: var(--canyon-orange);
}
.user.color-2,
.user.color-18 {
color: var(--chat-cyan);
}
.user.color-3,
.user.color-19 {
color: var(--canyon-purple);
}
.user.color-4,
.user.color-20 {
color: var(--chat-bright-cyan);
}
.user.color-5,
.user.color-21 {
color: var(--canyon-bright);
}
.user.color-6,
.user.color-22 {
color: var(--chat-green);
}
.user.color-7,
.user.color-23 {
color: var(--chat-purple);
}
.user.color-8,
.user.color-24 {
color: var(--canyon-deep);
}
.user.color-9,
.user.color-25 {
color: var(--bright-yellow);
}
.user.color-10,
.user.color-26 {
color: var(--bright-blue);
}
.user.color-11,
.user.color-27 {
color: var(--bright-aqua);
}
.user.color-12,
.user.color-28 {
color: #91a6ff;
}
.user.color-13,
.user.color-29 {
color: var(--bright-red);
}
.user.color-14,
.user.color-30 {
color: #076678;
}
.user.color-15,
.user.color-31 {
color: #FF7F38;
}
.user.color-16,
.user.color-32 {
color: #499e8d;
}
html {
scrollbar-color: var(--bg1) var(--bg);
scrollbar-width: thin;
}
/* Borders */
#chat .content,
#chat .header,
#chat .user-mode::before,
#chat .userlist {
border-color: var(--window-bg-color);
}
/* Button colors */
#viewport .lt,
#viewport .rt,
#chat button.menu,
#chat button.mentions,
#chat form.message-search button,
/* #chat button.search, */
#chat .count::before,
#form #submit,
#footer button {
color: var(--link-color);
}
.btn {
border-color: var(--link-color);
color: var(--link-color);
}
.btn:disabled,
.btn:focus,
.btn:hover {
background: var(--link-color);
color: var(--body-color);
}
#viewport .lt:hover,
#viewport .rt:hover,
#chat button.menu:hover,
#chat button.mentions:hover,
#chat button.search:hover,
#form #submit:hover {
color: var(--highlight-bg-color);
}
/* Active/hover */
.channel-list-item:hover,
.context-menu-item:focus,
.textcomplete-item:focus,
.context-menu-item:hover,
.textcomplete-item:hover,
.textcomplete-menu .active,
#chat .userlist .user.active,
#sidebar .active,
#sidebar .active:hover,
#footer button:hover {
background-color: var(--active-bg-color);
}
/* Network-/channel list sidebar */
#sidebar {
width: 170px;
}
@media (max-width: 768px) {
#sidebar {
width: 200px;
}
}
.channel-list-item.is-muted {
opacity: unset;
/* the default is a bit aggressive */
}
.channel-list-item.is-muted::after {
content: '☣';
}
.channel-list-item,
#sidebar .empty {
color: var(--body-color);
}
.channel-list-item,
#sidebar .chan-placeholder {
padding-bottom: 3px;
padding-top: 3px;
}
#sidebar .network,
#sidebar .network-placeholder {
margin-bottom: 3px;
}
#sidebar .network .collapse-network-icon::before {
color: var(--highlight-border-color);
}
#sidebar .network .collapse-network {
width: 35px;
opacity: 100;
}
#sidebar .logo,
#sidebar .logo-inverted,
.channel-list-item::before,
#sidebar .channel-list-item[data-type='lobby'] .add-channel:not(.opened),
.not-secure-tooltip,
.not-secure-icon {
display: none;
}
#sidebar .channel-list-item[data-type='lobby'],
#sidebar .not-secure .channel-list-item[data-type='lobby'] {
color: var(--highlight-border-color);
}
.channel-list-item[data-type='lobby'].active,
.channel-list-item[data-type='lobby'] .lobby-wrap:hover,
.not-secure .channel-list-item[data-type='lobby'].active,
.not-secure .channel-list-item[data-type='lobby'] .lobby-wrap:hover {
color: var(--highlight-bg-color);
}
/* User list sidebar */
#chat .user-mode {
padding: 8px 0 0;
margin-bottom: 0;
}
#chat .userlist .count {
background: var(--body-bg-color);
}
/* Inputs */
.input,
.input:hover,
input,
#form,
#chat .userlist .search {
color: var(--body-color);
background-color: var(--window-bg-color);
border-color: var(--dim-color) !important;
}
.btn:active,
.btn:focus,
.input:focus {
border-color: rgba(0, 0, 0, 0) !important;
box-shadow: 0 0 0 3px var(--highlight-border-color);
}
.input::placeholder,
input::placeholder,
textarea::placeholder,
#chat .userlist .search::placeholder {
color: var(--dim-color);
}
#form {
border: none;
}
#user-specified-css-input {
height: 400px;
}
.password-container .reveal-password span,
#settings .extra-help,
#settings .extra-experimental {
color: var(--highlight-border-color);
}
/* Windows */
.window {
box-shadow: none;
}
.window h2 {
color: var(--body-color);
}
/* Content menu */
.context-menu-item,
.textcomplete-item,
.textcomplete-item a {
color: var(--body-color);
}
.textcomplete-menu,
#context-menu {
background-color: var(--body-bg-color);
}
.context-menu-item::before,
.textcomplete-item::before {
color: var(--link-color);
}
/* Channels */
#chat .chat-view[data-type='channel'] .msg.highlight {
background: var(--body-bg-color);
border-left: 5px solid var(--highlight-border-color);
}
#chat .chat-view[data-type='channel'] .msg.highlight .content {
border-left: none;
}
#chat .self {
border-left: 5px solid var(--active-bg-color);
}
#chat .self .content {
color: var(--body-color);
}
.irc-monospace,
code {
color: var(--body-bg-color);
font-weight: bold;
font-family: var(--monospace-font);
}
#chat .chat-view .notice .user,
#chat .notice .content,
#chat .notice .time,
.irc-fg2,
#chat .msg[data-type='notice'] .content,
#chat .msg[data-type='notice'] .time,
#chat .msg[data-type='notice'] .user,
#chat .msg[data-type='notice'] .from .user::before {
color: var(--link-color) !important;
}
#chat .toggle-content {
background: var(--body-bg-color);
box-shadow: none;
}
#chat .toggle-text a {
color: var(--body-color);
}
.header .topic {
color: var(--body-color);
}
/* MOTD */
#chat .msg[data-type='motd'] .text {
color: var(--highlight-border-color);
}
#chat .msg[data-type='motd'] .text {
background-color: var(--dark-bg-color);
}
/* Scroll down button */
.scroll-down-arrow {
border-color: var(--highlight-border-color);
background-color: var(--highlight-border-color);
color: white;
}
.scroll-down:hover .scroll-down-arrow {
background-color: var(--highlight-bg-color);
}
.scroll-down-number {
background-color: var(--highlight-border-color);
color: white;
}
/* Channel list */
#chat table.channel-list td {
color: var(--body-color);
}
/* Fileuploading */
#form #submit,
#form #upload {
color: var(--highlight-border-color);
}
/* Image viewer */
#image-viewer.opened {
backdrop-filter: blur(2px);
}
.mentions-popup {
border-color: var(--highlight-bg-color);
border-radius: 5px;
border-style: solid;
}
.mentions-popup .msg .content {
background-color: inherit;
}
.mentions-popup .msg .from {
color: var(--highlight-bg-color);
}
/* Apply monospace font to all text */
body {
font-family: var(--monospace-font);
}
/* Messages */
#chat .content {
font-family: var(--monospace-font);
}
/* Input box */
#input {
font-family: var(--monospace-font);
}
#sidebar .empty, .channel-list-item {
font-size: 12px;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment