Greasy Fork is available in English.

4pda.ru Forum Tweaks

makes the forum more compact, convenient and interactive

/* ==UserStyle==
@name:ru        4pda.ru Forum Tweaks
@name           4pda.ru Forum Tweaks
@namespace      almaceleste
@version        0.2.5
@description    makes the forum more compact, convenient and interactive
@description:ru делает форум более компактным, удобным и интерактивным
@author         🄯 almaceleste (https://almaceleste.github.io)
@license        AGPL-3.0-or-later; http://www.gnu.org/licenses/agpl.txt

@homepageURL    https://greasyfork.org/en/scripts/404161-4pda-ru-forum-tweaks
@homepageURL    https://userstyles.org/styles/184315/4pda-ru-forum-tweaks
@homepageURL    https://github.com/almaceleste/userstyles
@supportURL     https://github.com/almaceleste/userstyles/issues

@preprocessor   uso
@var select     highlight-color 'highlight color' [
    'transparent',
    'black',
    'darkgreen',
    'deepskyblue*',
    'gold',
    'indigo',
    'lime',
    'magenta',
    'navy',
    'orangered',
    'white'
]
@var select     background-color 'filling color' {
    'transparent:transparent':      'transparent',
    'deepgray:deepgray (#111)':     '#111',
    'darkgray:darkgray (#333)*':    '#333',
    'middlegray:middlegray (#555)': '#555',
    'dimgray:dimgray':              'dimgray',
    'gray:gray':                    'gray',
    'lightgray:lightgray':          'lightgray',
    'darkslategray:darkslategray':  'darkslategray',
    'slategray:slategray':          'slategray',
    'whitesmoke:whitesmoke':        'whitesmoke',
    'white:white':                  'white'
}
@var select     postbuttons-position 'post buttons position' {
    'old:old style': `
            .borderwrap .ipbtable tbody tr:nth-of-type(3) {
                box-shadow: none !important;
            }
        `,
    'middle*': `
            .borderwrap .ipbtable tbody tr:nth-of-type(3) {
                bottom: 0;
                position: absolute;
                right: 50%;
                transform: translateX(50%);
            }
            .borderwrap .ipbtable:hover tbody tr:nth-of-type(3) {
                display: inline-block !important;
            }
            .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(1) {
                width: 170px;
            }
            .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(2) {
                width: 450px;
            }
        `,
    'left:left (may overlap some elements)': `
            .borderwrap .ipbtable tbody tr:nth-of-type(3) {
                bottom: 0;
                position: absolute;
                left: 0;
            }
            .borderwrap .ipbtable:hover tbody tr:nth-of-type(3) {
                display: inline-block !important;
            }
            .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(1) {
                width: 170px;
            }
            .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(2) {
                width: 450px;
            }
        `,
    'right': `
            .borderwrap .ipbtable tbody tr:nth-of-type(3) {
                bottom: 0;
                position: absolute;
                right: 0;
            }
            .borderwrap .ipbtable:hover tbody tr:nth-of-type(3) {
                display: inline-block !important;
            }
            .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(1) {
                width: 170px;
            }
            .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(2) {
                width: 450px;
            }
        `
}
@var text       qr_open-height 'bottom indentation' 275
==/UserStyle== */

