Files
dotfiles/config/swaync/style.css
T
2026-09-23 00:44:36 +05:00

219 lines
4.1 KiB
CSS

/* Material Design SwayNC theme -- same palette as config/waybar/style.css:
#1E1E1E background, #2D2D2D surface, #E1E1E1 text, #90CAF9 accent,
#CF6679 critical. */
* {
font-family: "Roboto", "JetBrainsMono Nerd Font", "Material Design Icons", sans-serif;
font-size: 14px;
}
/* ============= Popup notifications ============= */
/* The toplevel window must stay transparent or the whole layer surface paints
a rectangle around the rounded cards. */
.control-center,
.notification-row,
.notification-background,
.floating-notifications.background {
background: transparent;
}
.notification {
margin: 8px;
padding: 0;
border-radius: 12px;
background: #2D2D2D;
color: #E1E1E1;
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.4);
}
.notification-content {
padding: 12px;
}
.summary {
font-size: 14px;
font-weight: 500;
color: #E1E1E1;
}
.time {
font-size: 12px;
color: #B0B0B0;
}
.body {
font-size: 13px;
color: #B0B0B0;
}
.notification.critical {
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.4), inset 3px 0 0 #CF6679;
}
.notification.low .summary {
color: #B0B0B0;
}
/* ============= Action buttons =============
What bluetooth pairing prompts, Nextcloud-style "Accept/Reject" and browser
notifications render into. .notification-action is one button per action;
the first child gets the left rounding, the last the right. */
.notification-action {
margin: 0;
padding: 8px 12px;
border-top: 1px solid #383838;
background: #2D2D2D;
color: #90CAF9;
font-weight: 500;
transition: background 200ms cubic-bezier(0.4, 0, 0.2, 1);
}
.notification-action:hover {
background: rgba(144, 202, 249, 0.12);
color: #90CAF9;
}
.notification-action:active {
background: rgba(144, 202, 249, 0.2);
}
.notification-action:first-child {
border-radius: 0 0 0 12px;
}
.notification-action:last-child {
border-radius: 0 0 12px 0;
border-right: none;
}
.notification-default-action {
border-radius: 12px;
}
/* Rounding only collapses on the bottom when action buttons sit below. */
.notification-default-action:not(:only-child) {
border-radius: 12px 12px 0 0;
}
.close-button {
margin: 6px;
padding: 0;
min-width: 24px;
min-height: 24px;
border-radius: 12px;
background: transparent;
color: #B0B0B0;
box-shadow: none;
}
.close-button:hover {
background: #CF6679;
color: #1E1E1E;
}
.inline-reply {
margin-top: 8px;
}
.inline-reply-entry {
padding: 6px 8px;
border: 1px solid #383838;
border-radius: 6px;
background: #1E1E1E;
color: #E1E1E1;
}
.inline-reply-button {
margin-left: 4px;
padding: 6px 12px;
border: none;
border-radius: 6px;
background: #90CAF9;
color: #1E1E1E;
}
/* ============= Control center ============= */
.control-center {
margin: 8px;
padding: 8px;
border-radius: 12px;
background: #1E1E1E;
color: #E1E1E1;
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5);
}
.control-center .notification {
margin: 4px 0;
}
.widget-title {
margin: 8px 8px 4px 8px;
font-size: 15px;
font-weight: 500;
color: #E1E1E1;
}
.widget-title > button {
padding: 4px 12px;
border: none;
border-radius: 6px;
background: #2D2D2D;
color: #90CAF9;
font-size: 13px;
}
.widget-title > button:hover {
background: rgba(144, 202, 249, 0.12);
}
.widget-dnd {
margin: 4px 8px 8px 8px;
font-size: 13px;
color: #B0B0B0;
}
.widget-dnd > switch {
border-radius: 12px;
background: #383838;
box-shadow: none;
}
.widget-dnd > switch:checked {
background: #90CAF9;
}
.widget-dnd > switch slider {
border-radius: 12px;
background: #E1E1E1;
}
.widget-mpris {
margin: 4px 0;
padding: 8px;
border-radius: 12px;
background: #2D2D2D;
color: #E1E1E1;
}
.widget-mpris-player {
padding: 8px;
}
.widget-mpris-title {
font-size: 14px;
font-weight: 500;
}
.widget-mpris-subtitle {
font-size: 12px;
color: #B0B0B0;
}
.widget-mpris button:hover {
background: rgba(144, 202, 249, 0.12);
color: #90CAF9;
}