/* =Tools
----------------------------------------------- */

@media screen {

    /* highlight selected tool */
    .mode_admin a.action.admin,
    .mode_login a.action.login,
    .mode_register a.action.register,
    .mode_profile a.action.profile,
    .mode_recent a.action.recent,
    .mode_index a.action.index,
    .mode_media a.action.media,
    .mode_revisions a.action.revs,
    .mode_backlink a.action.backlink,
    .mode_subscribe a.action.subscribe {
        background-color: transparent;
    }

    .loggedIn{
        .site-tools ul li:has(> a.action.media), .user-tools ul li:has(> a.action.admin), .page-tools ul li:has(> a.action.revs) {
            display: block;
        }
    }

    .page-tools {
        ul {
            list-style: none;
            text-transform: uppercase;
        }
        li {
            padding: 5px 0;
        }
        li:first-child {
            padding-top: 0;
        }
        li:last-child {
            padding-bottom: 0;
        }
        ul a {
            color: @ini_background;
            font-weight: bold;
            text-decoration: none;
        }
        ul a:hover {
            color: @ini_theme_color_alt;
        }
        a span.icon {
            display: inline-block;
            width: 20px;
            height: 20px;
            -webkit-font-smoothing: antialiased;
            font-size: 20px;
            line-height: 1;
            font-family: 'bootstrap-icons';
            text-decoration: inherit;
            font-weight: normal;
            font-style: normal;
            vertical-align: top;
        }

        a           span.icon:before { content: '\F28A'; }

        a.edit      span.icon:before { content: '\F4CA'; }
        a.create    span.icon:before { content: '\F64D'; }
        a.show      span.icon:before { content: '\F341'; }
        a.source    span.icon:before { content: '\F2C6'; }
        a.draft     span.icon:before { content: '\F38B'; }
        a.revs      span.icon:before { content: '\F292'; }
        a.backlink  span.icon:before { content: '\F470'; }
        a.top       span.icon:before { content: '\F278'; }
        a.revert    span.icon:before { content: '\F117'; }
        a.subscribe span.icon:before { content: '\F18A'; }
    }

    .site-tools {
        a span {
            display: inline-block;
            width: 20px;
            height: 20px;
            -webkit-font-smoothing: antialiased;
            font-size: 20px;
            line-height: 1;
            font-family: 'bootstrap-icons';
            text-decoration: inherit;
            font-weight: normal;
            font-style: normal;
            vertical-align: top;
        }

        a           span:before { content: '\F28A'; }
        a.recent    span:before { content: '\F293'; }
        a.index     span:before { content: '\F2EE'; }
        a.media     span:before { content: '\F2CB'; }
    }

    .bookmarks,
    .user-tools {
        a i {
            display: inline-block;
            width: 20px;
            height: 20px;
            -webkit-font-smoothing: antialiased;
            font-size: 20px;
            line-height: 20px;
            vertical-align: middle;
            font-family: 'bootstrap-icons';
            text-decoration: inherit;
            font-weight: normal;
            font-style: normal;
        }

        a           i:before { content: '\F28A'; }
        a.admin     i:before { content: '\F3E5'; }
        a.login     i:before { content: '\F1BE'; }
        a.logout    i:before { content: '\F1C3'; }
        a.register  i:before { content: '\F89A'; }
        a.profile   i:before { content: '\F4CB'; }
        a.show      i:before { content: '\F4E1'; }
        a.starred   i:before { content: '\F588'; }

        p.user:before {
            font-family: 'bootstrap-icons';
            content: "\F4E1";
            font-size: 20px;
            padding-right: 4px;
            line-height: 20px;
            vertical-align: middle;
        }
    }
}

@media print {
    .page-tools {
        display: none;
    }
}

