Greasy Fork is available in English.

Webnovel - Dark Theme

A dark theme for Webnovel/Qidian International

/* ==UserStyle==
@name           Webnovel - Dark Theme
@namespace      ew0345
@version        1.0.9
@description    A dark theme for Webnovel/Qidian International
@author         ew0345
==/UserStyle== */

/***
    * CHANGELOG *

    Version 1.0.9:
        Book page styled.

    Version 1.0.8:
        Library & History pages styled.

    Version 1.0.7:
        Settings/Edit profile page styled.

    Version 1.0.6:
        Badges page styled.
        Profile page styled.
        "Limited Free For You" section on homepage styled.

    Version 1.0.5:
        Rankings page styled.

    Version 1.0.4:
        Browse/category page styled.

    Version 1.0.3:
        Login pop-up & login w/ email pop-up styled.

    Version 1.0.2:
        Header search styled.

    Version 1.0.1:
        Header bar styled.

    Version 1.0.0:
        Main page/homepage styled.
***/


@-moz-document domain("webnovel.com") {
    /* Variables */
    :root {
        --bg: #232323;
        --bg_dark: #1f1f1f;
        --bg_light: #303030;
        --bg_light_hover: rgba(100,100,100,0.5);
        --bg_selected: #3b66f5;
        
        --txt: #eee;
        --txt_dark: #aaa;
        --txt_genre: #83848f;
        --txt_title: lightslategray;
        --txt_lcol1: #eb1551;
        --txt_lcol2: #ff8d29;
        --txt_lcol3: #39cca0;
    }
}


@-moz-document domain("passport.webnovel.com") {
    /* Sign-in/passport */
    html,
    body div {
        background: var(--bg);
    }
    
    .m-main-hd h3 {
        color: var(--txt_title);
    }
    
    p.m-input input {
        color: var(--txt);
    }
}
@-moz-document regexp("http(s)://(www.)webnovel.com/(#*)"), regexp("http(s)://(www.)webnovel.com/category/.*"), regexp("http(s)://(www.)webnovel.com/ranking/.*"), regexp("http(s)://(www.)webnovel.com/profile/.*"), regexp("http(s)://(www.)webnovel.com/badges"), regexp("http(s)://(www.)webnovel.com/settings"), regexp("http(s)://(www.)webnovel.com/library(.*)"), regexp("http(s)://(www.)webnovel.com/history(.*)"), regexp("http(s)://(www.)webnovel.com/book/.*") {
    /* Header Bar */
    .g_header {
        background-color: var(--bg);
        border-bottom-color: var(--txt_title);
    }
    
    .g_header .g_search svg,
    .g_header .g_search strong {
        color: var(--txt_title);
    }
    
    .g_header .g_hd_link svg,
    .g_header .g_hd_link strong {
        color: var(--txt_title);
    }
    
    /* Header Bar - Search */
    
    .g_search_modal .g_search_header,
    .g_search_modal .g_search_header .g_search_input input {
        background-color: var(--bg_dark);
    }
    
    .g_search_modal .g_search_header .g_search_input input {
        border-color: var(--txt_title);
        color: var(--txt_title);
    }
    
    .g_search_panel,
    .g_search_result_list ul {
        background-color: var(--bg_dark);
    }
    
    .g_search_pop_list a,
    .g_search_result_list a,
    .g_search_result_list svg,
    .j_search_history a {
        color: var(--txt) !important;
    }
    
    .g_search_pop_list a:hover,
    .g_search_result_list a:hover {
        background: var(--bg_light_hover);
    }
    
    .j_search_history .g_search_tags a {
        background-color: var(--bg_light);
    }
}


