Files
owlry/resources/base.css
vikingowl 7cdb97d743 feat: add 7 new providers (system, ssh, clipboard, files, bookmarks, emoji, scripts)
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>
2025-12-28 18:55:27 +01:00

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);
}