@media only screen and (min-width: 960px) {

    .page-tools {
        position: fixed;
        top: 40px;
        left: 320px;

        a.action,
        a.menuitem {
            width: 60px;
            height: 60px;
            display: block;
        }
        a span {
            width: 60px;
            display: block;
            text-align: center;
        }
        a span.icon {
            width: 60px;
            height: 60px;
            background: @ini_text_neu;
            color: @ini_background;
            font-size: 30px;
            line-height: 2;

            -webkit-border-radius: 50%;
            -moz-border-radius:    50%;
            border-radius:         50%;
            transition:         all 0.25s ease-in-out;
        }

        a:hover span.icon {
            background: @ini_background;
            color: @ini_text_alt;
        }

        a:focus {
            outline: none;

            span.icon {
                background-color: @ini_theme_color;
                color: #fff;
            }
        }
    }

    .mode_revisions .page-tools a.revs span.icon,
    .mode_backlink .page-tools a.backlink span.icon,
    .mode_revert .page-tools a.revert span.icon,
    .mode_subscribe .page-tools a.subscribe span.icon {
        background: @ini_background;
        color: @ini_text_alt;
        position: relative;

        &:after {
            content: '';
            z-index: 2;
            display: block;
            position: absolute;
            top: 25px;
            right: -25px;
            border-left: 5px solid @ini_text_alt;
            border-top: 5px solid transparent;
            border-bottom: 5px solid transparent;
        }
    }

}

@media only screen and (max-width: 959px) {
    #writr__sidebar {
        margin-bottom: 0px;
    }

    #writr__sidebar:has(#writr__sidebar-toggle.open) + .page-tools {
        z-index: -1;
    }

    .page-tools {
        position: fixed;
        top: 80px;
        left: 60px;
        z-index: 1000;

        a.action,
        a.menuitem {
            width: 60px;
            height: 60px;
            display: block;
        }
        a span {
            width: 60px;
            display: block;
            text-align: center;
        }
        a span.icon {
            width: 60px;
            height: 60px;
            background: @ini_text_neu;
            color: @ini_background;
            font-size: 30px;
            line-height: 2;

            -webkit-border-radius: 50%;
            -moz-border-radius:    50%;
            border-radius:         50%;
            transition:         all 0.25s ease-in-out;
        }

        a:hover span.icon {
            background: @ini_background;
            color: @ini_text_alt;
        }

        a:focus {
            outline: none;

            span.icon {
                background-color: @ini_theme_color;
                color: #fff;
            }
        }
    }
}

@media only screen and (max-width: 767px) {
    #writr__sidebar {
        margin-bottom: 0px;
    }

    .page-tools {
        position: relative;
        top: auto;
        left: auto;

        ul {
            background: @ini_text_alt;
            margin-bottom: 0px;
            width: 100vw;
            height: 60px;

            li:has(a.top) {
                position: fixed;
                bottom: 8px;
                right: 8px;
                z-index: 999;
            }

            li:has(a.create),
            li:has(a.show),
            li:has(a.edit) {
                position: fixed;
                top: 68px;
                right: 8px;
                z-index: 999;
            }

            li:first-child {
                padding-top: 4px;
                padding-left: 8px;
            }

            li {
                float: left;
                padding: 4px;

                a.action,
                a.menuitem {
                    width: 48px;
                    height: 48px;
                    display: block;
                }
                a span {
                    width: 48px;
                    display: block;
                    text-align: center;
                }
                a span.icon {
                    width: 48px;
                    height: 48px;
                    background: @ini_text_neu;
                    color: @ini_background;
                    font-size: 24px;
                    line-height: 2;

                    -webkit-border-radius: 50%;
                    -moz-border-radius:    50%;
                    border-radius:         50%;
                    transition:         all 0.25s ease-in-out;
                }

                a:hover span.icon {
                    background: @ini_background;
                    color: @ini_text_alt;
                }

                a:focus {
                    outline: none;

                    span.icon {
                        background-color: @ini_theme_color;
                        color: #fff;
                    }
                }
            }
        }
    }
}