/* main page */
@-moz-document regexp('https?://4pda\\.ru/forum.*') {
    /* signed as */
    .user_home {
        background-color: /*[[background-color]]*/;
        display: block !important;
        position: sticky !important;
        top: 0 !important;
        width: 100% !important;
        z-index: 99 !important;
    }
    /* usermenu and links top panel */
    #userlinks {
        position: sticky !important;
        top: 14px !important;
        z-index: 99 !important;
    }
    .popupmenu > .popupmenu-item,
    .popupmenu > .popupmenu-item-last,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item-last {
        padding-left: 0 !important;
        position: relative !important;
    }
    .popupmenu > .popupmenu-item > a,
    .popupmenu > .popupmenu-item-last > a,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item > a,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item-last > a,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item-last > b > a {
        display: block !important;
        padding-left: 25px !important;
    }
    .popupmenu > .popupmenu-item > img,
    .popupmenu > .popupmenu-item-last > img,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item > img,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item-last > img,
    .popupmenu-new > .popupmenu-item-last > .popupmenu-item-last > b > img {
        left: 5px !important;
        position: absolute !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

}
/* tree page & forum page */
@-moz-document regexp('https?://4pda\\.ru/forum/index\\.php\\?act.*'),
    regexp('https?://4pda\\.ru/forum/index\\.php\\?showforum.*') {
    /* subforum section header */
    body > div > .borderwrap > .maintitle {
        position: sticky !important;
        top: 43px !important;
        z-index: 98 !important;
    }
    /* subforum options menu */
    body > div > .borderwrap > .maintitle .popupmenu {
        position: absolute !important;
        top: 22px !important;
        transform: translateX(-16px) !important;
    }
    /* topic list header */
    body > div > .borderwrap > .ipbtable > tbody > tr:first-child > th {
        position: sticky !important;
        top: 68px !important;
        z-index: 97 !important;
    }
}
/* topic page */
@-moz-document regexp('https?://4pda\\.ru/forum/index\\.php\\?showtopic.*') {
    /* top paging nav and search panel */
    body > div > .ipbtable:nth-of-type(1) {
        background-color: /*[[background-color]]*/;
        position: sticky;
        top: 44px;
        z-index: 99;
    }
    /* paging go-to menu */
    #page-jump-1_menu {
        display: inline-block;
        position: absolute !important;
        top: -34px !important;
        transform: translateX(-15px) !important;
    }
    #page-jump-1_menu .popupmenu-category,
    #page-jump-1_menu .popupmenu-item-last {
        display: inline-block;
    }
    /* topic title bar with options menu */
    .maintitle {
        position: sticky;
        top: 77px;
        z-index: 99;
    }
    .maintitle .popupmenu {
        position: absolute !important;
        top: 22px !important;
        transform: translateX(-32px) !important;
    }
    /* topic message */
    .borderwrap .ipbtable {
        margin-bottom: 5px !important;
    }
    .borderwrap .ipbtable .catend {
        display: none !important;
    }
    /* topic message user information */
    .borderwrap .ipbtable tbody tr:nth-of-type(2) td:nth-of-type(1) .postdetails center {
        font-size: 9px;
        line-height: 12px;
        transform: scale(1.1);
    }
    /* topic message user reputation */
    .borderwrap .ipbtable tbody tr:nth-of-type(2) td:nth-of-type(1) .postdetails a:nth-last-child(-n+3):hover img {
        animation: postdetails-zoom .1s;
        transform: scale(1.5);
    }
    /* topic message user avatar */
    .borderwrap .ipbtable .postdetails center .user-avatar {
        display: block;
        height: 40px;
        position: relative;
    }
    .borderwrap .ipbtable .postdetails center .user-avatar img {
        left: 50%;
        position: absolute;
        top: 7px;
        transform: translateX(-50%);
    }
    .borderwrap .ipbtable .postdetails center .user-avatar img {
        height: 45px;
        max-height: unset !important;
        max-width: unset !important;
        transition: all .1s ease;
    }
    .borderwrap .ipbtable .postdetails center .user-avatar:hover img {
        animation: avatar-zoom .1s;
        height: 150px;
    }
    /* topic message user menu button */
    .borderwrap .ipbtable tbody tr:nth-of-type(1) td:nth-of-type(1) {
        position: relative;
    }
    .borderwrap .ipbtable tbody tr:nth-of-type(1) td:nth-of-type(1) .popupmenu-new {
        position: absolute !important;
        top: 26px !important;
        transform: translateX(100px) !important;
    }
    /* topic message buttons bottom panel */
    .borderwrap .ipbtable tbody tr:nth-of-type(3) {
        display: none !important;
    }
    .borderwrap .ipbtable:hover tbody tr:nth-of-type(3) {
        display: table-row !important;
    }


    /* topic message floating buttons panel */
    .borderwrap .ipbtable tbody tr:nth-of-type(3) {
        box-shadow: 0 0 5px 1px /*[[highlight-color]]*/ !important;
    }
    /*[[postbuttons-position]]*/


    .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(1) {
        width: 170px;
    }
    .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(2) {
        width: 450px;
    }
    .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(2) div:nth-of-type(3) {
        float: right;
        position: relative;
    }
    .borderwrap .ipbtable tbody tr:nth-of-type(3) .formbuttonrow:nth-of-type(2) div:nth-of-type(3) .popupmenu {
        position: absolute;
        left: unset !important;
        right: 13px !important;
        top: -50px !important;
    }
    /* whole topic message */
    .borderwrap .ipbtable tbody {
        box-shadow: none !important;
        filter: brightness(90%) !important;
    }
    .borderwrap .ipbtable:hover tbody {
        box-shadow: 0 0 5px 1px /*[[highlight-color]]*/ !important;
        filter: brightness(100%) !important;
    }
    /* topic message buttons and links highlighting */
    .borderwrap .ipbtable a:hover,
    .borderwrap .ipbtable .formbuttonrow a.g-btn:hover {
        filter: drop-shadow(0 0 2px /*[[highlight-color]]*/) !important
    }
    /* reply section */
    #qr_open {
        height: /*[[qr_open-height]]*/px;
    }
    #qr_open #qr-form-default {
        bottom: 0 !important;
        position: fixed !important;
        width: 98%;
    }
    #qr_open #ed--1_textarea {
        resize: vertical !important;
    }

    /* animations */
    @keyframes postdetails-zoom {
        from {
            transform: scale(1);
        }
        to {
            transform: scale(1.5);
        }
    }
    @keyframes avatar-zoom {
        from {
            height: 55px;
        }
        to {
            height: 150px;
        }
    }
}