The Problem: Custom Themes Only Work on the Main Timeline
Plurk lets you apply custom CSS themes to your timeline — but that styling only takes effect on the main feed page. The moment you open an individual plurk in its own tab, you're back to the default white background, which is rough on the eyes in a dark room.
Two solutions follow: a pure CSS snippet for the main page, and a Tampermonkey script that covers all Plurk pages.
Solution 1: CSS (paste into Plurk Theme Settings)
Go to Plurk Settings → Themes → Custom CSS and paste the following:
/* Plurk Dark Mode - main timeline */
body, #main_content {
background-color: #1a1a1a !important;
color: #eee !important;
}
.content_holder, .plurk_cnt, .response_cnt {
background: #2a2a2a !important;
color: #eee !important;
}
.input_holder, .plurk_add_response {
background: #333 !important;
color: #eee !important;
}
a { color: #7ab8ff !important; }
a:hover { color: #aacfff !important; }
Solution 2: Tampermonkey (covers all Plurk pages)
Install Tampermonkey, then add a new script with the following content:
// ==UserScript==
// @name Plurk Dark Mode
// @namespace http://tampermonkey.net/
// @version 1.0
// @description Dark mode for Plurk, including individual post pages
// @match https://www.plurk.com/*
// @grant GM_addStyle
// ==/UserScript==
GM_addStyle(`
body, #main_content, .content_holder,
.plurk_cnt, .response_cnt {
background-color: #1a1a1a !important;
color: #eee !important;
}
.cnt_box, .response_box {
background: #2a2a2a !important;
border-color: #444 !important;
}
.content_holder { background: #282828 !important; }
.input_holder { background: #333 !important; color: #eee !important; }
.plurk_add_response textarea {
background: #3a3a3a !important;
color: #eee !important;
}
.user_card, .timeline_holder {
background: #505050 !important;
}
a { color: #7ab8ff !important; }
`);
Color Palette
- Dark backgrounds:
#1a1a1a/#282828/#3a3a3a - Card backgrounds:
#484848/#505050 - Primary text:
#eee - Links:
#7ab8ff(soft blue, readable on dark backgrounds)
Notes
Plurk's HTML structure is deeply nested and full of specificity battles, so getting the CSS right took more effort than expected. Claude helped debug the final version. Feel free to use or adapt this for your own Plurk setup.