diskort/src/style.less

269 lines
5.4 KiB
Plaintext

/** DisKort
* (c) Er2 2022 <er2@dismail.de>
* Zlib License
*/
@round: 8px;
@rounder: 16px;
@roundest: 24px; // text area
@div-width: (@rounder / 2);
@tab-height: 40px;
@glow-color: #fff;
// Round
// UI elements
div[class^="tabBarItem-"],
div[class^="checkbox"],
button[class*="button"],
// UI parts
li[class^="channel-"],
[class^="avatar-"],
[role="dialog"],
div[class^="menu-"] [role="menuitem"],
div[class^="role-"],
div[class^="colorPicker"] div div[class^="saturation"] div,
#channels ul li div > div[class^="content-"],
// Input
div[class^="searchBox-"],
div[class*="input"],
input[class^="inputDefault-"],
[class*="Text"], [class*="text"],
{
border-radius: @round !important;
}
// Blur menus
[role="menu"] {
background-color: rgba(0, 0, 0, 0.5);
backdrop-filter: blur(@round) saturate(100%);
}
// Rounder
// Popouts
[class^="authBox"], // login
[role="menu"],
div[class*="popout"],
div[class*="Popout"],
div[class*="fullscreenOnMobile"],
div[class*="root"] div[class^="flex-"],
// UI elements
[class^="checkboxWrapper-"], // checkbox
[class*="embed"],
div[class^="markup-"] pre code, // ```code```
div[class^="item-"], // in settings
div[class^="group-"], // radiogroup
div[class*="card"],
div[class^="categoryItem-"] > *, // in Discovery
// UI parts
[class^="resultsGroup-"], // search
div[class^="auditLog-"],
div[class^="auditLog-"] > div,
div[class^="connectedAccount"], // in profile
div[class^="profileBanner"],
div[class^="accountProfile"],
div[class^="autocomplete-"], // input
div[class^="pictureInPicture-"],
div[class^="select-"],
div[class^="messagesWrapper-"] div,
div[class^="layer-"] > div[class^="container-"],
div[class^="base-"] div[class^="content-"] > div:nth-child(2),
div[class^="guildList-"] div[class^="container-"],
div[class^="container"] > div,
div[class^="chat-"] > div[class^="content-"],
{
border-radius: @rounder !important;
}
// Movement
div[class^="sidebar-"] {
margin-right: @div-width;
}
div[class^="radioBar-"] {
border: none;
}
.left-border(@r: 0) {
border-top-left-radius: @r !important;
border-bottom-left-radius: @r !important;
}
.right-border(@r: 0) {
border-top-right-radius: @r !important;
border-bottom-right-radius: @r !important;
}
.bottom-border(@r: 0) {
border-bottom-left-radius: @r !important;
border-bottom-right-radius: @r !important;
}
.top-border(@r: 0) {
border-top-left-radius: @r !important;
border-top-right-radius: @r !important;
}
div[class^="auditLog"] {
div[class^="headerExpanded-"]
{ .bottom-border(); }
div[class^="changeDetails-"]
{ .top-border(); }
}
[class*="embed-"],
div[class^="messagesWrapper-"]
div[class*="mentioned"]
{ .left-border(4px); }
// title
section, header,
div[class^="content-"]::before,
div[class^="tabBody-"]::before
{
box-shadow: unset !important;
}
// tabs
div[class^="side-"] div[role="tab"],
div[class^="tabBarItem-"] {
.bottom-border();
margin: 0;
margin-top: 8px;
margin-right: 16px;
padding: 4px 8px;
}
[role="tab"][class*="selected-"],
[role="tab"]:hover
{
background-color: var(--background-modifier-hover);
}
// Pins
div[class^="messageGroupWrapper-"] {
border: none;
background-color: unset;
}
// Redesigned text input
div[class^="attachedBars-"],
div[class^="messagesWrapper-"] div[class*="Bar-"]:not([class^="newMessagesBar-"]) {
bottom: 16px;
padding: 0;
}
div[class^="attachedBars-"]
{ position: relative; }
div[class^="channelTextArea-"] {
& > div[class^="scrollableContainer-"] {
background-color: unset;
button[class^="attachButton-"],
div[class^="textArea-"],
div[class^="buttons-"] {
background-color: var(--background-secondary);
border-radius: @roundest !important;
margin: 0;
}
& > div[class^="inner-"]
{ padding: 0; }
button[class^="attachButton-"] {
padding: 8px;
width: auto;
height: auto;
}
div[class^="textArea-"] {
margin-left: 8px;
.right-border();
div > * { left: (@roundest / 2); }
}
div[class^="buttons-"] {
height: auto; // to match input height
& > * {
align-items: center; // center buttons
}
.left-border();
}
}
}
// Mica-like material from Windows 11
[class^="sidebar-"] {
&, & > nav {
background-color: transparent;
}
& > nav,
div[class*="scroller"] {
.top-border(@rounder);
}
div[class*="scroller"] {
background-color: var(--background-secondary);
}
nav[class^="private"] {
&::before {
content: "Discord";
color: var(--header-primary);
margin: ((48px - 20px) / 2) 16px; // 20px is line-height
font-size: 15px;
line-height: 20px;
font-weight: 600;
font-family: var(--font-display);
}
}
section { // bottom panel
.bottom-border(@rounder);
}
}
div[class^="base-"] > div[class^="content-"] > div[class^="container"],
div[class^="chat-"]
{
background-color: unset;
& > div {
background-color: var(--background-primary);
}
}
[class^="sidebar"] header,
[class^="chat"] > section,
[class^="container-"] > section {
background-color: var(--background-tertiary) !important;
}
@keyframes glow {
from { box-shadow: 0 0 2px 4px @glow-color; }
to { box-shadow: 0 0 1px 2px @glow-color - #555; }
}
[class^="item-"] {
&[class*="focused-"] {
background-color: unset;
animation: glow 0.7s linear infinite alternate;
}
}
@import "settings";