Files
dotfiles/hosts/system76/config/swaync/style.css
T
connor 29bcf615e6 Sweep every machine for config worth tracking
Reactive capture missed wallust entirely, so this is a systematic pass over
~/.config on all four machines: every entry that is not already a symlink,
judged on whether it is hand-authored config or app-generated state.

Shared and identical everywhere -> common/: lazygit, ncmpcpp, neofetch,
matplotlib. Everything else differs per machine and goes in
hosts/<host>/config/: gtk-2.0/3.0/4.0, mimeapps.list, user-dirs.dirs,
mpv, swaync, swayimg, bob, pavucontrol.ini, zoom; plus beets, bottom,
glow and mpd on system76; fastfetch, gh, uv, traggo, tiling-assistant and
xdg-desktop-portal on the work laptop; inbox-tidy and llmfit on mainframe.

Deliberately excluded, all verified to hold live credentials: the work
laptop's Claude OAuth tokens (~/.config/anthropic/credentials), the NAS
restic repo password and hetzner.env, subsonic passwords in subtui, stmp
and termsonic, mopidy, supersonic, the Proton bridge env and the LiteLLM
virtual keys. The ignore list now names those shapes directly — a bare
`password` file would not have been caught before.

Also excluded as generated state or too large to be meaningful: GIMP,
kicad, BambuStudio, OrcaSlicer, calibre, LightBurn, obs-studio, feishin,
libreoffice, VirtualBox, FortiClient; and mainframe's dead X11-era
leftovers (i3, openbox, lxpanel, lxsession, pcmanfm).
2026-09-14 14:54:17 -04:00

202 lines
3.6 KiB
CSS

@import "colors.css";
* {
all: unset;
font-family: Roboto, sans-serif;
font-size: 13px;
}
/* Notification popup */
.notification-row {
outline: none;
margin: 10px 30px;
}
.notification-row:focus,
.notification-row:hover {
background: transparent;
}
.notification {
background: @background;
border: 1px solid @color4;
border-radius: 12px;
padding: 0;
margin: 5px;
min-width: 500px;
opacity: 0.85;
}
/* Urgency variants */
.notification.critical {
border-color: @color1;
}
.notification.low {
border-color: @color3;
}
/* Header bar (app name + timestamp + close button) */
.notification-row .notification-background .notification .notification-default-action .notification-content .text-box .summary {
color: @color7;
font-size: 14px;
font-weight: 600;
padding: 10px 20px;
}
.notification-default-action {
padding: 0;
border-radius: 12px;
}
.notification-default-action:hover {
background: rgba(255, 255, 255, 0.05);
border-radius: 12px;
}
/* Content area */
.notification-content {
padding: 10px 40px;
}
.notification-icon {
min-width: 0;
min-height: 0;
opacity: 0;
margin: 20px;
}
.notification-summary {
font-weight: 500;
color: @foreground;
}
.notification-body {
color: @foreground;
}
.notification-row .notification-background .notification .notification-default-action .notification-content .text-box .body {
/* Notification body */
font-weight: normal;
background: transparent;
text-shadow: none;
padding: 5px 20px;
}
/* Action buttons (e.g. "Reply", "Mark as read") */
.notification-action {
background: rgba(26, 110, 207, 0.2);
border: 1px solid rgba(26, 110, 207, 0.4);
border-radius: 6px;
color: rgba(255, 255, 255, 0.8);
padding: 5px;
margin: 10px;
}
.notification-action:hover {
background: rgba(26, 110, 207, 0.4);
}
/* ── Control center panel ── */
.control-center {
background: rgba(10, 14, 22, 0.95);
border-left: 1px solid rgba(26, 110, 207, 0.3);
border-radius: 0 0 0 12px;
min-width: 500px;
}
/* Title widget */
.widget-title {
color: rgba(255, 255, 255, 0.9);
font-size: 15px;
font-weight: 500;
padding: 16px 16px 8px;
}
.widget-title > button {
background: rgba(26, 110, 207, 0.2);
border: 1px solid rgba(26, 110, 207, 0.4);
border-radius: 6px;
color: rgba(255, 255, 255, 0.7);
font-size: 11px;
padding: 3px 10px;
}
.widget-title > button:hover {
background: rgba(26, 110, 207, 0.4);
}
/* DND toggle */
.widget-dnd {
padding: 8px 16px;
color: rgba(255, 255, 255, 0.8);
font-size: 13px;
}
.widget-dnd > switch {
background: rgba(255, 255, 255, 0.1);
border-radius: 12px;
border: none;
}
.widget-dnd > switch:checked {
background: rgba(26, 110, 207, 0.7);
}
.widget-dnd > switch slider {
background: white;
border-radius: 50%;
min-width: 18px;
min-height: 18px;
margin: 2px;
}
/* MPRIS widget */
.widget-mpris {
padding: 12px 16px;
background: rgba(26, 110, 207, 0.08);
border-radius: 10px;
margin: 0 8px 8px;
}
.widget-mpris-player {
padding: 4px 0;
}
.widget-mpris-title {
font-weight: 500;
font-size: 13px;
color: rgba(255, 255, 255, 0.9);
}
.widget-mpris-subtitle {
font-size: 11px;
color: rgba(255, 255, 255, 0.5);
}
/* Notification list inside control center */
.control-center-list {
padding: 4px 8px;
}
.control-center-list-placeholder {
color: rgba(255, 255, 255, 0.25);
font-size: 13px;
}
/* Close buttons */
.close-button {
background: transparent;
color: rgba(255, 255, 255, 0.4);
border-radius: 50%;
padding: 2px;
min-width: 18px;
min-height: 18px;
}
.close-button:hover {
background: rgba(255, 74, 110, 0.3);
color: rgba(255, 255, 255, 0.9);
}