pragma Singleton import QtQuick import Quickshell QtObject { id: theme // ── Wallpaper ────────────────────────────────────────────────────────────── readonly property string wallpaper: Quickshell.env("HOME") + "/.config/quickshell/wallpapers/wallpaper.jpg" // ── Base Backgrounds ─────────────────────────────────────────────────────── readonly property color bg: "#cc070e08" // Near-black deep forest shadow readonly property color bgPanel: "transparent" readonly property color bgPopup: "#cc070e08" // Deep undergrowth dark readonly property color bgFrame: bg // ── Separators ──────────────────────────────────────────────────────────── readonly property color separator: "#33284038" // Dark muted forest green // ── Text ────────────────────────────────────────────────────────────────── readonly property color textMain: "#ffe8f0ea" // Cool near-white (droplet highlight) readonly property color textDim: "#997a9080" // Muted sage-gray readonly property color todayText: "#ffffffff" // ── Accent & Borders ────────────────────────────────────────────────────── readonly property color accent: "#ff4a8c5c" // Muted forest green readonly property color border: "transparent" readonly property color frameBorder: "transparent" readonly property color borderPopup: "transparent" readonly property color borderToday: accent // ── Logo Module ──────────────────────────────────────────────────────── readonly property color logoBg: bgPanel readonly property color logoBgHover: "#22ffffff" readonly property color logoBorder: border readonly property color logoBorderActive: accent readonly property color logoIcon: textMain readonly property color logoIconActive: accent // ── Mpris Module ────────────────────────────────────────────────────────── readonly property color mprisAccent: accent readonly property color mprisTextMain: textMain readonly property color mprisTextDim: textDim readonly property color mprisTrackColor: statsTrackColor readonly property color mprisButtonText: bgPopup readonly property color mprisAlbumBg: Qt.alpha(accent, 0.08) readonly property color mprisAlbumBorder: Qt.alpha(accent, 0.15) readonly property color mprisBtnBg: Qt.alpha(accent, 0.10) readonly property color mprisBtnBgHover: Qt.alpha(accent, 0.22) readonly property color mprisBtnBorder: Qt.alpha(accent, 0.20) readonly property color mprisBtnBorderHover: Qt.alpha(accent, 0.45) readonly property color mprisBtnIcon: accent readonly property color mprisBtnIconHover: Qt.lighter(accent, 1.3) // ── Stats Module (Variation: Forest Floor) ──────────────────────────────── readonly property color statsBg: bgPanel readonly property color statsBorder: border readonly property color statsCpuColor: "#ffc07848" // Warm amber (earth/stem) readonly property color statsMemColor: "#ff4a8c5c" // Muted forest green readonly property color statsDiskColor: "#ff78a870" // Mid sage green readonly property color statsTrackColor: "#15ffffff" readonly property color statsCpuTempColor: "#ffcc6a40" // Warm orange-red readonly property color statsGpuColor: "#ff50a898" // Cool aqua (droplet reflection) // ── SysInfo Module ──────────────────────────────────────────────────────── readonly property color sysInfoAccent: accent readonly property color sysInfoTextMain: textMain readonly property color sysInfoTextDim: textDim readonly property color sysInfoCpuColor: statsCpuColor readonly property color sysInfoMemColor: statsMemColor readonly property color sysInfoDiskColor: statsDiskColor readonly property color sysInfoCpuTempColor: statsCpuTempColor readonly property color sysInfoGpuColor: statsGpuColor readonly property color sysInfoTrackColor: statsTrackColor // ── Volume Module (Variation: Rain on Leaves) ───────────────────────────── readonly property color volBg: bgPanel readonly property color volBgHover: "#22284038" readonly property color volBorder: border readonly property color volBorderHover: "#ff50a898" readonly property color volPopupBg: bgPopup readonly property color volPopupBorder: borderPopup readonly property color volIcon: "#ff50a898" // Cool aqua readonly property color volIconMuted: "#ff3a5040" readonly property color volTrack: "#22ffffff" readonly property color volHandle: accent readonly property color volHandleBorder: "#33ffffff" readonly property color volMuteBg: "#33a85838" readonly property color volPickerHover: "#154a8c5c" // ── Volume Limit Buttons ──────────────────────────────────────────────── readonly property color volLimitBtn: "transparent" readonly property color volLimitBtnHover: "#224a8c5c" readonly property color volLimitBtnPress: accent readonly property color volOutputLimitBtnPress: accent readonly property color volInputLimitBtnPress: statusInfo readonly property color volOutputLimitBtnHover: Qt.alpha(accent, 0.08) readonly property color volInputLimitBtnHover: Qt.alpha(statusInfo, 0.08) // ── Clock Module ─────────────────────────────────────────────────────────── readonly property color clockBg: bgPanel readonly property color clockBgHover: "#11ffffff" readonly property color clockBorder: border readonly property color clockBorderHover: accent readonly property color clockTime: textMain readonly property color clockSeconds: "#ff4a8c5c" // Muted forest green readonly property color clockIcon: accent // ── Battery Module ──────────────────────────────────────────────────────── readonly property color batteryFull: accent readonly property color batteryCharging: accent readonly property color batteryCritical: statusErr readonly property color batteryLow: statusWarn readonly property color batteryIcon: clockIcon readonly property color batBg: bgPanel readonly property color batBgHover: "#11ffffff" readonly property color batBorder: border readonly property color batBorderHover: accent readonly property color batText: textMain readonly property color batPopupBg: bgPopup readonly property color batPopupBorder: borderPopup readonly property color batPopupSeparator: separator readonly property color batPopupHeader: "#ff4a8c5c" readonly property color batPopupText: textMain readonly property color batPopupDim: textDim readonly property color batProgressTrack: separator readonly property color batProfileActiveText: bg // ── Network Module ──────────────────────────────────────────────────────── readonly property color netBg: bgPanel readonly property color netBgHover: "#11ffffff" readonly property color netBorder: border readonly property color netBorderHover: accent readonly property color netText: textMain readonly property color netPopupBg: bgPopup readonly property color netPopupBorder: borderPopup readonly property color netPopupSeparator: separator readonly property color netPopupHeader: "#ff4a8c5c" readonly property color netPopupText: textMain readonly property color netPopupDim: textDim readonly property color netFieldBg: "#22ffffff" readonly property color netCancelBgHover: "#22ffffff" readonly property color netConnectText: "#ff070e08" readonly property color netApActiveBg: Qt.alpha(accent, 0.15) readonly property color netApHoverBg: calArrowBgHover readonly property color netDisconnectBg: Qt.alpha(statusErr, 0.18) readonly property color netDisconnectBorder: Qt.alpha(statusErr, 0.45) readonly property color netWiredOkBg: Qt.alpha(statusOk, 0.12) readonly property color netWiredErrBg: Qt.alpha(statusErr, 0.12) readonly property color netWiredOkBorder: Qt.alpha(statusOk, 0.4) readonly property color netWiredErrBorder: Qt.alpha(statusErr, 0.4) readonly property color netWifiIconOk: "#ff60a860" // healthy leaf green readonly property color netWifiIconErr: "#ffcc5858" // warm red readonly property color netEthIconOk: "#ff60a860" readonly property color netEthIconErr: "#ffcc5858" // ── Calendar Popup ───────────────────────────────────────────────────────── readonly property color calCardBg: bgPopup readonly property color calCardBorder: borderPopup readonly property color calSeparator: separator readonly property color clockPopupHeader: "#ff4a8c5c" readonly property color clockPopupText: textMain readonly property color clockPopupDim: textDim readonly property color clockPopupDate: textMain readonly property color clockPopupUtc: textDim readonly property color calArrowIcon: textDim readonly property color calArrowIconHover: "#ff4a8c5c" // Forest green on hover readonly property color calArrowBg: "transparent" readonly property color calArrowBgHover: "#224a8c5c" // Soft green tint readonly property color calArrowBgPress: "#ff4a8c5c" // Full green on press // ── Weather Module ────────────────────────────────────────────────────── readonly property color weatherAccent: accent readonly property color weatherTextMain: textMain readonly property color weatherTextDim: textDim readonly property color weatherTempColor: "#ffcc6a40" // Warm amber-red readonly property color weatherFeelsColor: "#ff78a870" // Mid sage readonly property color weatherHumidColor: "#ff50a898" // Aqua (water droplets) readonly property color weatherWindColor: "#ff90b8a8" // Cool pale aqua // ── Workspace Module ─────────────────────────────────────────────────────── readonly property color wsPanelBg: bgPanel readonly property color wsPanelBorder: "transparent" readonly property color wsActiveBg: accent readonly property color wsInactiveBg: "#15ffffff" readonly property color wsHoverBg: "#33284038" readonly property color wsActiveText: "#ff070e08" readonly property color wsInactiveText: textMain readonly property color wsHoverText: "#ffffffff" // ── Tray Module ──────────────────────────────────────────────────────────── readonly property color trayBg: bgPanel readonly property color trayBgHover: "#11ffffff" readonly property color trayBorder: border readonly property color trayBorderHover: "#22ffffff" readonly property color trayIcon: textMain // ── Tray Context Menu ────────────────────────────────────────────────────── readonly property color trayMenuBg: bgPopup readonly property color trayMenuBorder: borderPopup readonly property color trayMenuText: textMain readonly property color trayMenuDim: textDim readonly property color trayMenuHover: "#224a8c5c" // soft green tint readonly property color trayMenuCheck: accent readonly property color trayMenuSeparator: separator // ── Launcher (Variation: Undergrowth) ───────────────────────────────────── readonly property color launcherBg: bgPopup readonly property color launcherBorder: borderPopup readonly property color launcherInput: "#44050b06" readonly property color launcherInputBorderFocus: accent readonly property color launcherPill: "#44284038" readonly property color launcherText: textMain readonly property color launcherDim: textDim readonly property color launcherAccent: accent readonly property color launcherHover: "#224a8c5c" readonly property color launcherSelected: "#444a8c5c" readonly property color launcherModeActiveText: "#ffffffff" readonly property color launcherModeActiveBg: accent // ── Status Colors ────────────────────────────────────────────────────────── readonly property color statusOk: "#ff60a860" // Healthy leaf green readonly property color statusWarn: "#ffb88c48" // Amber readonly property color statusErr: "#ffcc5858" // Warm red readonly property color statusInfo: "#ff48a0b8" // Cool aqua // ── Notifications Module ─────────────────────────────────────────────────── readonly property color notifBg: bgPanel readonly property color notifBgHover: "#11ffffff" readonly property color notifBorder: border readonly property color notifBorderActive: accent readonly property color notifIcon: textMain readonly property color notifIconActive: accent readonly property color notifBadgeBg: statusErr readonly property color notifBadgeText: "#ffffffff" readonly property color notifSeparator: separator readonly property color notifDnd: separator // ── Toast cards (Variation: Canopy Glow) ────────────────────────────────── readonly property color notifToastBg: bgPopup readonly property color notifToastBgHover: "#22ffffff" readonly property color notifToastBorder: borderPopup readonly property color notifToastText: textMain readonly property color notifToastDim: textDim readonly property color notifToastAppName: accent // ── Urgency colours ──────────────────────────────────────────────────────── readonly property color notifUrgencyCritical: statusErr readonly property color notifUrgencyNormal: accent readonly property color notifUrgencyLow: textDim // ── Progress bar ─────────────────────────────────────────────────────────── readonly property color notifProgressBg: "#22ffffff" readonly property color notifProgressFill: accent // ── History popup ────────────────────────────────────────────────────────── readonly property color notifHistoryBg: bgPopup readonly property color notifHistoryBorder: borderPopup readonly property color notifHistoryHover: "#114a8c5c" readonly property color notifHistoryEmpty: textDim // ── BgDate Module ────────────────────────────────────────────────────────── readonly property color bgDateText: "#ffffffff" readonly property color bgDateShadow: "#88000000" readonly property color bgDateSecondsText: bgDateText // ── Crypto Module ────────────────────────────────────────────────────────── readonly property color cryptoBg: bgPanel readonly property color cryptoBgHover: "#15ffffff" readonly property color cryptoBorder: border readonly property color cryptoBorderHover: accent readonly property color cryptoIcon: accent readonly property color cryptoLabel: textDim readonly property color cryptoValue: textMain readonly property color cryptoUp: "#ff60a860" // leaf green readonly property color cryptoDown: "#ffcc5858" // warm red // Popup card readonly property color cryptoPopupBg: bgPopup readonly property color cryptoPopupBorder: borderPopup readonly property color cryptoPopupHeader: "#ff4a8c5c" readonly property color cryptoPopupText: textMain readonly property color cryptoPopupDim: textDim // Tinted surfaces readonly property color cryptoUpBg: Qt.rgba(cryptoUp.r, cryptoUp.g, cryptoUp.b, 0.13) readonly property color cryptoDownBg: Qt.rgba(cryptoDown.r, cryptoDown.g, cryptoDown.b, 0.13) readonly property color cryptoChipRemoveBg: Qt.rgba(cryptoDown.r, cryptoDown.g, cryptoDown.b, 0.27) readonly property color cryptoApplyIdleBg: Qt.rgba(accent.r, accent.g, accent.b, 0.20) readonly property color cryptoFieldBg: "#15ffffff" readonly property color cryptoFieldBgFocus: "#22ffffff" readonly property color cryptoRangeTrack: "#1affffff" readonly property color cryptoTextOnAccent: "#ff070e08" readonly property color cryptoPlaceholder: Qt.rgba(textDim.r, textDim.g, textDim.b, 0.33) // ── Polkit Dialog ────────────────────────────────────────────────────────── // Overlay readonly property color polkitOverlayBg: "#bb000000" // Card chrome readonly property color polkitCardBg: bgPopup readonly property color polkitCardBorder: border // Lock icon readonly property color polkitIconBg: "#1e4a8c5c" // translucent green fill readonly property color polkitIconBorder: "#444a8c5c" // stronger green ring readonly property color polkitIconColor: accent // Text hierarchy readonly property color polkitTitle: textMain readonly property color polkitMessage: "#cce8f0ea" // Action-ID pill readonly property color polkitPillBg: "#1a284038" readonly property color polkitPillText: "#667a9080" // Divider readonly property color polkitDivider: "#33284038" // Supplementary message — error state readonly property color polkitSuppErrBg: "#1acc6858" readonly property color polkitSuppErrBorder: "#44cc6858" readonly property color polkitSuppErrText: statusErr // Supplementary message — info / ok state readonly property color polkitSuppOkBg: "#1a6ab85a" readonly property color polkitSuppOkBorder: "#446ab85a" readonly property color polkitSuppOkText: statusOk // Fields readonly property color polkitFieldBg: "#44040a05" readonly property color polkitFieldBorder: "#22ffffff" readonly property color polkitFieldBorderFocus: accent // Identity selector text readonly property color polkitUserLabel: "#997a9080" readonly property color polkitUserValue: accent // Input prompt label readonly property color polkitInputPrompt: "#887a9080" // TextInput readonly property color polkitInputText: textMain readonly property color polkitInputSelection: "#554a8c5c" // green selection readonly property color polkitInputSelectedText: bg // Eye toggle readonly property color polkitEyeIcon: "#667a9080" readonly property color polkitEyeIconHover: accent // Authenticate button readonly property color polkitAuthBg: "#dd4a8c5c" // slightly-muted green fill readonly property color polkitAuthBgHover: accent readonly property color polkitAuthText: bg // Cancel button readonly property color polkitCancelBg: "#0dffffff" readonly property color polkitCancelBgHover: "#22ffffff" readonly property color polkitCancelBorder: "#22ffffff" readonly property color polkitCancelText: "#cce8f0ea" }