* { /* -- Palette, matches colors{} in awesome rc.lua -- */ bg0: #111111; /* colors.background */ bg1: #1a1a1a; /* colors.background_alt */ fg0: #d3dae3; /* colors.foreground */ fg-selected: #ffffff; /* colors.white */ accent: #616161; /* colors.accent */ accent-alt: #6ba0e8; /* colors.accent_alt */ red: #e35b5b; /* colors.red */ disabled: #707880; /* colors.disabled */ font: "JetBrainsMono Nerd Font 14"; background-color: transparent; text-color: @fg0; } window { transparency: "real"; /* Anchor top-center, right below the wibar. */ location: north; anchor: north; y-offset: 38px; width: 32em; height: 26em; /* fixed — box size no longer changes with result count */ background-color: @bg0; border: 3px; border-color: @accent; border-radius: 13px; /* matches gears.shape.rounded_rect radius in rc.lua */ padding: 14px; } mainbox { children: [ inputbar, message, listview, mode-switcher ]; spacing: 10px; background-color: transparent; } /* -- Search field -- */ inputbar { children: [ prompt, entry ]; spacing: 10px; background-color: @bg1; border-radius: 10px; padding: 10px 14px; } prompt { text-color: @accent-alt; } entry { placeholder: "Search"; placeholder-color: @disabled; text-color: @fg0; cursor: text; } /* -- List/grid toggle icons, top-right (matches screenshot) -- */ mode-switcher { enabled: false; /* flip to true if you use rofi's built-in mode tabs */ } /* -- Results -- */ listview { lines: 8; columns: 1; spacing: 6px; scrollbar: false; background-color: transparent; fixed-height: true; /* box height stays locked, doesn't shrink/grow with result count */ dynamic: false; /* don't resize dynamically as you type either */ } /* * Rofi tracks row state as a combination of position (normal/alternate, * i.e. even/odd rows for banding) and status (normal/urgent/active/selected). * Each combination needs its own selector or a competing @theme import * (if you have one elsewhere in your rofi config) can still win on states * this file doesn't explicitly cover. Pinning all of them here. */ element { padding: 10px 12px; border-radius: 10px; orientation: horizontal; } element normal.normal, element alternate.normal { background-color: @bg1; text-color: @fg0; } element normal.urgent, element alternate.urgent { background-color: @bg1; text-color: @red; } element normal.active, element alternate.active { background-color: @bg1; text-color: @accent-alt; } element selected.normal { background-color: @accent; text-color: @fg-selected; } element selected.urgent { background-color: @red; text-color: @fg-selected; } element selected.active { background-color: @accent-alt; text-color: @bg0; } element-icon { size: 24px; padding: 0 12px 0 0; vertical-align: 0.5; background-color: transparent; } element-text { vertical-align: 0.5; text-color: inherit; background-color: transparent; } message { background-color: @bg1; border-radius: 10px; padding: 8px 12px; } textbox { text-color: @fg0; }