New providers: - System: shutdown, reboot, suspend, hibernate, lock, logout, reboot into BIOS - SSH: parse ~/.ssh/config for quick host connections - Clipboard: integrate with cliphist for clipboard history - Files: search files using fd or locate (/ or find prefix) - Bookmarks: read Chrome/Chromium/Brave/Edge browser bookmarks - Emoji: searchable emoji picker with wl-copy integration - Scripts: run user scripts from ~/.config/owlry/scripts/ Filter prefixes: :sys, :ssh, :clip, :file, :bm, :emoji, :script 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
323 lines
9.2 KiB
CSS
323 lines
9.2 KiB
CSS
/*
|
|
* Owlry Base Styles
|
|
* Provides sensible defaults that work with GTK theme
|
|
* Colors can be overridden via theme or config
|
|
*/
|
|
|
|
/* Main window - transparent for layer shell */
|
|
.owlry-window {
|
|
background-color: transparent;
|
|
}
|
|
|
|
/* Main container - needs explicit background for overlay */
|
|
.owlry-main {
|
|
background-color: var(--owlry-bg, @theme_bg_color);
|
|
border-radius: var(--owlry-border-radius, 12px);
|
|
border: 1px solid var(--owlry-border, @borders);
|
|
padding: 16px;
|
|
}
|
|
|
|
/* Search entry */
|
|
.owlry-search {
|
|
background-color: var(--owlry-bg-secondary, @theme_base_color);
|
|
border: 2px solid var(--owlry-border, @borders);
|
|
border-radius: calc(var(--owlry-border-radius, 12px) - 4px);
|
|
padding: 12px 16px;
|
|
font-size: var(--owlry-font-size, 14px);
|
|
color: var(--owlry-text, @theme_fg_color);
|
|
min-height: 24px;
|
|
}
|
|
|
|
.owlry-search:focus {
|
|
border-color: var(--owlry-accent, @theme_selected_bg_color);
|
|
outline: none;
|
|
}
|
|
|
|
/* Results list */
|
|
.owlry-results {
|
|
background-color: transparent;
|
|
border-radius: calc(var(--owlry-border-radius, 12px) - 4px);
|
|
}
|
|
|
|
/* Individual result row */
|
|
.owlry-result-row {
|
|
background-color: transparent;
|
|
border-radius: calc(var(--owlry-border-radius, 12px) - 4px);
|
|
margin: 2px 0;
|
|
padding: 8px 12px;
|
|
}
|
|
|
|
.owlry-result-row:hover {
|
|
background-color: var(--owlry-bg-secondary, alpha(@theme_fg_color, 0.1));
|
|
}
|
|
|
|
.owlry-result-row:selected {
|
|
background-color: var(--owlry-accent, @theme_selected_bg_color);
|
|
color: var(--owlry-accent-bright, @theme_selected_fg_color);
|
|
}
|
|
|
|
/* Result icon */
|
|
.owlry-result-icon {
|
|
color: var(--owlry-text, @theme_fg_color);
|
|
opacity: 0.9;
|
|
}
|
|
|
|
.owlry-result-row:selected .owlry-result-icon {
|
|
color: var(--owlry-accent-bright, @theme_selected_fg_color);
|
|
opacity: 1;
|
|
}
|
|
|
|
/* Result name */
|
|
.owlry-result-name {
|
|
font-size: var(--owlry-font-size, 14px);
|
|
font-weight: 500;
|
|
color: var(--owlry-text, @theme_fg_color);
|
|
}
|
|
|
|
.owlry-result-row:selected .owlry-result-name {
|
|
color: var(--owlry-accent-bright, @theme_selected_fg_color);
|
|
}
|
|
|
|
/* Result description */
|
|
.owlry-result-description {
|
|
font-size: calc(var(--owlry-font-size, 14px) - 2px);
|
|
color: var(--owlry-text-secondary, alpha(@theme_fg_color, 0.7));
|
|
margin-top: 2px;
|
|
}
|
|
|
|
.owlry-result-row:selected .owlry-result-description {
|
|
color: var(--owlry-accent-bright, @theme_selected_fg_color);
|
|
}
|
|
|
|
/* Provider badges */
|
|
.owlry-result-badge {
|
|
font-size: calc(var(--owlry-font-size, 14px) - 4px);
|
|
font-weight: 600;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.5px;
|
|
padding: 3px 8px;
|
|
border-radius: 6px;
|
|
background-color: var(--owlry-bg-secondary, alpha(@theme_fg_color, 0.1));
|
|
color: var(--owlry-text-secondary, alpha(@theme_fg_color, 0.7));
|
|
}
|
|
|
|
.owlry-badge-app {
|
|
background-color: alpha(var(--owlry-badge-app, @blue_3), 0.2);
|
|
color: var(--owlry-badge-app, @blue_3);
|
|
}
|
|
|
|
.owlry-badge-bookmark {
|
|
background-color: alpha(var(--owlry-badge-bookmark, #f5a623), 0.2);
|
|
color: var(--owlry-badge-bookmark, #f5a623);
|
|
}
|
|
|
|
.owlry-badge-calc {
|
|
background-color: alpha(var(--owlry-badge-calc, @yellow_3), 0.2);
|
|
color: var(--owlry-badge-calc, @yellow_3);
|
|
}
|
|
|
|
.owlry-badge-clip {
|
|
background-color: alpha(var(--owlry-badge-clip, #8b5cf6), 0.2);
|
|
color: var(--owlry-badge-clip, #8b5cf6);
|
|
}
|
|
|
|
.owlry-badge-cmd {
|
|
background-color: alpha(var(--owlry-badge-cmd, @purple_3), 0.2);
|
|
color: var(--owlry-badge-cmd, @purple_3);
|
|
}
|
|
|
|
.owlry-badge-dmenu {
|
|
background-color: alpha(var(--owlry-badge-dmenu, @green_3), 0.2);
|
|
color: var(--owlry-badge-dmenu, @green_3);
|
|
}
|
|
|
|
.owlry-badge-emoji {
|
|
background-color: alpha(var(--owlry-badge-emoji, #f472b6), 0.2);
|
|
color: var(--owlry-badge-emoji, #f472b6);
|
|
}
|
|
|
|
.owlry-badge-file {
|
|
background-color: alpha(var(--owlry-badge-file, #22d3ee), 0.2);
|
|
color: var(--owlry-badge-file, #22d3ee);
|
|
}
|
|
|
|
.owlry-badge-script {
|
|
background-color: alpha(var(--owlry-badge-script, #a3e635), 0.2);
|
|
color: var(--owlry-badge-script, #a3e635);
|
|
}
|
|
|
|
.owlry-badge-ssh {
|
|
background-color: alpha(var(--owlry-badge-ssh, #2dd4bf), 0.2);
|
|
color: var(--owlry-badge-ssh, #2dd4bf);
|
|
}
|
|
|
|
.owlry-badge-sys {
|
|
background-color: alpha(var(--owlry-badge-sys, #ef4444), 0.2);
|
|
color: var(--owlry-badge-sys, #ef4444);
|
|
}
|
|
|
|
.owlry-badge-uuctl {
|
|
background-color: alpha(var(--owlry-badge-uuctl, @orange_3), 0.2);
|
|
color: var(--owlry-badge-uuctl, @orange_3);
|
|
}
|
|
|
|
.owlry-badge-web {
|
|
background-color: alpha(var(--owlry-badge-web, @teal_3), 0.2);
|
|
color: var(--owlry-badge-web, @teal_3);
|
|
}
|
|
|
|
/* Header bar */
|
|
.owlry-header {
|
|
margin-bottom: 4px;
|
|
}
|
|
|
|
/* Mode indicator */
|
|
.owlry-mode-indicator {
|
|
font-size: calc(var(--owlry-font-size, 14px) - 2px);
|
|
font-weight: 600;
|
|
padding: 4px 12px;
|
|
border-radius: 6px;
|
|
background-color: alpha(var(--owlry-accent, @theme_selected_bg_color), 0.2);
|
|
color: var(--owlry-accent, @theme_selected_bg_color);
|
|
}
|
|
|
|
/* Filter buttons */
|
|
.owlry-filter-button {
|
|
font-size: calc(var(--owlry-font-size, 14px) - 3px);
|
|
font-weight: 500;
|
|
padding: 4px 10px;
|
|
border-radius: 6px;
|
|
background-color: alpha(var(--owlry-border, @borders), 0.3);
|
|
color: var(--owlry-text-secondary, alpha(@theme_fg_color, 0.7));
|
|
border: 1px solid transparent;
|
|
min-height: 20px;
|
|
}
|
|
|
|
.owlry-filter-button:hover {
|
|
background-color: alpha(var(--owlry-border, @borders), 0.5);
|
|
color: var(--owlry-text, @theme_fg_color);
|
|
}
|
|
|
|
.owlry-filter-button:checked {
|
|
background-color: alpha(var(--owlry-accent, @theme_selected_bg_color), 0.2);
|
|
color: var(--owlry-accent, @theme_selected_bg_color);
|
|
border-color: alpha(var(--owlry-accent, @theme_selected_bg_color), 0.4);
|
|
}
|
|
|
|
/* Provider-specific filter button colors */
|
|
.owlry-filter-app:checked {
|
|
background-color: alpha(var(--owlry-badge-app, @blue_3), 0.2);
|
|
color: var(--owlry-badge-app, @blue_3);
|
|
border-color: alpha(var(--owlry-badge-app, @blue_3), 0.4);
|
|
}
|
|
|
|
.owlry-filter-bookmark:checked {
|
|
background-color: alpha(var(--owlry-badge-bookmark, #f5a623), 0.2);
|
|
color: var(--owlry-badge-bookmark, #f5a623);
|
|
border-color: alpha(var(--owlry-badge-bookmark, #f5a623), 0.4);
|
|
}
|
|
|
|
.owlry-filter-calc:checked {
|
|
background-color: alpha(var(--owlry-badge-calc, @yellow_3), 0.2);
|
|
color: var(--owlry-badge-calc, @yellow_3);
|
|
border-color: alpha(var(--owlry-badge-calc, @yellow_3), 0.4);
|
|
}
|
|
|
|
.owlry-filter-clip:checked {
|
|
background-color: alpha(var(--owlry-badge-clip, #8b5cf6), 0.2);
|
|
color: var(--owlry-badge-clip, #8b5cf6);
|
|
border-color: alpha(var(--owlry-badge-clip, #8b5cf6), 0.4);
|
|
}
|
|
|
|
.owlry-filter-cmd:checked {
|
|
background-color: alpha(var(--owlry-badge-cmd, @purple_3), 0.2);
|
|
color: var(--owlry-badge-cmd, @purple_3);
|
|
border-color: alpha(var(--owlry-badge-cmd, @purple_3), 0.4);
|
|
}
|
|
|
|
.owlry-filter-dmenu:checked {
|
|
background-color: alpha(var(--owlry-badge-dmenu, @green_3), 0.2);
|
|
color: var(--owlry-badge-dmenu, @green_3);
|
|
border-color: alpha(var(--owlry-badge-dmenu, @green_3), 0.4);
|
|
}
|
|
|
|
.owlry-filter-emoji:checked {
|
|
background-color: alpha(var(--owlry-badge-emoji, #f472b6), 0.2);
|
|
color: var(--owlry-badge-emoji, #f472b6);
|
|
border-color: alpha(var(--owlry-badge-emoji, #f472b6), 0.4);
|
|
}
|
|
|
|
.owlry-filter-file:checked {
|
|
background-color: alpha(var(--owlry-badge-file, #22d3ee), 0.2);
|
|
color: var(--owlry-badge-file, #22d3ee);
|
|
border-color: alpha(var(--owlry-badge-file, #22d3ee), 0.4);
|
|
}
|
|
|
|
.owlry-filter-script:checked {
|
|
background-color: alpha(var(--owlry-badge-script, #a3e635), 0.2);
|
|
color: var(--owlry-badge-script, #a3e635);
|
|
border-color: alpha(var(--owlry-badge-script, #a3e635), 0.4);
|
|
}
|
|
|
|
.owlry-filter-ssh:checked {
|
|
background-color: alpha(var(--owlry-badge-ssh, #2dd4bf), 0.2);
|
|
color: var(--owlry-badge-ssh, #2dd4bf);
|
|
border-color: alpha(var(--owlry-badge-ssh, #2dd4bf), 0.4);
|
|
}
|
|
|
|
.owlry-filter-sys:checked {
|
|
background-color: alpha(var(--owlry-badge-sys, #ef4444), 0.2);
|
|
color: var(--owlry-badge-sys, #ef4444);
|
|
border-color: alpha(var(--owlry-badge-sys, #ef4444), 0.4);
|
|
}
|
|
|
|
.owlry-filter-uuctl:checked {
|
|
background-color: alpha(var(--owlry-badge-uuctl, @orange_3), 0.2);
|
|
color: var(--owlry-badge-uuctl, @orange_3);
|
|
border-color: alpha(var(--owlry-badge-uuctl, @orange_3), 0.4);
|
|
}
|
|
|
|
.owlry-filter-web:checked {
|
|
background-color: alpha(var(--owlry-badge-web, @teal_3), 0.2);
|
|
color: var(--owlry-badge-web, @teal_3);
|
|
border-color: alpha(var(--owlry-badge-web, @teal_3), 0.4);
|
|
}
|
|
|
|
/* Hints bar at bottom */
|
|
.owlry-hints {
|
|
padding-top: 8px;
|
|
border-top: 1px solid var(--owlry-border, @borders);
|
|
}
|
|
|
|
.owlry-hints-label {
|
|
font-size: calc(var(--owlry-font-size, 14px) - 4px);
|
|
color: var(--owlry-text-secondary, alpha(@theme_fg_color, 0.7));
|
|
letter-spacing: 0.5px;
|
|
}
|
|
|
|
/* Scrollbar styling */
|
|
scrollbar {
|
|
background-color: transparent;
|
|
}
|
|
|
|
scrollbar slider {
|
|
background-color: alpha(var(--owlry-border, @borders), 0.5);
|
|
border-radius: 4px;
|
|
min-width: 6px;
|
|
min-height: 40px;
|
|
}
|
|
|
|
scrollbar slider:hover {
|
|
background-color: alpha(var(--owlry-border, @borders), 0.7);
|
|
}
|
|
|
|
scrollbar slider:active {
|
|
background-color: var(--owlry-accent, @theme_selected_bg_color);
|
|
}
|
|
|
|
/* Text selection */
|
|
selection {
|
|
background-color: alpha(var(--owlry-accent, @theme_selected_bg_color), 0.3);
|
|
color: var(--owlry-text, @theme_fg_color);
|
|
}
|