Files
Nomarchy/themes/executive-ivory/rofi.rasi
Bernardo Magri bcdd3e14ee feat(themes): executive-ivory — the light half of the executive pair
Second exclusive pair (see 0ba1762 for the batch). Executive Ivory is
the slate boardroom at 9 AM: the night skyline traded for paper, print
and daylight. Warm ivory base (#F2F0E9), ink text (12.1:1 AAA), the
steel blue deepened to letterhead weight (#2F5FBF, 5.25:1 as text),
JetBrainsMono + slate's exact 5/12/2/10 geometry. Assets: the same
solid edge-to-edge strip identity (ink on ivory, accent underline on
the active workspace), rofi, btop, and a line-web wallpaper that
mirrors slate's geometry in silver-on-paper with sparse blue threads.

Verification: V2, same evidence set as 0ba1762 (all targeted checks
green on this tree; theme-shot VM desktop + menu viewed — strip,
underline, paper panel all render legibly; screenshots in
/nix/store/5883sqfz...theme-shot-executive-ivory). Preview is the
480x270 VM render. V3 pending per the batch HARDWARE-QUEUE entry.

Design on Fable; asset port by a Sonnet subagent from the
executive-slate sources; reviewed on Fable.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-18 13:05:24 +01:00

126 lines
2.6 KiB
Plaintext

/**
* Executive Ivory — rofi whole-swap (themes/<slug>/rofi.rasi).
* Identity: a flat, sharp-cornered "control panel". No zebra, no glow —
* a solid ivory window, a recessed surface inputbar, and one accent edge
* marking the selected row. The `configuration {}` block is omitted on
* purpose — modi/terminal/show-icons come from modules/home/rofi.nix.
* Element structure mirrors the generated theme so the theme-grid
* picker's per-invocation -theme-str (vertical cards) still lays out.
*/
* {
base: #F2F0E9;
surface: #E8E5DB;
overlay: #ABA898;
text: #252D3B;
subtext: #4A5568;
muted: #767E8D;
accent: #2F5FBF;
accentAlt: #46689E;
font: "Inter 13";
background-color: transparent;
text-color: @text;
}
window {
background-color: @base;
border: 1px;
border-color: @overlay;
border-radius: 4px;
width: calc( 84ch min 65% );
location: center;
anchor: center;
padding: 12px;
}
mainbox {
background-color: transparent;
children: [ inputbar, message, listview ];
spacing: 10px;
}
inputbar {
children: [ prompt, entry ];
background-color: @surface;
text-color: @text;
border: 1px;
border-color: @overlay;
border-radius: 4px;
padding: 10px 14px;
spacing: 10px;
}
prompt { text-color: @accent; }
entry {
text-color: @text;
cursor: text;
placeholder: "Type to filter…";
placeholder-color: @muted;
}
listview {
background-color: transparent;
columns: 1;
lines: 8;
dynamic: true;
scrollbar: true;
spacing: 4px;
padding: 4px 0px 0px 0px;
}
element {
background-color: transparent;
text-color: @text;
orientation: horizontal;
border-radius: 4px;
padding: 9px 14px;
spacing: 12px;
}
element normal.normal,
element alternate.normal {
background-color: transparent;
}
/* The one highlight: a solid accent-tinted row with an accent edge. */
element selected.normal {
background-color: #2F5FBF26;
text-color: @text;
border: 0px 0px 0px 3px;
border-color: @accent;
}
element-icon {
background-color: transparent;
size: 36px;
cursor: inherit;
}
element-text {
background-color: transparent;
text-color: inherit;
highlight: bold;
vertical-align: 0.5;
}
message { padding: 0px; }
textbox {
background-color: @surface;
text-color: @text;
border: 1px;
border-color: @overlay;
border-radius: 4px;
padding: 9px 14px;
}
scrollbar {
width: 4px;
handle-width: 4px;
handle-color: @accent;
background-color: @surface;
border: 0px;
}