@-moz-document regexp("http(s)://(www.)webnovel.com/(#*)") {
    /* Main Page */
    
    /* Page Body */
    html,
    body {
        background: var(--bg_dark);
        color: var(--txt);
    }
    
    /* Weekly Book */
    div[data-report-blocktitle="Weekly Book"] h3 {
        color: var(--txt_title);
    }
    
    /* Recent Activities */
    div[data-report-blocktitle="Recent Activities"] h3 {
        color: var(--txt_title);
    }
    
    div[data-report-blocktitle="Recent Activities"] ul :hover {
        /*background: var(--bg_light_hover);*/
        background: none;
    }
    
    div[data-report-blocktitle="Recent Activities"] ul :hover h4 {
        color: var(--txt_dark) !important;
    }
    
    div[data-report-blocktitle="Recent Activities"] p {
        color: var(--txt_dark) !important;
    }
    
    /* Weekly Featured */
    div[data-report-blocktitle="Weekly Featured"] h3,
    section[data-report-blocktitle="Weekly Featured"] h4, 
    section[data-report-blocktitle="Weekly Featured"] h4 a {
        color: var(--txt_title);
    }
    
    .m-book3 {
        background-color: var(--bg);
    }
    
    /* Limited Free For You */
    div[data-report-blocktitle="Limited Free For You"] h3,
    div[data-report-blocktitle="Limited Free For You"] h3 a {
        color: var(--txt_title);
    }
    
    /* Special For You */
    div[data-report-blocktitle="Special For You"] h3,
    div[data-report-blocktitle="Special For You"] h3 a {
        color: var(--txt_title);
    }
    
    /* Ranking */
    div[data-report-blocktitle="Ranking"] h3,
    div[data-report-blocktitle="Ranking"] h5 a {
        color: var(--txt_title);
    }
    
    div[data-report-blocktitle="Ranking"] p a {
        color: var(--txt_genre);
    }
    
    div[data-report-blocktitle="Ranking"] .c_danger {
        color: #eb1551 !important;
    }
    
    div[data-report-blocktitle="Ranking"] .c_warning {
        color: #ff8d29 !important;
    }
    
    div[data-report-blocktitle="Ranking"] .c_success {
        color: #39cca0 !important;
    }
    
    div[data-report-blocktitle="Ranking"] .ff_number {
        color: var(--txt);
    }
    
    /* New Ongoing Release */
    section[data-report-blocktitle="New Ongoing Release"] {
        background: var(--bg_dark);
    }
    
    section[data-report-blocktitle="New Ongoing Release"] h3,
    section[data-report-blocktitle="New Ongoing Release"] h4 a {
        color: var(--txt_title);
    }
    
    /* Potential Starlet */
    div[data-report-blocktitle="Potential Starlet"] h3,
    div[data-report-blocktitle="Potential Starlet"] h3 a{
        color: var(--txt_title);
    }
    
    div[data-report-blocktitle="Potential Starlet"] .bc_light_default {
        background: var(--bg);
    }
    
    /* New Tropes */
    div[data-report-blocktitle="New Tropes"] h3,
    div[data-report-blocktitle="New Tropes"] h3 a{
        color: var(--txt_title);
    }
    
    div[data-report-blocktitle="New Trops"] p a {
        color: var(--txt_genre);
    }
    
    /* Encouraging Novels */
    section[data-report-blocktitle="Encouraging Novels"] {
        background: var(--bg_dark);
    }
    
    section[data-report-blocktitle="Encouraging Novels"] h3,
    section[data-report-blocktitle="Encouraging Novels"] h4 a {
        color: var(--txt_title);
    }
    
    /* Completed */
    div[data-report-blocktitle="Completed"] h3,
    div[data-report-blocktitle="Completed"] h3 a {
        color: var(--txt_title);
    }
    
    div[data-report-blocktitle="Completed"] .bc_light_default {
        background: var(--bg);
    }
    
    /* Promising Novels */
    div[data-report-blocktitle="Promising Novels"] h3,
    div[data-report-blocktitle="Promising Novels"] h3 a {
        color: var(--txt_title);
    }
    
    div[data-report-blocktitle="Promising Novels"] p a {
        color: var(--txt_genre);
    }
    
    /* Trending Original */
    div[data-report-blocktitle="Trending Original"] h3,
    div[data-report-blocktitle="Trending Original"] h4 a {
        color: var(--txt_title);
    }
    
    /* Potential Entrant */
    section[data-report-blocktitle="Potential Entrant"] h3,
    section[data-report-blocktitle="Potential Entrant"] h4 a {
        color: var(--txt_title);
    }
    
    section[data-report-blocktitle="Potential Entrant"] p a {
        color: var(--txt_genre);
    }
    
    section[data-report-blocktitle="Potential Entrant"] {
        background: var(--bg_dark);
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/category/.*") {
    /* Browse Page */
    
    /* Page body */
    html,
    body {
        background-color: var(--bg_dark);
        color: var(--txt);
    }
    
    /* Headers */
    h3,
    .j_filter_form h4 {
        color: var(--txt_title);
    }
    
    /* Genre List */
    .m-switch {
        background-color: var(--bg_light);
    }
    .m-switch label {
        color: var(--txt_genre);
    }
    
    .m-switch-0:checked ~ .m-switch label:first-child,
    .m-switch-1:checked ~ .m-switch label:not(:first-child) {
        background-color: var(--bg_selected);
        color: var(--txt);
    }
    
    .m-accordion-bd li a {
        color: var(--txt_genre);
    }
    
    .m-accordion-icon {
        color: var(--txt);
    }
    
    /* Novel List */
    .j_category_wrapper h3 a {
        color: var(--txt_title);
    }
    
    .j_category_wrapper p,
    .j_category_wrapper p strong {
        color: var(--txt_genre)
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/ranking/.*") {
    /* Rankings Pages */
    
    /* Page body */
    html,
    body {
        background-color: var(--bg_dark);
        color: var(--txt);
    }
    
    /* Headers */
    h3,
    .g_hr h4 {
        color: var(--txt_title);
    }
    
    /* Genre List */
    .m-accordion-bd a {
        color: var(--txt_genre);
    }
    
    .m-accordion-icon {
        color: var(--txt);
    }
    
    /* Ranking List */
    .f1 h5 {
        color: var(--txt_genre);
    }
    
    .m-release-item strong,
    .j_show_filter_sel strong,
    .j_show_filter_sel svg {
        color: var(--txt);
    }
    
    .j_rank_wrapper i.c_danger {
        color: var(--txt_lcol1) !important;
    }
    
    .j_rank_wrapper i.c_warning {
        color: var(--txt_lcol2) !important;
    }
    
    .j_rank_wrapper i.c_success {
        color: var(--txt_lcol3) !important;
    }
    
    .j_rank_wrapper .ff_number.tac {
        color: var(--txt);
    }
    
    .j_rank_wrapper h3 a {
        color: var(--txt_title)
    }
    
    .j_rank_wrapper .vam {
        color: var(--txt_genre);
    }
    
    /* Other Filters dropdown */
    .j_show_filter_container {
        background: var(--bg_light);
    }
    
    .j_show_filter_container legend {
        color: var(--txt_genre);
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/profile/.*") {
    /* Profile page */
    
    /* Page body */
    html,
    body,
    .header {
        background-color: var(--bg_dark);
        color: var(--txt);
    }
    
    .g_wrap p {
        color: var(--txt);
    }
    
    address svg, 
    address strong {
        color: var(--txt_genre);
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/badges") {
    /* Badges Page */
    
    /* Page body */
    html,
    body,
    .g_sub_hd {
        background: var(--bg_dark);
        color: var(--txt);
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/settings") {
    /* Settings/Edit Profile Page */
    
    /* Page body */
    html,
    body,
    .header {
        background: var(--bg_dark);
        color: var(--txt);
    }
    
    #settingForm .g_row label,
    #settingForm .g_row strong {
        color: var(--txt);
    }
    
    .fc_sel strong {
        color: black !important;
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/library(.*)") {
    /* Library Page */
    
    /* Page body */
    html,
    body,
    .g_sub_hd {
        background: var(--bg_dark);
    }
    
    h2,
    h3 {
        color: var(--txt_title);
    }
    
    a._on[title="Library"] {
        color: var(--txt) !important;
    }
    
    a[title="History"]:hover {
        color: var(--txt_genre) !important;
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/history(.*)") {
    /* History Page */
    
    /* Page body */
    html,
    body,
    .g_sub_hd {
        background: var(--bg_dark);
    }
    
    h2 {
        color: var(--txt_title);
    }
    
    a._on[title="History"] {
        color: var(--txt) !important;
    }
    
    a[title="Library"] {
        color: var(--txt_genre) !important;
    }
    
    .g_col h3 a {
        color: var(--txt_title);
    }
    
    .g_star_num small {
        color: var(--txt_genre);
    }
    
    .g_tags a,
    ._oprate a {
        color: var(--bg_selected) !important;
    }
    
    .g_col a {
        color: var(--txt_genre);
    }
}

@-moz-document regexp("http(s)://(www.)webnovel.com/book/.*") {
    /* Book Page */
    
    /* Page Body */
    body,
    .page div {
        background: var(--bg_dark);
        color: var(--txt);
    }
    
    /* Book Info */
    .det-hd .c_000 {
        color: var(--txt_genre);
    }
    
    .det-info h2 {
        color: var(--txt_title);
    }
    
    .det-hd-detail a,
    .det-hd-detail strong {
        color: var(--txt_genre);
    }
    .det-hd address span {
        color: var(--bg_selected);
    }
    
    /* About | Table of Contents Bar */
    .det-tab-nav ._on span {
        color: var(--bg_selected) !important;
    }
    
    /* About */
    #about p.c_000 {
        color: var(--txt);
    }
    
    /* Table of Contents */
    #contents li {
        background: var(--bg_dark);
    }
    #contents li i {
        color: var(--bg_selected);
    }
    #contents li strong {
        color: var(--txt);
    }
    
    /* You may also like */
    .j_books_you_also_like .m-book-title h3 {
        color: var(--txt_title);
    }
    .j_books_you_also_like .g_star_num small {
        color: var(--txt_dark);
    }
    
    /* Reviews */
    #review .g_star_num small {
        color: var(--txt_dark);
    }
    #review .g_tab_nav ._on {
        color: var(--bg_selected);
    }
    .m-comment-tool {
        color: var(--txt_dark);
    }
    .m-comment-ft strong {
        color: var(--txt_dark);
    }
    #pagination .ui-page-x a,
    #pagination .ui-page-x .ui-page-ellipsis {
        color: var(--txt_dark);
    }
    #pagination .ui-page-x .ui-page-prev,
    #pagination .ui-page-x .ui-page-next {
        color: var(--txt);
    }
    
    /* Leave a review */
    #reviewModal .rev-modal-score-list strong {
        color: var(--bg_selected)
    }
    #reviewModal textarea {
        color: var(--txt);
    }
    #reviewModal .btn_rich_modal {
        color: var(--txt)
    }
    #reviewModal .rich_modal_footer strong {
        color: var(--txt);
    }
    
    /* Review Replies */
    #replyDetailModal div {
        background: var(--bg);
        color: var(--txt);
    }
    #replyDetailModal blockquote {
        background: var(--bg_light);
        color: var(--txt);
    }
    #replyDetailModal .g_mod_chat_ft input {
        background: var(--bg);
        color: var(--txt);
    }
    
    /* Review Replies - Add a Comment */
    .rich_modal .g_mod {
        background: var(--bg);
    }
    .rich_modal .g_mod h4 {
        color: var(--txt)
    }
    .rich_modal .g_mod .modal_quote,
    .rich_modal .g_mod .modal_quote div {
        background: var(--bg_light);
        color: var(--txt);
    }
    .rich_modal .g_mod textarea {
        background: var(--bg_light);
        color: var(--txt) !important;
    }
    .rich_modal .g_mod .btn_rich_modal {
        color: var(--txt);
    }
    
    /* Usernames */
    .fans-list a strong,
    .m-comment-hd h3 a {
        color: var(--txt);
    }
}