diff --git a/misskey/images/mktweaks_mobile.png b/misskey/images/mktweaks_mobile.png new file mode 100644 index 0000000..82e7fde Binary files /dev/null and b/misskey/images/mktweaks_mobile.png differ diff --git a/misskey/images/mktweaks_posts.png b/misskey/images/mktweaks_posts.png new file mode 100644 index 0000000..a35641b Binary files /dev/null and b/misskey/images/mktweaks_posts.png differ diff --git a/misskey/images/mktweaks_profile.png b/misskey/images/mktweaks_profile.png new file mode 100644 index 0000000..6c2952c Binary files /dev/null and b/misskey/images/mktweaks_profile.png differ diff --git a/misskey/mk-tweaks.user.css b/misskey/mk-tweaks.user.css new file mode 100644 index 0000000..5ae67ab --- /dev/null +++ b/misskey/mk-tweaks.user.css @@ -0,0 +1,944 @@ +/*** + + + !!! MAKE SURE TO ADD YOUR INSTANCE DOMAIN IN THE APPLIES TO SECTION BELOW !!! + + +***/ + +/* ==UserStyle== +@name Misskey Tweaks +@version 1.0.8 +@description A collection of tweaks aimed at making Misskey less cluttered! +@updateURL https://codeberg.org/Freeplay/CSS-Styles/raw/branch/main/Misskey/mk-tweaks.user.css +@preprocessor stylus + + -- AUTHOR STUFF -- +@namespace Freeplay +@author Freeplay (https://freeplay.codeberg.page/) +@homepageURL https://codeberg.org/Freeplay/CSS-Styles +@supportURL https://codeberg.org/Freeplay/CSS-Styles/issues + + +@var text warn "!! REFRESH AFTER CHANGING SETTINGS !!" '"OKAY!!"' +@var checkbox header "↔ Move header aside" 1 +@var checkbox bg "🔲 Better Wallpaper Support" 1 +@var checkbox posts "💬 Better Posts Layout" 1 +@var checkbox profile "👤 Better Profile Page" 1 +@var checkbox sidebar "📇 Better Sidebar" 1 +@var checkbox mentions "🏓 Readable Mentions" 1 +@var checkbox font "🇦 Superior Local Font (Segoe UI)" 1 +@var checkbox fixes "🔧 Other Minor Fixes" 1 +@var checkbox compose "🖊 Better Compose" 1 + +==/UserStyle== */ + +@-moz-document domain("misskey.to"), domain("misskey.ai") { +if font { + html { + font-family: "Segoe UI", sans-serif; + } +} + + +if sidebar { + /*** Better Sidebar ***/ + .sidebar { + display: flex; + flex-direction: column; + .nav { + position: sticky; + top: 0; + border-right: .5px solid var(--divider); + min-height: 100vh !important; + max-height: 100vh !important; + overflow: clip auto; + + & > div { + height: auto !important; + background: none !important; + flex: none !important; + position: relative !important; + overflow: visible !important; + } + } + button:not(.post):not(.gradate) { + position: relative !important; + background: none !important; + box-shadow: none !important; + backdrop-filter: none !important; + } + & > div:last-child:not(.iconOnly), .nav > div { + display: flex; + flex-direction: column; + min-height: calc(100vh - 20px); + & > a, & > button:not(.account):not(.post) { + flex-grow: 1; + display: flex !important; + align-items: center !important; + align-content: center; + font-size: 100% !important; + max-height: 55px; + span { + font-size: inherit !important; + } + &::before { + content: unset !important; + } + } + } + } +} + +if bg { + /*** BETTER CUSTOM WALLPAPER SUPPORT ***/ + .mk-app.wallpaper { + background: none !important; + &::before { + content: ""; + position: fixed; + inset: 0px; + background-color: var(--bg); + opacity: .85; + pointer-events: none; + z-index: -1; + } + .sidebar { + z-index: 3; + .nav { + border-right-color: transparent; + } + } + .contents { + background: none !important; + } + main { + overflow: visible !important; + position: relative; + background: none !important; + border-color: transparent !important; + --bg: transparent; + --X17: transparent; + // --panel: transparent; + .tl { + + overflow: visible; + } + .fdidabkb + div > div > div > div { + overflow: visible; + position: relative; + min-height: calc(100vh - 50px); + backdrop-filter: blur(10px); + &::before, &::after { + content: ""; + position: absolute; + top: -9999px; + bottom: 0; + right: 100%; + left: -100vw; + background-color: rgba(0,0,0,0.2); + pointer-events: none !important; + z-index: -1; + box-shadow: 0 100vw 0 rgba(0,0,0,0.2); + } + &::after { + right: 0; + background: none; + box-shadow: 100vw 100vh 0 rgba(0,0,0,0.2); + } + } + + .notes, ._block, ._card, ._panel, .elsfgstc, .fcuexfpr, .qtqtichx, .narrow { + background: none !important; + border-radius: 0 !important; + } + } + .widgets { + border: 0 !important; + background: none !important; + } + + .post { + background: none !important; + } + .widgets .widget, div.tab, .widget header, .ukygtjoj > header { + background: none !important; + &::before, header::before { + content: ""; + position: absolute; + inset: 0; + background: var(--panel); + opacity: .7 !important; + z-index: -1; + pointer-events: none; + } + &::after { + content: ""; + position: absolute; + inset: 0; + backdrop-filter: blur(10px); + z-index: -2; + pointer-events: none; + } + &.tab { + padding-inline: 6px !important; + } + ._panel, .elsfgstc, header { + background: none !important; + } + & > header::before { + opacity: .5; + backdrop-filter: blur(10px); + } + } + .collapsed { + border-radius: var(--radius) !important; + } + + } +} + +if mobile { + /*** BETTER MOBILE SUPPORT ***/ + .mk-app.isMobile { + main.main.main { + --margin: 0px; + margin-top: 50vh !important; + &::before, &::after { + content: unset !important; + } + [style="padding: 12px;"] { + padding: 0 !important; + margin: 0 !important; + width: 100% !important; + ._block { + border-radius: 0 !important; + } + } + } + .fdidabkb { + position: fixed; + top: unset; + bottom: 65px; + left: 10px; + right: 10px; + width: unset !important; + border-radius: var(--radius); + border: 0; + padding-left: 20px; + z-index: 1001; + --height: 50px; + .titleContainer { + margin-left: 0; + .icon { + margin-left: 0 !important; + } + .title { + margin: 0; + display: flex; + align-items: flex-end; + flex-grow: 1; + margin-right: 10px; + } + } + } + & > .buttons { + padding: 0 !important; + background: linear-gradient(transparent, var(--bg)) !important; + height: 120px; + align-items: flex-end; + border: 0 !important; + backdrop-filter: none !important; + button { + margin: 0 !important; + background: none !important; + height: 70px !important; + i { + font-size: 18px !important; + } + } + } + & > .ccczpooj { + animation: none !important; + } + ._popup { + position: fixed; + bottom: 0; + left: 0; + right: 0; + top: unset !important; + max-height: 400px; + overflow-y: scroll; + scrollbar-width: none; + border-radius: var(--radius) var(--radius) 0 0 !important; + animation: none !important; + button { + padding: 12px 16px; + } + } + } +} +/*** HEADER ***/ +/* MOVE ASIDE */ +if header { + /*** MOVE HEADER ASIDE ***/ + @media only screen and (min-width: 1201px) { + .columns > .main, main .content > div { + overflow: visible !important; + .fdidabkb:not(.slim) { + display: contents !important; + & > div { + height: 50px !important; + } + .titleContainer { + position: sticky; + top: var(--stickyTop,0); + z-index: 1000; + margin-left: calc(100% + 17px) !important; + margin-bottom: -50px !important; + width: 300px; + padding-left: 15px; + box-sizing: border-box; + background-color: var(--panelHeaderBg); + border-radius: 0 0 var(--radius) var(--radius); + .avatar { + margin-left: 0 !important; + } + .title { + white-space: nowrap; + } + } + + .tabs { + height: 60px !important; + margin-left: 0; + margin-top: 10px !important; + display: flex; + justify-content: center; + font-size: .9em !important; + button::after { + content: unset !important; + } + &:empty { + height: 20px !important; + } + } + .right { + position: sticky; + top: var(--stickyTop,0); + margin-left: auto !important; + margin-right: -312px !important; + margin-top: -75px !important; + margin-bottom: 9px !important; + z-index: 1001; + width: max-content; + max-width: 150px; + background-color: var(--panelHeaderBg); + &::before { + content: ""; + position: absolute; + right: 100%; + top: 0; + bottom: 0; + width: 40px; + background: linear-gradient(to left, var(-panelHeaderBg), transparent); + } + } + } + } + + .widgets > div[style^="position: sticky"] > div:first-child { + padding-top: 50px !important; + } + } +} + +/** TIMELINE **/ +/* POST */ +if posts { + /*** BETTER POSTS ***/ + /* This one is probably the most horribly written. */ + .noGap > :not(:last-child) { + // border: 0 !important; + } + .renote[tabindex], .note._block { + display: flex; + flex-direction: column; + } + .renote > div { + position: relative !important; + } + .renote > .renote { + margin-left: 50px; + padding: 10px !important; + padding-bottom: 0 !important; + margin-bottom: -.2em; + position: relative !important; + color: var(--text) !important; + font-weight: 600; + font-size: .8em; + opacity: .6; + z-index: 2; + // width: max-content; + max-width: 100%; + .avatar, .info time { + display: none !important; + } + & ~ .article { + margin-top: calc(-1em - 25px) !important; + padding-top: calc(1em + 25px) !important; + } + } + .article, .reply, .reply-to, .reply-to-more { + padding: 12px !important; + position: relative !important; + opacity: 1 !important; + transition: background-color .2s; + font-size: 1em !important; + &:hover, &:focus-within, ._isolated &.article { + background-color: var(--listItemHoverBg); + } + .avatar { + img { + border-radius: 25% !important; + } + } + .username, .created-at { + opacity: .6 !important; + } + // Make full post clickable, while still allowing clicking link's n' stuff. + .created-at::before { + content: ""; + position: absolute; + inset: 0; + left: 0px; + } + .text { + z-index: 2 !important; + span { + position: relative; + z-index: 2; + } + } + button:not(.fade), a:not(.created-at):not(.avatar), .files { + position: relative !important; + z-index: 3 !important; + } + .cover + .text { + position: absolute !important; + } + .fas, .fas::before { + z-index: 3 !important; + } + + button.fade { + z-index: 3; + } + .avatar { + z-index: 2 !important; + } + .ticker { + height: 25px !important; + position: absolute; + bottom: 10px; + right: 10px; + border-radius: 100px; + z-index: 2; + overflow: visible; + img { + width: 25px !important; + height: 25px !important; + } + span { + position: absolute; + right: 100%; + height: 25px !important; + white-space: nowrap; + // font-weight: 500 !important; + display: inline-flex; + // margin-right: 4px; + align-items: center; + background: inherit; + font-size: .7em !important; + padding: 0px 8px; + border-radius: 4px; + transform: scale(.9) translateX(5%); + opacity: 0; + pointer-events: none; + transition: transform .1s, opacity .1s; + } + &:hover { + span { + transform: none; + opacity: 1; + } + } + } + + .text, .body, .content { + pointer-events: none; + max-height: 9999px; + transition: mask .2s, max-height 2s; + *:not(div):not(blockquotes) { + pointer-events: all !important; + } + } + .content.collapsed { + + .text { + mask: linear-gradient(black, black, rgba(0,0,0,0.5), transparent); + max-height: 150px; + } + .fade { + background: none !important; + } + + } + + // Reply Button + a.reply { + display: none; + } + + &.article { + padding-bottom: 5px !important; + .avatar { + transform: scale(.9) !important; + } + .header { + margin-bottom: .2em; + } + .files { + margin-top: .7em; + } + .footer { + margin-top: .1em; + } + + } + + &:not(.reply-to), ._isolated & { + .cw > ._button { + display: block; + width: 100% !important; + background: none; + color: inherit; + padding: 10px; + // border-radius: var(--radius); + font-size: .9em; + margin-left: -85px; + width: calc(100% + 100px) !important; + transition: background .2s; + text-align: left; + padding-left: 85px; + &:hover { + background-color: var(--listItemHoverBg); + } + } + .avatar { + margin-right: 10px !important; + } + .poll { + font-size: .9em !important; + margin-top: 1em; + ul > li { + padding: 8px 12px !important; + font-weight: 700; + span { + display: flex; + align-items: center; + .votes { + margin-left: auto; + // font-weight: 500; + opacity: .7; + } + } + .backdrop { + border-radius: 4px; + } + } + } + } + ._isolated & { + &.article { + padding: 20px !important; + padding-bottom: 5px !important; + & > header > .avatar { + margin-right: -5px !important; + } + .text { + font-size: 1.3em !important; + } + .gird-container { + &::before { + content: unset; + } + & > div { + position: relative !important; + max-height: 80vh; + } + } + time { + position: relative; + } + } + + &.reply-to, &.reply-to-more { + padding: 14px 18px !important; + border-bottom: 1px solid var(--divider); + } + &.children, &.article + .reply { + &.children { + padding-right: 0 !important; + padding-bottom: 0 !important; + background: none !important; + } + + } + details { + display: contents; + summary { + display: none; + } + } + } + :not(._isolated) > &.reply-to { + &::before { + content: ""; + position: absolute; + right: 100%; + margin-right: -15px; + margin-top: 2px; + border-top-left-radius: 12px; + top: 50%; + height: 200%; + width: 41px; + border-top: 4px solid currentColor; + border-left: 4px solid currentColor; + opacity: .5; + } + &, .widgets & { + display: flex; + flex-grow: 1; + padding-bottom: 0 !important; + background: none !important; + margin-bottom: 5px !important; + position: relative !important; + z-index: 2 !important; + margin-left: 70px !important; + font-size: .8em !important; + opacity: .8 !important; + &:hover { + opacity: 1 !important; + } + & ~ .article { + margin-top: calc(-1em - 25px) !important; + padding-top: calc(1em + 25px) !important; + } + & ~ .renote, & ~ .info { + margin-bottom: -.7em !important; + order: -1 !important; + } + & ~ .renote ~ .article { + margin-top: calc(-3em - 30px) !important; + padding-top: calc(3em + 30px) !important; + } + .main { + flex-grow: 1; + } + .avatar { + height: 1.2em !important; + width: 1.2em !important; + } + .name { + max-width: 20%; + z-index: 4 !important; + } + .cw { + display: flex !important; + } + .body, header { + display: contents; + .content { + display: flex; + flex-grow: 1; + } + .username { + display: none; + } + .info { + margin-left: 1em; + order: 2; + z-index: 3; + } + .text { + display: flex; + width: 0; + // overflow: hidden; + white-space: nowrap; + flex-grow: 1 !important; + } + .reply { + margin: 0 .5em !important; + padding: 0 !important; + } + span, summary { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + height: 1rem !important; + font-size: 1em !important; + [href^="/@"] { + margin: -1em 0 !important; + } + br { + display: none; + & + a { + margin-left: .2em; + } + } + img { + height: 1rem !important; + width: 1rem !important; + } + } + summary { + margin-left: 10px; + } + } + } + } + .widget & { + .avatar { + width: 1.2rem !important; + height: 1.2rem !important; + position: relative !important; + top: 0 !important; + } + & > .main { + margin-left: -1.8rem; + .header { + margin-left: 1.6rem; + } + } + &.reply-to.reply-to { + margin-left: 3.4rem !important; + &::before { + // content: unset; + margin-top: 4px; + border-width: 3px; + margin-right: 1rem !important; + width: 1rem; + height: 1.5em; + } + } + } + } +} + +if profile { + /*** BETTER PROFILES ***/ + .narrow { + position: relative; + } + .profile { + margin-bottom: var(--margin); + .banner { + background-color: transparent !important; + } + .description { + margin-top: 30px !important; + padding: 24px !important; + text-align: left !important; + } + .status { + position: absolute; + top: 250px; + left: 144px; + padding: 0px !important; + a { + padding: 12px; + b { + margin-right: .5em; + line-height: 1em !important; + display: inline !important; + } + span { + opacity: .8; + font-size: 1em !important; + } + } + } + .fields { + display: flex; + flex-wrap: wrap; + padding: 0 24px !important; + border: 0 !important; + padding-bottom: 24px !important; + .field { + background-color: var(--panelHighlight); + border-radius: 1em; + margin: 0 .5em .5em 0 !important; + font-size: .9em; + & > * { + padding: 6px 10px; + } + .name { + width: auto !important; + } + .value { + width: auto !important; + padding-left: 0; + a[rel*="nofollow"] { + margin: -6px -10px; + margin-left: 0; + padding: 6px 10px; + display: flex; + position: relative; + &::before { + content: ""; + position: absolute; + inset: 0; + background-color: var(--link); + border-radius: var(--radius); + opacity: .1; + } + .fa-external-link-square-alt { + display: none; + } + } + } + } + &.system { + margin-top: -24px; + padding-top: 1em !important; + padding-bottom: .5em !important; + .field { + background: none; + opacity: .8; + max-width: 300px !important; + font-size: 1em; + padding-right: 10px !important; + & > * { + padding: 0; + &.name { + min-width: max-content; + padding-right: .4rem; + font-weight: 500 !important; + font-size: 0; + i { + font-size: .9rem; + } + } + } + } + } + } + & ~ .contents { + position: relative; + } + & ~ .contents > div > ._panel { + & { + .content.omitted { + & > div { + padding-inline: 0; + } + .stream { + display: flex; + overflow-x: auto; + // scroll-snap-type: x mandatory; + scroll-padding: 24px; + padding-left: 24px; + scrollbar-color: transparent transparent; + mask: linear-gradient(to right, black calc(100% - 400px), rgba(0,0,0,0.4), transparent); + a { + min-width: max-content; + scroll-snap-align: start; + height: 100px; + } + } + button.fade { + background: linear-gradient(to right, transparent, var(--panel)); + background: none; + top: 0; + bottom: 0; + right: 0; + left: unset; + height: unset; + width: auto; + padding: 24px; + } + } + .content:not(.omitted) { + padding: 0 14px !important; + padding: 0 !important; + padding-top: 14px !important; + & > div { + padding: 0; + } + .stream { + display: flex; + flex-wrap: wrap; + a { + flex-grow: 1; + height: auto; + max-height: 60vh; + border-radius: 0; + } + } + .empty { display: none; } + } + } + } + } +} + +if mentions { + /*** READABLE MENTIONS ***/ + a[href^="/@"][style^="background:"] { + color: inherit !important; + padding: .15em .35em; + padding-left: .2em; + margin: -.15em 0; + img { + height: 1.3em !important; + width: 1.3em !important; + } + span { + opacity: 1 !important; + } + } +} + + +if fixes { + /*** MINOR FIXES ***/ + // Block Headers + header._button { + padding: 0 15px !important; + } + + // Add rounded corners to sticky headers + .mk-app:not(.wallpaper) .tab[style*="--stickyTop:"] { + margin-bottom: 0 !important; + &::after, &::before { + content: ""; + position: absolute; + top: 100%; + width: calc(var(--radius) * 2); + height: calc(var(--radius) * 2);; + border-top-left-radius: var(--radius); + box-shadow: -4px -4px 0 var(--bg); + } + &::after { + right: 0; + box-shadow: 4px -4px 0 var(--bg); + border-top-left-radius: 0; + border-top-right-radius: var(--radius); + } + } +} + + + +} \ No newline at end of file diff --git a/misskey/readme.md b/misskey/readme.md new file mode 100644 index 0000000..453677a --- /dev/null +++ b/misskey/readme.md @@ -0,0 +1,18 @@ +# Misskey Tweaks +A collection of tweaks that aim to make Misskey less cluttered. +| ![Profile Page](/images/mktweaks_profile.png) | ![Posts](/images/mktweaks_posts.png) | ![Gitea Modern Profile Page](/images/mktweaks_mobile.png) +|---|---|---| + +**Note:** The [Stylus browser extension](https://add0n.com/stylus.html) and [Stylus preprocessor](https://stylus-lang.com/) are two different things. + +### Apply to any instance by [easily managing the snippets using Stylus](https://example.com/) +#### Or, add the snippets directly to Misskey: +1. Find the snippet you want to add in the snippets folder of this repo, copy its contents +2. In Misskey, navigate to `Settings > Themes > Install a theme` +3. Paste the contents of the file into the textbox +4. Click Install! + +### Contributing +To make changes, find the tweak you want to edit inside of [`mktweaks.user.css`](mk-tweaks.user.css), which uses the [Stylus preprocessor](https://stylus-lang.com/). Don't edit anything else outside of the if statements. Please only change one tweak at a time when making a pull request. + +If you want, you can then copy & paste the code into https://stylus-lang.com/try.html, and paste the output into the corresponding `.css` file inside of the tweaks folder. \ No newline at end of file diff --git a/misskey/tweaks/better-custom-wallpaper.css b/misskey/tweaks/better-custom-wallpaper.css new file mode 100644 index 0000000..30df4fc --- /dev/null +++ b/misskey/tweaks/better-custom-wallpaper.css @@ -0,0 +1,138 @@ +/*** BETTER CUSTOM WALLPAPER ***/ +.mk-app.wallpaper { + background: none !important; +} +.mk-app.wallpaper::before { + content: ""; + position: fixed; + inset: 0px; + background-color: var(--bg); + opacity: 0.85; + pointer-events: none; + z-index: -1; +} +.mk-app.wallpaper .sidebar { + z-index: 3; +} +.mk-app.wallpaper .sidebar .nav { + border-right-color: transparent; +} +.mk-app.wallpaper .contents { + background: none !important; +} +.mk-app.wallpaper main { + overflow: visible !important; + position: relative; + background: none !important; + border-color: transparent !important; + --bg: transparent; + --X17: transparent; +} +.mk-app.wallpaper main .tl { + overflow: visible; +} +.mk-app.wallpaper main .fdidabkb + div > div > div > div { + overflow: visible; + position: relative; + min-height: calc(100vh - 50px); + backdrop-filter: blur(10px); +} +.mk-app.wallpaper main .fdidabkb + div > div > div > div::before, +.mk-app.wallpaper main .fdidabkb + div > div > div > div::after { + content: ""; + position: absolute; + top: -9999px; + bottom: 0; + right: 100%; + left: -100vw; + background-color: rgba(0,0,0,0.2); + pointer-events: none !important; + z-index: -1; + box-shadow: 0 100vw 0 rgba(0,0,0,0.2); +} +.mk-app.wallpaper main .fdidabkb + div > div > div > div::after { + right: 0; + background: none; + box-shadow: 100vw 100vh 0 rgba(0,0,0,0.2); +} +.mk-app.wallpaper main .notes, +.mk-app.wallpaper main ._block, +.mk-app.wallpaper main ._card, +.mk-app.wallpaper main ._panel, +.mk-app.wallpaper main .elsfgstc, +.mk-app.wallpaper main .fcuexfpr, +.mk-app.wallpaper main .qtqtichx, +.mk-app.wallpaper main .narrow { + background: none !important; + border-radius: 0 !important; +} +.mk-app.wallpaper .widgets { + border: 0 !important; + background: none !important; +} +.mk-app.wallpaper .post { + background: none !important; +} +.mk-app.wallpaper .widgets .widget, +.mk-app.wallpaper div.tab, +.mk-app.wallpaper .widget header, +.mk-app.wallpaper .ukygtjoj > header { + background: none !important; +} +.mk-app.wallpaper .widgets .widget::before, +.mk-app.wallpaper div.tab::before, +.mk-app.wallpaper .widget header::before, +.mk-app.wallpaper .ukygtjoj > header::before, +.mk-app.wallpaper .widgets .widget header::before, +.mk-app.wallpaper div.tab header::before, +.mk-app.wallpaper .widget header header::before, +.mk-app.wallpaper .ukygtjoj > header header::before { + content: ""; + position: absolute; + inset: 0; + background: var(--panel); + opacity: 0.7 !important; + z-index: -1; + pointer-events: none; +} +.mk-app.wallpaper .widgets .widget::after, +.mk-app.wallpaper div.tab::after, +.mk-app.wallpaper .widget header::after, +.mk-app.wallpaper .ukygtjoj > header::after { + content: ""; + position: absolute; + inset: 0; + backdrop-filter: blur(10px); + z-index: -2; + pointer-events: none; +} +.mk-app.wallpaper .widgets .widget.tab, +.mk-app.wallpaper div.tab.tab, +.mk-app.wallpaper .widget header.tab, +.mk-app.wallpaper .ukygtjoj > header.tab { + padding-inline: 6px !important; +} +.mk-app.wallpaper .widgets .widget ._panel, +.mk-app.wallpaper div.tab ._panel, +.mk-app.wallpaper .widget header ._panel, +.mk-app.wallpaper .ukygtjoj > header ._panel, +.mk-app.wallpaper .widgets .widget .elsfgstc, +.mk-app.wallpaper div.tab .elsfgstc, +.mk-app.wallpaper .widget header .elsfgstc, +.mk-app.wallpaper .ukygtjoj > header .elsfgstc, +.mk-app.wallpaper .widgets .widget header, +.mk-app.wallpaper div.tab header, +.mk-app.wallpaper .widget header header, +.mk-app.wallpaper .ukygtjoj > header header { + background: none !important; +} +.mk-app.wallpaper .widgets .widget > header::before, +.mk-app.wallpaper div.tab > header::before, +.mk-app.wallpaper .widget header > header::before, +.mk-app.wallpaper .ukygtjoj > header > header::before { + opacity: 0.5; + backdrop-filter: blur(10px); +} +.mk-app.wallpaper .collapsed { + border-radius: var(--radius) !important; +} \ No newline at end of file diff --git a/misskey/tweaks/better-mobile-support.css b/misskey/tweaks/better-mobile-support.css new file mode 100644 index 0000000..b668edc --- /dev/null +++ b/misskey/tweaks/better-mobile-support.css @@ -0,0 +1,77 @@ +/*** BETTER MOBILE SUPPORT ***/ +.mk-app.isMobile main.main.main { + --margin: 0px; + margin-top: 50vh !important; +} +.mk-app.isMobile main.main.main::before, +.mk-app.isMobile main.main.main::after { + content: unset !important; +} +.mk-app.isMobile main.main.main [style="padding: 12px;"] { + padding: 0 !important; + margin: 0 !important; + width: 100% !important; +} +.mk-app.isMobile main.main.main [style="padding: 12px;"] ._block { + border-radius: 0 !important; +} +.mk-app.isMobile .fdidabkb { + position: fixed; + top: unset; + bottom: 65px; + left: 10px; + right: 10px; + width: unset !important; + border-radius: var(--radius); + border: 0; + padding-left: 20px; + z-index: 1001; + --height: 50px; +} +.mk-app.isMobile .fdidabkb .titleContainer { + margin-left: 0; +} +.mk-app.isMobile .fdidabkb .titleContainer .icon { + margin-left: 0 !important; +} +.mk-app.isMobile .fdidabkb .titleContainer .title { + margin: 0; + display: flex; + align-items: flex-end; + flex-grow: 1; + margin-right: 10px; +} +.mk-app.isMobile > .buttons { + padding: 0 !important; + background: linear-gradient(transparent, var(--bg)) !important; + height: 120px; + align-items: flex-end; + border: 0 !important; + backdrop-filter: none !important; +} +.mk-app.isMobile > .buttons button { + margin: 0 !important; + background: none !important; + height: 70px !important; +} +.mk-app.isMobile > .buttons button i { + font-size: 18px !important; +} +.mk-app.isMobile > .ccczpooj { + animation: none !important; +} +.mk-app.isMobile ._popup { + position: fixed; + bottom: 0; + left: 0; + right: 0; + top: unset !important; + max-height: 400px; + overflow-y: scroll; + scrollbar-width: none; + border-radius: var(--radius) var(--radius) 0 0 !important; + animation: none !important; +} +.mk-app.isMobile ._popup button { + padding: 12px 16px; +} \ No newline at end of file diff --git a/misskey/tweaks/better-posts.css b/misskey/tweaks/better-posts.css new file mode 100644 index 0000000..fa9d0e8 --- /dev/null +++ b/misskey/tweaks/better-posts.css @@ -0,0 +1,901 @@ +/*** BETTER POSTS ***/ +/* This one is probably the most horribly written. */ +.renote[tabindex], +.note._block { + display: flex; + flex-direction: column; +} +.renote > div { + position: relative !important; +} +.renote > .renote { + margin-left: 50px; + padding: 10px !important; + padding-bottom: 0 !important; + margin-bottom: -0.2em; + position: relative !important; + color: var(--text) !important; + font-weight: 600; + font-size: 0.8em; + opacity: 0.6; + z-index: 2; + max-width: 100%; +} +.renote > .renote .avatar, +.renote > .renote .info time { + display: none !important; +} +.renote > .renote ~ .article { + margin-top: calc(-1em - 25px) !important; + padding-top: calc(1em + 25px) !important; +} +.article, +.reply, +.reply-to, +.reply-to-more { + padding: 12px !important; + position: relative !important; + opacity: 1 !important; + transition: background-color 0.2s; + font-size: 1em !important; +} +.article:hover, +.reply:hover, +.reply-to:hover, +.reply-to-more:hover, +.article:focus-within, +.reply:focus-within, +.reply-to:focus-within, +.reply-to-more:focus-within, +._isolated .article.article, +._isolated .reply.article, +._isolated .reply-to.article, +._isolated .reply-to-more.article { + background-color: var(--listItemHoverBg); +} +.article .avatar img, +.reply .avatar img, +.reply-to .avatar img, +.reply-to-more .avatar img { + border-radius: 25% !important; +} +.article .username, +.reply .username, +.reply-to .username, +.reply-to-more .username, +.article .created-at, +.reply .created-at, +.reply-to .created-at, +.reply-to-more .created-at { + opacity: 0.6 !important; +} +.article .created-at::before, +.reply .created-at::before, +.reply-to .created-at::before, +.reply-to-more .created-at::before { + content: ""; + position: absolute; + inset: 0; + left: 0px; +} +.article .text, +.reply .text, +.reply-to .text, +.reply-to-more .text { + z-index: 2 !important; +} +.article .text span, +.reply .text span, +.reply-to .text span, +.reply-to-more .text span { + position: relative; + z-index: 2; +} +.article button:not(.fade), +.reply button:not(.fade), +.reply-to button:not(.fade), +.reply-to-more button:not(.fade), +.article a:not(.created-at):not(.avatar), +.reply a:not(.created-at):not(.avatar), +.reply-to a:not(.created-at):not(.avatar), +.reply-to-more a:not(.created-at):not(.avatar), +.article .files, +.reply .files, +.reply-to .files, +.reply-to-more .files { + position: relative !important; + z-index: 3 !important; +} +.article .cover + .text, +.reply .cover + .text, +.reply-to .cover + .text, +.reply-to-more .cover + .text { + position: absolute !important; +} +.article .fas, +.reply .fas, +.reply-to .fas, +.reply-to-more .fas, +.article .fas::before, +.reply .fas::before, +.reply-to .fas::before, +.reply-to-more .fas::before { + z-index: 3 !important; +} +.article button.fade, +.reply button.fade, +.reply-to button.fade, +.reply-to-more button.fade { + z-index: 3; +} +.article .avatar, +.reply .avatar, +.reply-to .avatar, +.reply-to-more .avatar { + z-index: 2 !important; +} +.article .ticker, +.reply .ticker, +.reply-to .ticker, +.reply-to-more .ticker { + height: 25px !important; + position: absolute; + bottom: 10px; + right: 10px; + border-radius: 100px; + z-index: 2; + overflow: visible; +} +.article .ticker img, +.reply .ticker img, +.reply-to .ticker img, +.reply-to-more .ticker img { + width: 25px !important; + height: 25px !important; +} +.article .ticker span, +.reply .ticker span, +.reply-to .ticker span, +.reply-to-more .ticker span { + position: absolute; + right: 100%; + height: 25px !important; + white-space: nowrap; + display: inline-flex; + align-items: center; + background: inherit; + font-size: 0.7em !important; + padding: 0px 8px; + border-radius: 4px; + transform: scale(0.9) translateX(5%); + opacity: 0; + pointer-events: none; + transition: transform 0.1s, opacity 0.1s; +} +.article .ticker:hover span, +.reply .ticker:hover span, +.reply-to .ticker:hover span, +.reply-to-more .ticker:hover span { + transform: none; + opacity: 1; +} +.article .text, +.reply .text, +.reply-to .text, +.reply-to-more .text, +.article .body, +.reply .body, +.reply-to .body, +.reply-to-more .body, +.article .content, +.reply .content, +.reply-to .content, +.reply-to-more .content { + pointer-events: none; + max-height: 9999px; + transition: mask 0.2s, max-height 2s; +} +.article .text *:not(div):not(blockquotes), +.reply .text *:not(div):not(blockquotes), +.reply-to .text *:not(div):not(blockquotes), +.reply-to-more .text *:not(div):not(blockquotes), +.article .body *:not(div):not(blockquotes), +.reply .body *:not(div):not(blockquotes), +.reply-to .body *:not(div):not(blockquotes), +.reply-to-more .body *:not(div):not(blockquotes), +.article .content *:not(div):not(blockquotes), +.reply .content *:not(div):not(blockquotes), +.reply-to .content *:not(div):not(blockquotes), +.reply-to-more .content *:not(div):not(blockquotes) { + pointer-events: all !important; +} +.article .content.collapsed .text, +.reply .content.collapsed .text, +.reply-to .content.collapsed .text, +.reply-to-more .content.collapsed .text { + mask: linear-gradient(#000, #000, rgba(0,0,0,0.5), transparent); + max-height: 150px; +} +.article .content.collapsed .fade, +.reply .content.collapsed .fade, +.reply-to .content.collapsed .fade, +.reply-to-more .content.collapsed .fade { + background: none !important; +} +.article a.reply, +.reply a.reply, +.reply-to a.reply, +.reply-to-more a.reply { + display: none; +} +.article.article, +.reply.article, +.reply-to.article, +.reply-to-more.article { + padding-bottom: 5px !important; +} +.article.article .avatar, +.reply.article .avatar, +.reply-to.article .avatar, +.reply-to-more.article .avatar { + transform: scale(0.9) !important; +} +.article.article .header, +.reply.article .header, +.reply-to.article .header, +.reply-to-more.article .header { + margin-bottom: 0.2em; +} +.article.article .files, +.reply.article .files, +.reply-to.article .files, +.reply-to-more.article .files { + margin-top: 0.7em; +} +.article.article .footer, +.reply.article .footer, +.reply-to.article .footer, +.reply-to-more.article .footer { + margin-top: 0.1em; +} +.article:not(.reply-to) .cw > ._button, +.reply:not(.reply-to) .cw > ._button, +.reply-to:not(.reply-to) .cw > ._button, +.reply-to-more:not(.reply-to) .cw > ._button, +._isolated .article .cw > ._button, +._isolated .reply .cw > ._button, +._isolated .reply-to .cw > ._button, +._isolated .reply-to-more .cw > ._button { + display: block; + width: 100% !important; + background: none; + color: inherit; + padding: 10px; + font-size: 0.9em; + margin-left: -85px; + width: calc(100% + 100px) !important; + transition: background 0.2s; + text-align: left; + padding-left: 85px; +} +.article:not(.reply-to) .cw > ._button:hover, +.reply:not(.reply-to) .cw > ._button:hover, +.reply-to:not(.reply-to) .cw > ._button:hover, +.reply-to-more:not(.reply-to) .cw > ._button:hover, +._isolated .article .cw > ._button:hover, +._isolated .reply .cw > ._button:hover, +._isolated .reply-to .cw > ._button:hover, +._isolated .reply-to-more .cw > ._button:hover { + background-color: var(--listItemHoverBg); +} +.article:not(.reply-to) .avatar, +.reply:not(.reply-to) .avatar, +.reply-to:not(.reply-to) .avatar, +.reply-to-more:not(.reply-to) .avatar, +._isolated .article .avatar, +._isolated .reply .avatar, +._isolated .reply-to .avatar, +._isolated .reply-to-more .avatar { + margin-right: 10px !important; +} +.article:not(.reply-to) .poll, +.reply:not(.reply-to) .poll, +.reply-to:not(.reply-to) .poll, +.reply-to-more:not(.reply-to) .poll, +._isolated .article .poll, +._isolated .reply .poll, +._isolated .reply-to .poll, +._isolated .reply-to-more .poll { + font-size: 0.9em !important; + margin-top: 1em; +} +.article:not(.reply-to) .poll ul > li, +.reply:not(.reply-to) .poll ul > li, +.reply-to:not(.reply-to) .poll ul > li, +.reply-to-more:not(.reply-to) .poll ul > li, +._isolated .article .poll ul > li, +._isolated .reply .poll ul > li, +._isolated .reply-to .poll ul > li, +._isolated .reply-to-more .poll ul > li { + padding: 8px 12px !important; + font-weight: 700; +} +.article:not(.reply-to) .poll ul > li span, +.reply:not(.reply-to) .poll ul > li span, +.reply-to:not(.reply-to) .poll ul > li span, +.reply-to-more:not(.reply-to) .poll ul > li span, +._isolated .article .poll ul > li span, +._isolated .reply .poll ul > li span, +._isolated .reply-to .poll ul > li span, +._isolated .reply-to-more .poll ul > li span { + display: flex; + align-items: center; +} +.article:not(.reply-to) .poll ul > li span .votes, +.reply:not(.reply-to) .poll ul > li span .votes, +.reply-to:not(.reply-to) .poll ul > li span .votes, +.reply-to-more:not(.reply-to) .poll ul > li span .votes, +._isolated .article .poll ul > li span .votes, +._isolated .reply .poll ul > li span .votes, +._isolated .reply-to .poll ul > li span .votes, +._isolated .reply-to-more .poll ul > li span .votes { + margin-left: auto; + opacity: 0.7; +} +.article:not(.reply-to) .poll ul > li .backdrop, +.reply:not(.reply-to) .poll ul > li .backdrop, +.reply-to:not(.reply-to) .poll ul > li .backdrop, +.reply-to-more:not(.reply-to) .poll ul > li .backdrop, +._isolated .article .poll ul > li .backdrop, +._isolated .reply .poll ul > li .backdrop, +._isolated .reply-to .poll ul > li .backdrop, +._isolated .reply-to-more .poll ul > li .backdrop { + border-radius: 4px; +} +._isolated .article.article, +._isolated .reply.article, +._isolated .reply-to.article, +._isolated .reply-to-more.article { + padding: 20px !important; + padding-bottom: 5px !important; +} +._isolated .article.article > header > .avatar, +._isolated .reply.article > header > .avatar, +._isolated .reply-to.article > header > .avatar, +._isolated .reply-to-more.article > header > .avatar { + margin-right: -5px !important; +} +._isolated .article.article .text, +._isolated .reply.article .text, +._isolated .reply-to.article .text, +._isolated .reply-to-more.article .text { + font-size: 1.3em !important; +} +._isolated .article.article .gird-container::before, +._isolated .reply.article .gird-container::before, +._isolated .reply-to.article .gird-container::before, +._isolated .reply-to-more.article .gird-container::before { + content: unset; +} +._isolated .article.article .gird-container > div, +._isolated .reply.article .gird-container > div, +._isolated .reply-to.article .gird-container > div, +._isolated .reply-to-more.article .gird-container > div { + position: relative !important; + max-height: 80vh; +} +._isolated .article.article time, +._isolated .reply.article time, +._isolated .reply-to.article time, +._isolated .reply-to-more.article time { + position: relative; +} +._isolated .article.reply-to, +._isolated .reply.reply-to, +._isolated .reply-to.reply-to, +._isolated .reply-to-more.reply-to, +._isolated .article.reply-to-more, +._isolated .reply.reply-to-more, +._isolated .reply-to.reply-to-more, +._isolated .reply-to-more.reply-to-more { + padding: 14px 18px !important; + border-bottom: 1px solid var(--divider); +} +._isolated .article.children.children, +._isolated .reply.children.children, +._isolated .reply-to.children.children, +._isolated .reply-to-more.children.children, +._isolated .article.article + .reply.children, +._isolated .reply.article + .reply.children, +._isolated .reply-to.article + .reply.children, +._isolated .reply-to-more.article + .reply.children { + padding-right: 0 !important; + padding-bottom: 0 !important; + background: none !important; +} +._isolated .article details, +._isolated .reply details, +._isolated .reply-to details, +._isolated .reply-to-more details { + display: contents; +} +._isolated .article details summary, +._isolated .reply details summary, +._isolated .reply-to details summary, +._isolated .reply-to-more details summary { + display: none; +} +:not(._isolated) > .article.reply-to::before, +:not(._isolated) > .reply.reply-to::before, +:not(._isolated) > .reply-to.reply-to::before, +:not(._isolated) > .reply-to-more.reply-to::before { + content: ""; + position: absolute; + right: 100%; + margin-right: -15px; + margin-top: 2px; + border-top-left-radius: 12px; + top: 50%; + height: 200%; + width: 41px; + border-top: 4px solid currentColor; + border-left: 4px solid currentColor; + opacity: 0.5; +} +:not(._isolated) > .article.reply-to, +:not(._isolated) > .reply.reply-to, +:not(._isolated) > .reply-to.reply-to, +:not(._isolated) > .reply-to-more.reply-to, +.widgets :not(._isolated) > .article.reply-to, +.widgets :not(._isolated) > .reply.reply-to, +.widgets :not(._isolated) > .reply-to.reply-to, +.widgets :not(._isolated) > .reply-to-more.reply-to { + display: flex; + flex-grow: 1; + padding-bottom: 0 !important; + background: none !important; + margin-bottom: 5px !important; + position: relative !important; + z-index: 2 !important; + margin-left: 70px !important; + font-size: 0.8em !important; + opacity: 0.8 !important; +} +:not(._isolated) > .article.reply-to:hover, +:not(._isolated) > .reply.reply-to:hover, +:not(._isolated) > .reply-to.reply-to:hover, +:not(._isolated) > .reply-to-more.reply-to:hover, +.widgets :not(._isolated) > .article.reply-to:hover, +.widgets :not(._isolated) > .reply.reply-to:hover, +.widgets :not(._isolated) > .reply-to.reply-to:hover, +.widgets :not(._isolated) > .reply-to-more.reply-to:hover { + opacity: 1 !important; +} +:not(._isolated) > .article.reply-to ~ .article, +:not(._isolated) > .reply.reply-to ~ .article, +:not(._isolated) > .reply-to.reply-to ~ .article, +:not(._isolated) > .reply-to-more.reply-to ~ .article, +.widgets :not(._isolated) > .article.reply-to ~ .article, +.widgets :not(._isolated) > .reply.reply-to ~ .article, +.widgets :not(._isolated) > .reply-to.reply-to ~ .article, +.widgets :not(._isolated) > .reply-to-more.reply-to ~ .article { + margin-top: calc(-1em - 25px) !important; + padding-top: calc(1em + 25px) !important; +} +:not(._isolated) > .article.reply-to ~ .renote, +:not(._isolated) > .reply.reply-to ~ .renote, +:not(._isolated) > .reply-to.reply-to ~ .renote, +:not(._isolated) > .reply-to-more.reply-to ~ .renote, +.widgets :not(._isolated) > .article.reply-to ~ .renote, +.widgets :not(._isolated) > .reply.reply-to ~ .renote, +.widgets :not(._isolated) > .reply-to.reply-to ~ .renote, +.widgets :not(._isolated) > .reply-to-more.reply-to ~ .renote, +:not(._isolated) > .article.reply-to ~ .info, +:not(._isolated) > .reply.reply-to ~ .info, +:not(._isolated) > .reply-to.reply-to ~ .info, +:not(._isolated) > .reply-to-more.reply-to ~ .info, +.widgets :not(._isolated) > .article.reply-to ~ .info, +.widgets :not(._isolated) > .reply.reply-to ~ .info, +.widgets :not(._isolated) > .reply-to.reply-to ~ .info, +.widgets :not(._isolated) > .reply-to-more.reply-to ~ .info { + margin-bottom: -0.7em !important; + order: -1 !important; +} +:not(._isolated) > .article.reply-to ~ .renote ~ .article, +:not(._isolated) > .reply.reply-to ~ .renote ~ .article, +:not(._isolated) > .reply-to.reply-to ~ .renote ~ .article, +:not(._isolated) > .reply-to-more.reply-to ~ .renote ~ .article, +.widgets :not(._isolated) > .article.reply-to ~ .renote ~ .article, +.widgets :not(._isolated) > .reply.reply-to ~ .renote ~ .article, +.widgets :not(._isolated) > .reply-to.reply-to ~ .renote ~ .article, +.widgets :not(._isolated) > .reply-to-more.reply-to ~ .renote ~ .article { + margin-top: calc(-3em - 30px) !important; + padding-top: calc(3em + 30px) !important; +} +:not(._isolated) > .article.reply-to .main, +:not(._isolated) > .reply.reply-to .main, +:not(._isolated) > .reply-to.reply-to .main, +:not(._isolated) > .reply-to-more.reply-to .main, +.widgets :not(._isolated) > .article.reply-to .main, +.widgets :not(._isolated) > .reply.reply-to .main, +.widgets :not(._isolated) > .reply-to.reply-to .main, +.widgets :not(._isolated) > .reply-to-more.reply-to .main { + flex-grow: 1; +} +:not(._isolated) > .article.reply-to .avatar, +:not(._isolated) > .reply.reply-to .avatar, +:not(._isolated) > .reply-to.reply-to .avatar, +:not(._isolated) > .reply-to-more.reply-to .avatar, +.widgets :not(._isolated) > .article.reply-to .avatar, +.widgets :not(._isolated) > .reply.reply-to .avatar, +.widgets :not(._isolated) > .reply-to.reply-to .avatar, +.widgets :not(._isolated) > .reply-to-more.reply-to .avatar { + height: 1.2em !important; + width: 1.2em !important; +} +:not(._isolated) > .article.reply-to .name, +:not(._isolated) > .reply.reply-to .name, +:not(._isolated) > .reply-to.reply-to .name, +:not(._isolated) > .reply-to-more.reply-to .name, +.widgets :not(._isolated) > .article.reply-to .name, +.widgets :not(._isolated) > .reply.reply-to .name, +.widgets :not(._isolated) > .reply-to.reply-to .name, +.widgets :not(._isolated) > .reply-to-more.reply-to .name { + max-width: 20%; + z-index: 4 !important; +} +:not(._isolated) > .article.reply-to .cw, +:not(._isolated) > .reply.reply-to .cw, +:not(._isolated) > .reply-to.reply-to .cw, +:not(._isolated) > .reply-to-more.reply-to .cw, +.widgets :not(._isolated) > .article.reply-to .cw, +.widgets :not(._isolated) > .reply.reply-to .cw, +.widgets :not(._isolated) > .reply-to.reply-to .cw, +.widgets :not(._isolated) > .reply-to-more.reply-to .cw { + display: flex !important; +} +:not(._isolated) > .article.reply-to .body, +:not(._isolated) > .reply.reply-to .body, +:not(._isolated) > .reply-to.reply-to .body, +:not(._isolated) > .reply-to-more.reply-to .body, +.widgets :not(._isolated) > .article.reply-to .body, +.widgets :not(._isolated) > .reply.reply-to .body, +.widgets :not(._isolated) > .reply-to.reply-to .body, +.widgets :not(._isolated) > .reply-to-more.reply-to .body, +:not(._isolated) > .article.reply-to header, +:not(._isolated) > .reply.reply-to header, +:not(._isolated) > .reply-to.reply-to header, +:not(._isolated) > .reply-to-more.reply-to header, +.widgets :not(._isolated) > .article.reply-to header, +.widgets :not(._isolated) > .reply.reply-to header, +.widgets :not(._isolated) > .reply-to.reply-to header, +.widgets :not(._isolated) > .reply-to-more.reply-to header { + display: contents; +} +:not(._isolated) > .article.reply-to .body .content, +:not(._isolated) > .reply.reply-to .body .content, +:not(._isolated) > .reply-to.reply-to .body .content, +:not(._isolated) > .reply-to-more.reply-to .body .content, +.widgets :not(._isolated) > .article.reply-to .body .content, +.widgets :not(._isolated) > .reply.reply-to .body .content, +.widgets :not(._isolated) > .reply-to.reply-to .body .content, +.widgets :not(._isolated) > .reply-to-more.reply-to .body .content, +:not(._isolated) > .article.reply-to header .content, +:not(._isolated) > .reply.reply-to header .content, +:not(._isolated) > .reply-to.reply-to header .content, +:not(._isolated) > .reply-to-more.reply-to header .content, +.widgets :not(._isolated) > .article.reply-to header .content, +.widgets :not(._isolated) > .reply.reply-to header .content, +.widgets :not(._isolated) > .reply-to.reply-to header .content, +.widgets :not(._isolated) > .reply-to-more.reply-to header .content { + display: flex; + flex-grow: 1; +} +:not(._isolated) > .article.reply-to .body .username, +:not(._isolated) > .reply.reply-to .body .username, +:not(._isolated) > .reply-to.reply-to .body .username, +:not(._isolated) > .reply-to-more.reply-to .body .username, +.widgets :not(._isolated) > .article.reply-to .body .username, +.widgets :not(._isolated) > .reply.reply-to .body .username, +.widgets :not(._isolated) > .reply-to.reply-to .body .username, +.widgets :not(._isolated) > .reply-to-more.reply-to .body .username, +:not(._isolated) > .article.reply-to header .username, +:not(._isolated) > .reply.reply-to header .username, +:not(._isolated) > .reply-to.reply-to header .username, +:not(._isolated) > .reply-to-more.reply-to header .username, +.widgets :not(._isolated) > .article.reply-to header .username, +.widgets :not(._isolated) > .reply.reply-to header .username, +.widgets :not(._isolated) > .reply-to.reply-to header .username, +.widgets :not(._isolated) > .reply-to-more.reply-to header .username { + display: none; +} +:not(._isolated) > .article.reply-to .body .info, +:not(._isolated) > .reply.reply-to .body .info, +:not(._isolated) > .reply-to.reply-to .body .info, +:not(._isolated) > .reply-to-more.reply-to .body .info, +.widgets :not(._isolated) > .article.reply-to .body .info, +.widgets :not(._isolated) > .reply.reply-to .body .info, +.widgets :not(._isolated) > .reply-to.reply-to .body .info, +.widgets :not(._isolated) > .reply-to-more.reply-to .body .info, +:not(._isolated) > .article.reply-to header .info, +:not(._isolated) > .reply.reply-to header .info, +:not(._isolated) > .reply-to.reply-to header .info, +:not(._isolated) > .reply-to-more.reply-to header .info, +.widgets :not(._isolated) > .article.reply-to header .info, +.widgets :not(._isolated) > .reply.reply-to header .info, +.widgets :not(._isolated) > .reply-to.reply-to header .info, +.widgets :not(._isolated) > .reply-to-more.reply-to header .info { + margin-left: 1em; + order: 2; + z-index: 3; +} +:not(._isolated) > .article.reply-to .body .text, +:not(._isolated) > .reply.reply-to .body .text, +:not(._isolated) > .reply-to.reply-to .body .text, +:not(._isolated) > .reply-to-more.reply-to .body .text, +.widgets :not(._isolated) > .article.reply-to .body .text, +.widgets :not(._isolated) > .reply.reply-to .body .text, +.widgets :not(._isolated) > .reply-to.reply-to .body .text, +.widgets :not(._isolated) > .reply-to-more.reply-to .body .text, +:not(._isolated) > .article.reply-to header .text, +:not(._isolated) > .reply.reply-to header .text, +:not(._isolated) > .reply-to.reply-to header .text, +:not(._isolated) > .reply-to-more.reply-to header .text, +.widgets :not(._isolated) > .article.reply-to header .text, +.widgets :not(._isolated) > .reply.reply-to header .text, +.widgets :not(._isolated) > .reply-to.reply-to header .text, +.widgets :not(._isolated) > .reply-to-more.reply-to header .text { + display: flex; + width: 0; + white-space: nowrap; + flex-grow: 1 !important; +} +:not(._isolated) > .article.reply-to .body .reply, +:not(._isolated) > .reply.reply-to .body .reply, +:not(._isolated) > .reply-to.reply-to .body .reply, +:not(._isolated) > .reply-to-more.reply-to .body .reply, +.widgets :not(._isolated) > .article.reply-to .body .reply, +.widgets :not(._isolated) > .reply.reply-to .body .reply, +.widgets :not(._isolated) > .reply-to.reply-to .body .reply, +.widgets :not(._isolated) > .reply-to-more.reply-to .body .reply, +:not(._isolated) > .article.reply-to header .reply, +:not(._isolated) > .reply.reply-to header .reply, +:not(._isolated) > .reply-to.reply-to header .reply, +:not(._isolated) > .reply-to-more.reply-to header .reply, +.widgets :not(._isolated) > .article.reply-to header .reply, +.widgets :not(._isolated) > .reply.reply-to header .reply, +.widgets :not(._isolated) > .reply-to.reply-to header .reply, +.widgets :not(._isolated) > .reply-to-more.reply-to header .reply { + margin: 0 0.5em !important; + padding: 0 !important; +} +:not(._isolated) > .article.reply-to .body span, +:not(._isolated) > .reply.reply-to .body span, +:not(._isolated) > .reply-to.reply-to .body span, +:not(._isolated) > .reply-to-more.reply-to .body span, +.widgets :not(._isolated) > .article.reply-to .body span, +.widgets :not(._isolated) > .reply.reply-to .body span, +.widgets :not(._isolated) > .reply-to.reply-to .body span, +.widgets :not(._isolated) > .reply-to-more.reply-to .body span, +:not(._isolated) > .article.reply-to header span, +:not(._isolated) > .reply.reply-to header span, +:not(._isolated) > .reply-to.reply-to header span, +:not(._isolated) > .reply-to-more.reply-to header span, +.widgets :not(._isolated) > .article.reply-to header span, +.widgets :not(._isolated) > .reply.reply-to header span, +.widgets :not(._isolated) > .reply-to.reply-to header span, +.widgets :not(._isolated) > .reply-to-more.reply-to header span, +:not(._isolated) > .article.reply-to .body summary, +:not(._isolated) > .reply.reply-to .body summary, +:not(._isolated) > .reply-to.reply-to .body summary, +:not(._isolated) > .reply-to-more.reply-to .body summary, +.widgets :not(._isolated) > .article.reply-to .body summary, +.widgets :not(._isolated) > .reply.reply-to .body summary, +.widgets :not(._isolated) > .reply-to.reply-to .body summary, +.widgets :not(._isolated) > .reply-to-more.reply-to .body summary, +:not(._isolated) > .article.reply-to header summary, +:not(._isolated) > .reply.reply-to header summary, +:not(._isolated) > .reply-to.reply-to header summary, +:not(._isolated) > .reply-to-more.reply-to header summary, +.widgets :not(._isolated) > .article.reply-to header summary, +.widgets :not(._isolated) > .reply.reply-to header summary, +.widgets :not(._isolated) > .reply-to.reply-to header summary, +.widgets :not(._isolated) > .reply-to-more.reply-to header summary { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + height: 1rem !important; + font-size: 1em !important; +} +:not(._isolated) > .article.reply-to .body span [href^="/@"], +:not(._isolated) > .reply.reply-to .body span [href^="/@"], +:not(._isolated) > .reply-to.reply-to .body span [href^="/@"], +:not(._isolated) > .reply-to-more.reply-to .body span [href^="/@"], +.widgets :not(._isolated) > .article.reply-to .body span [href^="/@"], +.widgets :not(._isolated) > .reply.reply-to .body span [href^="/@"], +.widgets :not(._isolated) > .reply-to.reply-to .body span [href^="/@"], +.widgets :not(._isolated) > .reply-to-more.reply-to .body span [href^="/@"], +:not(._isolated) > .article.reply-to header span [href^="/@"], +:not(._isolated) > .reply.reply-to header span [href^="/@"], +:not(._isolated) > .reply-to.reply-to header span [href^="/@"], +:not(._isolated) > .reply-to-more.reply-to header span [href^="/@"], +.widgets :not(._isolated) > .article.reply-to header span [href^="/@"], +.widgets :not(._isolated) > .reply.reply-to header span [href^="/@"], +.widgets :not(._isolated) > .reply-to.reply-to header span [href^="/@"], +.widgets :not(._isolated) > .reply-to-more.reply-to header span [href^="/@"], +:not(._isolated) > .article.reply-to .body summary [href^="/@"], +:not(._isolated) > .reply.reply-to .body summary [href^="/@"], +:not(._isolated) > .reply-to.reply-to .body summary [href^="/@"], +:not(._isolated) > .reply-to-more.reply-to .body summary [href^="/@"], +.widgets :not(._isolated) > .article.reply-to .body summary [href^="/@"], +.widgets :not(._isolated) > .reply.reply-to .body summary [href^="/@"], +.widgets :not(._isolated) > .reply-to.reply-to .body summary [href^="/@"], +.widgets :not(._isolated) > .reply-to-more.reply-to .body summary [href^="/@"], +:not(._isolated) > .article.reply-to header summary [href^="/@"], +:not(._isolated) > .reply.reply-to header summary [href^="/@"], +:not(._isolated) > .reply-to.reply-to header summary [href^="/@"], +:not(._isolated) > .reply-to-more.reply-to header summary [href^="/@"], +.widgets :not(._isolated) > .article.reply-to header summary [href^="/@"], +.widgets :not(._isolated) > .reply.reply-to header summary [href^="/@"], +.widgets :not(._isolated) > .reply-to.reply-to header summary [href^="/@"], +.widgets :not(._isolated) > .reply-to-more.reply-to header summary [href^="/@"] { + margin: -1em 0 !important; +} +:not(._isolated) > .article.reply-to .body span br, +:not(._isolated) > .reply.reply-to .body span br, +:not(._isolated) > .reply-to.reply-to .body span br, +:not(._isolated) > .reply-to-more.reply-to .body span br, +.widgets :not(._isolated) > .article.reply-to .body span br, +.widgets :not(._isolated) > .reply.reply-to .body span br, +.widgets :not(._isolated) > .reply-to.reply-to .body span br, +.widgets :not(._isolated) > .reply-to-more.reply-to .body span br, +:not(._isolated) > .article.reply-to header span br, +:not(._isolated) > .reply.reply-to header span br, +:not(._isolated) > .reply-to.reply-to header span br, +:not(._isolated) > .reply-to-more.reply-to header span br, +.widgets :not(._isolated) > .article.reply-to header span br, +.widgets :not(._isolated) > .reply.reply-to header span br, +.widgets :not(._isolated) > .reply-to.reply-to header span br, +.widgets :not(._isolated) > .reply-to-more.reply-to header span br, +:not(._isolated) > .article.reply-to .body summary br, +:not(._isolated) > .reply.reply-to .body summary br, +:not(._isolated) > .reply-to.reply-to .body summary br, +:not(._isolated) > .reply-to-more.reply-to .body summary br, +.widgets :not(._isolated) > .article.reply-to .body summary br, +.widgets :not(._isolated) > .reply.reply-to .body summary br, +.widgets :not(._isolated) > .reply-to.reply-to .body summary br, +.widgets :not(._isolated) > .reply-to-more.reply-to .body summary br, +:not(._isolated) > .article.reply-to header summary br, +:not(._isolated) > .reply.reply-to header summary br, +:not(._isolated) > .reply-to.reply-to header summary br, +:not(._isolated) > .reply-to-more.reply-to header summary br, +.widgets :not(._isolated) > .article.reply-to header summary br, +.widgets :not(._isolated) > .reply.reply-to header summary br, +.widgets :not(._isolated) > .reply-to.reply-to header summary br, +.widgets :not(._isolated) > .reply-to-more.reply-to header summary br { + display: none; +} +:not(._isolated) > .article.reply-to .body span br + a, +:not(._isolated) > .reply.reply-to .body span br + a, +:not(._isolated) > .reply-to.reply-to .body span br + a, +:not(._isolated) > .reply-to-more.reply-to .body span br + a, +.widgets :not(._isolated) > .article.reply-to .body span br + a, +.widgets :not(._isolated) > .reply.reply-to .body span br + a, +.widgets :not(._isolated) > .reply-to.reply-to .body span br + a, +.widgets :not(._isolated) > .reply-to-more.reply-to .body span br + a, +:not(._isolated) > .article.reply-to header span br + a, +:not(._isolated) > .reply.reply-to header span br + a, +:not(._isolated) > .reply-to.reply-to header span br + a, +:not(._isolated) > .reply-to-more.reply-to header span br + a, +.widgets :not(._isolated) > .article.reply-to header span br + a, +.widgets :not(._isolated) > .reply.reply-to header span br + a, +.widgets :not(._isolated) > .reply-to.reply-to header span br + a, +.widgets :not(._isolated) > .reply-to-more.reply-to header span br + a, +:not(._isolated) > .article.reply-to .body summary br + a, +:not(._isolated) > .reply.reply-to .body summary br + a, +:not(._isolated) > .reply-to.reply-to .body summary br + a, +:not(._isolated) > .reply-to-more.reply-to .body summary br + a, +.widgets :not(._isolated) > .article.reply-to .body summary br + a, +.widgets :not(._isolated) > .reply.reply-to .body summary br + a, +.widgets :not(._isolated) > .reply-to.reply-to .body summary br + a, +.widgets :not(._isolated) > .reply-to-more.reply-to .body summary br + a, +:not(._isolated) > .article.reply-to header summary br + a, +:not(._isolated) > .reply.reply-to header summary br + a, +:not(._isolated) > .reply-to.reply-to header summary br + a, +:not(._isolated) > .reply-to-more.reply-to header summary br + a, +.widgets :not(._isolated) > .article.reply-to header summary br + a, +.widgets :not(._isolated) > .reply.reply-to header summary br + a, +.widgets :not(._isolated) > .reply-to.reply-to header summary br + a, +.widgets :not(._isolated) > .reply-to-more.reply-to header summary br + a { + margin-left: 0.2em; +} +:not(._isolated) > .article.reply-to .body span img, +:not(._isolated) > .reply.reply-to .body span img, +:not(._isolated) > .reply-to.reply-to .body span img, +:not(._isolated) > .reply-to-more.reply-to .body span img, +.widgets :not(._isolated) > .article.reply-to .body span img, +.widgets :not(._isolated) > .reply.reply-to .body span img, +.widgets :not(._isolated) > .reply-to.reply-to .body span img, +.widgets :not(._isolated) > .reply-to-more.reply-to .body span img, +:not(._isolated) > .article.reply-to header span img, +:not(._isolated) > .reply.reply-to header span img, +:not(._isolated) > .reply-to.reply-to header span img, +:not(._isolated) > .reply-to-more.reply-to header span img, +.widgets :not(._isolated) > .article.reply-to header span img, +.widgets :not(._isolated) > .reply.reply-to header span img, +.widgets :not(._isolated) > .reply-to.reply-to header span img, +.widgets :not(._isolated) > .reply-to-more.reply-to header span img, +:not(._isolated) > .article.reply-to .body summary img, +:not(._isolated) > .reply.reply-to .body summary img, +:not(._isolated) > .reply-to.reply-to .body summary img, +:not(._isolated) > .reply-to-more.reply-to .body summary img, +.widgets :not(._isolated) > .article.reply-to .body summary img, +.widgets :not(._isolated) > .reply.reply-to .body summary img, +.widgets :not(._isolated) > .reply-to.reply-to .body summary img, +.widgets :not(._isolated) > .reply-to-more.reply-to .body summary img, +:not(._isolated) > .article.reply-to header summary img, +:not(._isolated) > .reply.reply-to header summary img, +:not(._isolated) > .reply-to.reply-to header summary img, +:not(._isolated) > .reply-to-more.reply-to header summary img, +.widgets :not(._isolated) > .article.reply-to header summary img, +.widgets :not(._isolated) > .reply.reply-to header summary img, +.widgets :not(._isolated) > .reply-to.reply-to header summary img, +.widgets :not(._isolated) > .reply-to-more.reply-to header summary img { + height: 1rem !important; + width: 1rem !important; +} +:not(._isolated) > .article.reply-to .body summary, +:not(._isolated) > .reply.reply-to .body summary, +:not(._isolated) > .reply-to.reply-to .body summary, +:not(._isolated) > .reply-to-more.reply-to .body summary, +.widgets :not(._isolated) > .article.reply-to .body summary, +.widgets :not(._isolated) > .reply.reply-to .body summary, +.widgets :not(._isolated) > .reply-to.reply-to .body summary, +.widgets :not(._isolated) > .reply-to-more.reply-to .body summary, +:not(._isolated) > .article.reply-to header summary, +:not(._isolated) > .reply.reply-to header summary, +:not(._isolated) > .reply-to.reply-to header summary, +:not(._isolated) > .reply-to-more.reply-to header summary, +.widgets :not(._isolated) > .article.reply-to header summary, +.widgets :not(._isolated) > .reply.reply-to header summary, +.widgets :not(._isolated) > .reply-to.reply-to header summary, +.widgets :not(._isolated) > .reply-to-more.reply-to header summary { + margin-left: 10px; +} +.widget .article .avatar, +.widget .reply .avatar, +.widget .reply-to .avatar, +.widget .reply-to-more .avatar { + width: 1.2rem !important; + height: 1.2rem !important; + position: relative !important; + top: 0 !important; +} +.widget .article > .main, +.widget .reply > .main, +.widget .reply-to > .main, +.widget .reply-to-more > .main { + margin-left: -1.8rem; +} +.widget .article > .main .header, +.widget .reply > .main .header, +.widget .reply-to > .main .header, +.widget .reply-to-more > .main .header { + margin-left: 1.6rem; +} +.widget .article.reply-to.reply-to, +.widget .reply.reply-to.reply-to, +.widget .reply-to.reply-to.reply-to, +.widget .reply-to-more.reply-to.reply-to { + margin-left: 3.4rem !important; +} +.widget .article.reply-to.reply-to::before, +.widget .reply.reply-to.reply-to::before, +.widget .reply-to.reply-to.reply-to::before, +.widget .reply-to-more.reply-to.reply-to::before { + margin-top: 4px; + border-width: 3px; + margin-right: 1rem !important; + width: 1rem; + height: 1.5em; +} \ No newline at end of file diff --git a/misskey/tweaks/better-profiles.css b/misskey/tweaks/better-profiles.css new file mode 100644 index 0000000..386e6cf --- /dev/null +++ b/misskey/tweaks/better-profiles.css @@ -0,0 +1,149 @@ +/*** BETTER PROFILES ***/ +.narrow { + position: relative; +} +.profile { + margin-bottom: var(--margin); +} +.profile .banner { + background-color: transparent !important; +} +.profile .description { + margin-top: 30px !important; + padding: 24px !important; + text-align: left !important; +} +.profile .status { + position: absolute; + top: 250px; + left: 144px; + padding: 0px !important; +} +.profile .status a { + padding: 12px; +} +.profile .status a b { + margin-right: 0.5em; + line-height: 1em !important; + display: inline !important; +} +.profile .status a span { + opacity: 0.8; + font-size: 1em !important; +} +.profile .fields { + display: flex; + flex-wrap: wrap; + padding: 0 24px !important; + border: 0 !important; + padding-bottom: 24px !important; +} +.profile .fields .field { + background-color: var(--panelHighlight); + border-radius: 1em; + margin: 0 0.5em 0.5em 0 !important; + font-size: 0.9em; +} +.profile .fields .field > * { + padding: 6px 10px; +} +.profile .fields .field .name { + width: auto !important; +} +.profile .fields .field .value { + width: auto !important; + padding-left: 0; +} +.profile .fields .field .value a[rel*="nofollow"] { + margin: -6px -10px; + margin-left: 0; + padding: 6px 10px; + display: flex; + position: relative; +} +.profile .fields .field .value a[rel*="nofollow"]::before { + content: ""; + position: absolute; + inset: 0; + background-color: var(--link); + border-radius: var(--radius); + opacity: 0.1; +} +.profile .fields .field .value a[rel*="nofollow"] .fa-external-link-square-alt { + display: none; +} +.profile .fields.system { + margin-top: -24px; + padding-top: 1em !important; + padding-bottom: 0.5em !important; +} +.profile .fields.system .field { + background: none; + opacity: 0.8; + max-width: 300px !important; + font-size: 1em; + padding-right: 10px !important; +} +.profile .fields.system .field > * { + padding: 0; +} +.profile .fields.system .field > *.name { + min-width: max-content; + padding-right: 0.4rem; + font-weight: 500 !important; + font-size: 0; +} +.profile .fields.system .field > *.name i { + font-size: 0.9rem; +} +.profile ~ .contents { + position: relative; +} +.profile ~ .contents > div > ._panel .content.omitted > div { + padding-inline: 0; +} +.profile ~ .contents > div > ._panel .content.omitted .stream { + display: flex; + overflow-x: auto; + scroll-padding: 24px; + padding-left: 24px; + scrollbar-color: transparent transparent; + mask: linear-gradient(to right, #000 calc(100% - 400px), rgba(0,0,0,0.4), transparent); +} +.profile ~ .contents > div > ._panel .content.omitted .stream a { + min-width: max-content; + scroll-snap-align: start; + height: 100px; +} +.profile ~ .contents > div > ._panel .content.omitted button.fade { + background: linear-gradient(to right, transparent, var(--panel)); + background: none; + top: 0; + bottom: 0; + right: 0; + left: unset; + height: unset; + width: auto; + padding: 24px; +} +.profile ~ .contents > div > ._panel .content:not(.omitted) { + padding: 0 14px !important; + padding: 0 !important; + padding-top: 14px !important; +} +.profile ~ .contents > div > ._panel .content:not(.omitted) > div { + padding: 0; +} +.profile ~ .contents > div > ._panel .content:not(.omitted) .stream { + display: flex; + flex-wrap: wrap; +} +.profile ~ .contents > div > ._panel .content:not(.omitted) .stream a { + flex-grow: 1; + height: auto; + max-height: 60vh; + border-radius: 0; +} +.profile ~ .contents > div > ._panel .content:not(.omitted) .empty { + display: none; +} \ No newline at end of file diff --git a/misskey/tweaks/better-sidebar.css b/misskey/tweaks/better-sidebar.css new file mode 100644 index 0000000..7db8ab2 --- /dev/null +++ b/misskey/tweaks/better-sidebar.css @@ -0,0 +1,55 @@ +/*** Better Sidebar ***/ +.sidebar { + display: flex; + flex-direction: column; +} +.sidebar .nav { + position: sticky; + top: 0; + border-right: 0.5px solid var(--divider); + min-height: 100vh !important; + max-height: 100vh !important; + overflow: clip auto; +} +.sidebar .nav > div { + height: auto !important; + background: none !important; + flex: none !important; + position: relative !important; + overflow: visible !important; +} +.sidebar button:not(.post):not(.gradate) { + position: relative !important; + background: none !important; + box-shadow: none !important; + backdrop-filter: none !important; +} +.sidebar > div:last-child:not(.iconOnly), +.sidebar .nav > div { + display: flex; + flex-direction: column; + min-height: calc(100vh - 20px); +} +.sidebar > div:last-child:not(.iconOnly) > a, +.sidebar .nav > div > a, +.sidebar > div:last-child:not(.iconOnly) > button:not(.account):not(.post), +.sidebar .nav > div > button:not(.account):not(.post) { + flex-grow: 1; + display: flex !important; + align-items: center !important; + align-content: center; + font-size: 100% !important; + max-height: 55px; +} +.sidebar > div:last-child:not(.iconOnly) > a span, +.sidebar .nav > div > a span, +.sidebar > div:last-child:not(.iconOnly) > button:not(.account):not(.post) span, +.sidebar .nav > div > button:not(.account):not(.post) span { + font-size: inherit !important; +} +.sidebar > div:last-child:not(.iconOnly) > a::before, +.sidebar .nav > div > a::before, +.sidebar > div:last-child:not(.iconOnly) > button:not(.account):not(.post)::before, +.sidebar .nav > div > button:not(.account):not(.post)::before { + content: unset !important; +} \ No newline at end of file diff --git a/misskey/tweaks/minor-fixes.css b/misskey/tweaks/minor-fixes.css new file mode 100644 index 0000000..55b1c47 --- /dev/null +++ b/misskey/tweaks/minor-fixes.css @@ -0,0 +1,23 @@ +/*** MINOR FIXES ***/ +header._button { + padding: 0 15px !important; +} +.mk-app:not(.wallpaper) .tab[style*="--stickyTop:"] { + margin-bottom: 0 !important; +} +.mk-app:not(.wallpaper) .tab[style*="--stickyTop:"]::after, +.mk-app:not(.wallpaper) .tab[style*="--stickyTop:"]::before { + content: ""; + position: absolute; + top: 100%; + width: calc(var(--radius) * 2); + height: calc(var(--radius) * 2); + border-top-left-radius: var(--radius); + box-shadow: -4px -4px 0 var(--bg); +} +.mk-app:not(.wallpaper) .tab[style*="--stickyTop:"]::after { + right: 0; + box-shadow: 4px -4px 0 var(--bg); + border-top-left-radius: 0; + border-top-right-radius: var(--radius); +} \ No newline at end of file diff --git a/misskey/tweaks/move-header-aside.css b/misskey/tweaks/move-header-aside.css new file mode 100644 index 0000000..3ff1afa --- /dev/null +++ b/misskey/tweaks/move-header-aside.css @@ -0,0 +1,79 @@ +/*** MOVE HEADER ASIDE ***/ +@media only screen and (min-width: 1201px) { + .columns > .main, + main .content > div { + overflow: visible !important; + } + .columns > .main .fdidabkb:not(.slim), + main .content > div .fdidabkb:not(.slim) { + display: contents !important; + } + .columns > .main .fdidabkb:not(.slim) > div, + main .content > div .fdidabkb:not(.slim) > div { + height: 50px !important; + } + .columns > .main .fdidabkb:not(.slim) .titleContainer, + main .content > div .fdidabkb:not(.slim) .titleContainer { + position: sticky; + top: var(--stickyTop, 0); + z-index: 1000; + margin-left: calc(100% + 17px) !important; + margin-bottom: -50px !important; + width: 300px; + padding-left: 15px; + box-sizing: border-box; + background-color: var(--panelHeaderBg); + border-radius: 0 0 var(--radius) var(--radius); + } + .columns > .main .fdidabkb:not(.slim) .titleContainer .avatar, + main .content > div .fdidabkb:not(.slim) .titleContainer .avatar { + margin-left: 0 !important; + } + .columns > .main .fdidabkb:not(.slim) .titleContainer .title, + main .content > div .fdidabkb:not(.slim) .titleContainer .title { + white-space: nowrap; + } + .columns > .main .fdidabkb:not(.slim) .tabs, + main .content > div .fdidabkb:not(.slim) .tabs { + height: 60px !important; + margin-left: 0; + margin-top: 10px !important; + display: flex; + justify-content: center; + font-size: 0.9em !important; + } + .columns > .main .fdidabkb:not(.slim) .tabs button::after, + main .content > div .fdidabkb:not(.slim) .tabs button::after { + content: unset !important; + } + .columns > .main .fdidabkb:not(.slim) .tabs:empty, + main .content > div .fdidabkb:not(.slim) .tabs:empty { + height: 20px !important; + } + .columns > .main .fdidabkb:not(.slim) .right, + main .content > div .fdidabkb:not(.slim) .right { + position: sticky; + top: var(--stickyTop, 0); + margin-left: auto !important; + margin-right: -312px !important; + margin-top: -75px !important; + margin-bottom: 9px !important; + z-index: 1001; + width: max-content; + max-width: 150px; + background-color: var(--panelHeaderBg); + } + .columns > .main .fdidabkb:not(.slim) .right::before, + main .content > div .fdidabkb:not(.slim) .right::before { + content: ""; + position: absolute; + right: 100%; + top: 0; + bottom: 0; + width: 40px; + background: linear-gradient(to left, var(-panelHeaderBg), transparent); + } + .widgets > div[style^="position: sticky"] > div:first-child { + padding-top: 50px !important; + } +} \ No newline at end of file diff --git a/misskey/tweaks/readable-mentions.css b/misskey/tweaks/readable-mentions.css new file mode 100644 index 0000000..cd6d352 --- /dev/null +++ b/misskey/tweaks/readable-mentions.css @@ -0,0 +1,14 @@ +/*** READABLE MENTIONS ***/ +a[href^="/@"][style^="background:"] { + color: inherit !important; + padding: 0.15em 0.35em; + padding-left: 0.2em; + margin: -0.15em 0; +} +a[href^="/@"][style^="background:"] img { + height: 1.3em !important; + width: 1.3em !important; +} +a[href^="/@"][style^="background:"] span { + opacity: 1 !important; +} \ No newline at end of file