add colors.toml and 0x-hex support, rescuing 44 more community themes

Poked at the 62 "no parseable source" skips from the first pass and found two things
the pipeline didn't handle: several community repos genuinely ship colors.toml too — some
in Omarchy 4's own semantic schema (best case, no derivation needed at all, same quality
as the official 22), others reusing the filename for an unrelated flat color0..color15
scheme — and a handful of alacritty.toml files use 0xrrggbb instead of #rrggbb.

palette.ts's loadPalette is now a thin wrapper over two exported pieces (parseTomlText,
paletteFromRecord) so the community pipeline can attempt the real schema first without
duplicating the reader; falls through to the color16 or ANSI-derived paths otherwise.
generate-themes.ts --check still reports 0 changes for the official set — the refactor
is behavior-preserving there, the lowercase-hex normalization it picked up along the way
touched 7 official theme files cosmetically (their source colors.toml has uppercase hex),
regenerated for real rather than left inconsistent with their own source.

147 -> 191 community themes ported. Of the original 62 unparseable repos, most turned out
to be simply gone (404 on GitHub — repos deleted or renamed since the site listed them);
the rest needed one of the two format additions above. 20 themes remain stuck: 16 dead
repos, 2 with no repo link at all, and the same handful of genuinely low-contrast source
palettes (mostly Solarized variants) where fixing contrast would mean changing the
author's actual colours rather than porting them.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-22 01:48:21 +00:00
co-authored by Claude Sonnet 5
parent a58f4d2b32
commit 861fc4a58b
57 changed files with 4859 additions and 124 deletions
+44
View File
@@ -50,12 +50,15 @@
@import './themes/all-hallows-eve.css';
@import './themes/amberbyte.css';
@import './themes/amekoji.css';
@import './themes/andromeda.css';
@import './themes/anonymous.css';
@import './themes/apocalypse.css';
@import './themes/arc-blueberry.css';
@import './themes/archriot.css';
@import './themes/archwave.css';
@import './themes/artzen.css';
@import './themes/ash.css';
@import './themes/astrodark.css';
@import './themes/atari.css';
@import './themes/atelier.css';
@import './themes/aura.css';
@@ -70,15 +73,23 @@
@import './themes/bauhaus.css';
@import './themes/beachvan.css';
@import './themes/beta.css';
@import './themes/biscuit-de-mar-dark.css';
@import './themes/black-arch.css';
@import './themes/black-gold.css';
@import './themes/black-money.css';
@import './themes/blackturq.css';
@import './themes/blueridge.css';
@import './themes/brutalism.css';
@import './themes/caroline-skyline.css';
@import './themes/catppuccin-mocha.css';
@import './themes/cattpuccin-glass.css';
@import './themes/city-783.css';
@import './themes/copper-night.css';
@import './themes/corporate.css';
@import './themes/cpunk.css';
@import './themes/crimson.css';
@import './themes/crimson-gold.css';
@import './themes/cyberpunk-2.css';
@import './themes/dark-xp.css';
@import './themes/dayfox.css';
@import './themes/dead-space.css';
@@ -86,21 +97,32 @@
@import './themes/delete.css';
@import './themes/delorean.css';
@import './themes/demon.css';
@import './themes/desert-gleam.css';
@import './themes/desert-twilight.css';
@import './themes/dotrb.css';
@import './themes/drac.css';
@import './themes/dracula.css';
@import './themes/dragon.css';
@import './themes/dreamwave.css';
@import './themes/elysian.css';
@import './themes/ember-n-ash.css';
@import './themes/eva-unit-01.css';
@import './themes/event-horizon.css';
@import './themes/everblush.css';
@import './themes/evergarden.css';
@import './themes/farline.css';
@import './themes/felix.css';
@import './themes/fiery-ocean.css';
@import './themes/fireside.css';
@import './themes/firesky.css';
@import './themes/flat-dracula.css';
@import './themes/flexoki-dark.css';
@import './themes/florida-man.css';
@import './themes/fluid-glass.css';
@import './themes/forest-green.css';
@import './themes/frost.css';
@import './themes/futurism.css';
@import './themes/ghost-pastel.css';
@import './themes/glory-antic.css';
@import './themes/gold-rush.css';
@import './themes/gotham-city.css';
@@ -110,12 +132,18 @@
@import './themes/gruber-tsoding.css';
@import './themes/grudark.css';
@import './themes/harbor.css';
@import './themes/harbor-dark.css';
@import './themes/hex.css';
@import './themes/himalaya.css';
@import './themes/hinterlands.css';
@import './themes/hollow-knight.css';
@import './themes/infernium.css';
@import './themes/infernium-dark.css';
@import './themes/inkypinky.css';
@import './themes/kanso.css';
@import './themes/killer-klowns.css';
@import './themes/kimiko.css';
@import './themes/koyanagi.css';
@import './themes/kurayami.css';
@import './themes/lain.css';
@import './themes/lairetam.css';
@@ -135,17 +163,23 @@
@import './themes/monokai.css';
@import './themes/monokai-dark.css';
@import './themes/monolith.css';
@import './themes/monolith-2.css';
@import './themes/moodpeak.css';
@import './themes/nagai-poolside.css';
@import './themes/nagai-twilight.css';
@import './themes/nebulite.css';
@import './themes/neo-sploosh.css';
@import './themes/neon-street.css';
@import './themes/neovoid.css';
@import './themes/nes.css';
@import './themes/nyc.css';
@import './themes/one-dark-pro.css';
@import './themes/oxford.css';
@import './themes/oxocarbon-dark.css';
@import './themes/pandora.css';
@import './themes/pina.css';
@import './themes/pink-blood.css';
@import './themes/pmndrs.css';
@import './themes/pulsar.css';
@import './themes/purple-moon.css';
@import './themes/purplewave.css';
@@ -153,11 +187,19 @@
@import './themes/rdddcs.css';
@import './themes/red-monarch.css';
@import './themes/retropc.css';
@import './themes/reverie.css';
@import './themes/robco.css';
@import './themes/robco-mojave.css';
@import './themes/rose-pine-dark.css';
@import './themes/roseofdune.css';
@import './themes/royal.css';
@import './themes/rustleaf.css';
@import './themes/saga.css';
@import './themes/sakura.css';
@import './themes/sapphire.css';
@import './themes/serenity.css';
@import './themes/shadesofjade.css';
@import './themes/snow.css';
@import './themes/snow-black.css';
@import './themes/space-bound.css';
@import './themes/space-monkey.css';
@@ -165,6 +207,7 @@
@import './themes/spectra.css';
@import './themes/stellar.css';
@import './themes/stillmoon.css';
@import './themes/sunkissed.css';
@import './themes/sunset.css';
@import './themes/synthetica.css';
@import './themes/synthwave-84.css';
@@ -188,6 +231,7 @@
@import './themes/wasteland.css';
@import './themes/waveform-dark.css';
@import './themes/white-gold.css';
@import './themes/x-1632.css';
@import './themes/yuugure.css';
@import './chrome.css';
@@ -0,0 +1,97 @@
/*
Andromeda — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/signaldirective/andromeda (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='andromeda'] {
--background: #131519;
--foreground: #e5e5e5;
--card: #23262e;
--card-foreground: #e5e5e5;
--popover: #23262e;
--popover-foreground: #e5e5e5;
--muted: #32353d;
--muted-foreground: #abacae;
--accent: #32353d;
--accent-foreground: #e5e5e5;
--primary: #00e8c6;
--primary-foreground: #131519;
--secondary: #32353d;
--secondary-foreground: #e5e5e5;
--cta: #00e8c6;
--cta-foreground: #131519;
--ctahover: #1febcd;
--success: #00e8c6;
--success-foreground: #131519;
--warning: #ffe66d;
--warning-foreground: #131519;
--destructive: #f92672;
--destructive-foreground: #131519;
--info: #7cb7ff;
--info-foreground: #131519;
--busy: #fc8670;
--busy-foreground: #131519;
--busy-ink: #fc8670;
--border: #494c52;
--input: #494c52;
--ring: #00e8c6;
--radius: 0.625rem;
--chart-primary: #00e8c6;
--chart-secondary: #c74ded;
--status-success: #00e8c6;
--status-warning: #ffe66d;
--status-in-progress: #7cb7ff;
--page-bg: #131519;
--page-bg-src: '';
--panel-bg: rgb(35 38 46 / 0.72);
--panel-border: rgb(73 76 82 / 0.9);
--panel-border-bare: rgb(73 76 82 / 0.55);
--panel-raised-bg: rgb(35 38 46 / 0.95);
--panel-raised-border: rgb(73 76 82 / 1);
--panel-accent: #00e8c6;
--panel-header-bg: rgb(50 53 61 / 0.6);
--panel-header-fg: #e5e5e5;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #23262e;
--glass-bg: rgb(35 38 46 / 0.55);
--glass-border: rgb(73 76 82 / 0.7);
--dock-bg: rgb(35 38 46 / 0.7);
--dock-border: rgb(73 76 82 / 0.8);
--dock-tooltip-bg: #32353d;
--header-bg: rgb(35 38 46 / 0.8);
--header-border: rgb(73 76 82 / 0.9);
--header-fg: #e5e5e5;
--header-blur: 12px;
--pixel-grid-color: rgb(122 124 128 / 0.07);
--card-grid-color: rgb(122 124 128 / 0.05);
--panel-grid-color: rgb(122 124 128 / 0.06);
--scrollbar-thumb: rgb(102 102 102 / 0.6);
--scrollbar-thumb-hover: rgb(102 102 102 / 0.85);
--scrollbar-thin-thumb: rgb(102 102 102 / 0.45);
--scrollbar-thin-thumb-hover: rgb(102 102 102 / 0.7);
--brand: #00e8c6;
--brand-foreground: #131519;
--brand-primary: #00e8c6;
--brand-accent: #96e072;
--brand-warm: #fc8670;
--brand-deep: #131519;
--brand-muted: #666666;
--ink: #e5e5e5;
--surface-warm: #23262e;
--naturegreen: #00e8c6;
--naturegreen-foreground: #131519;
--duck-dark: #e5e5e5;
--duck-teal: #96e072;
--duck-yellow: #ffe66d;
--duck-orange: #fc8670;
--duck-forest: #00e8c6;
--duck-beige: #363940;
--logo-src: '/officer-logo.svg';
}
+97
View File
@@ -0,0 +1,97 @@
/*
Ash — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-ash-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='ash'] {
--background: #0a0a0a;
--foreground: #e0e0e0;
--card: #121212;
--card-foreground: #e0e0e0;
--popover: #121212;
--popover-foreground: #e0e0e0;
--muted: #232323;
--muted-foreground: #a2a2a2;
--accent: #232323;
--accent-foreground: #e0e0e0;
--primary: #9e9e9e;
--primary-foreground: #0a0a0a;
--secondary: #232323;
--secondary-foreground: #e0e0e0;
--cta: #9e9e9e;
--cta-foreground: #0a0a0a;
--ctahover: #aaaaaa;
--success: #767676;
--success-foreground: #040404;
--warning: #9e9e9e;
--warning-foreground: #0a0a0a;
--destructive: #8a8a8a;
--destructive-foreground: #0a0a0a;
--info: #626262;
--info-foreground: #e0e0e0;
--busy: #949494;
--busy-foreground: #0a0a0a;
--busy-ink: #949494;
--border: #3a3a3a;
--input: #3a3a3a;
--ring: #9e9e9e;
--radius: 0.625rem;
--chart-primary: #9e9e9e;
--chart-secondary: #8a8a8a;
--status-success: #767676;
--status-warning: #9e9e9e;
--status-in-progress: #626262;
--page-bg: #0a0a0a;
--page-bg-src: '';
--panel-bg: rgb(18 18 18 / 0.72);
--panel-border: rgb(58 58 58 / 0.9);
--panel-border-bare: rgb(58 58 58 / 0.55);
--panel-raised-bg: rgb(18 18 18 / 0.95);
--panel-raised-border: rgb(58 58 58 / 1);
--panel-accent: #9e9e9e;
--panel-header-bg: rgb(35 35 35 / 0.6);
--panel-header-fg: #e0e0e0;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #121212;
--glass-bg: rgb(18 18 18 / 0.55);
--glass-border: rgb(58 58 58 / 0.7);
--dock-bg: rgb(18 18 18 / 0.7);
--dock-border: rgb(58 58 58 / 0.8);
--dock-tooltip-bg: #232323;
--header-bg: rgb(18 18 18 / 0.8);
--header-border: rgb(58 58 58 / 0.9);
--header-fg: #e0e0e0;
--header-blur: 12px;
--pixel-grid-color: rgb(111 111 111 / 0.07);
--card-grid-color: rgb(111 111 111 / 0.05);
--panel-grid-color: rgb(111 111 111 / 0.06);
--scrollbar-thumb: rgb(138 138 138 / 0.6);
--scrollbar-thumb-hover: rgb(138 138 138 / 0.85);
--scrollbar-thin-thumb: rgb(138 138 138 / 0.45);
--scrollbar-thin-thumb-hover: rgb(138 138 138 / 0.7);
--brand: #9e9e9e;
--brand-foreground: #0a0a0a;
--brand-primary: #9e9e9e;
--brand-accent: #767676;
--brand-warm: #949494;
--brand-deep: #0a0a0a;
--brand-muted: #8a8a8a;
--ink: #e0e0e0;
--surface-warm: #121212;
--naturegreen: #767676;
--naturegreen-foreground: #040404;
--duck-dark: #e0e0e0;
--duck-teal: #767676;
--duck-yellow: #9e9e9e;
--duck-orange: #949494;
--duck-forest: #767676;
--duck-beige: #272727;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Astrodark — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark) — the source repo's own colors.toml says so directly.
Source: https://github.com/JamsMendez/omarchy-astrodark-theme (colors.toml (Omarchy schema)), read by scripts/port-community-themes.ts. Values
came straight from the repo's own colors.toml — the same schema and reader the official 22 themes
use, so nothing here is reconstructed. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='astrodark'] {
--background: #0b0c0f;
--foreground: #9b9fa9;
--card: #1a1d23;
--card-foreground: #9b9fa9;
--popover: #1a1d23;
--popover-foreground: #9b9fa9;
--muted: #26343f;
--muted-foreground: #b8bcc6;
--accent: #26343f;
--accent-foreground: #9b9fa9;
--primary: #5eb7ff;
--primary-foreground: #0b0c0f;
--secondary: #26343f;
--secondary-foreground: #9b9fa9;
--cta: #5eb7ff;
--cta-foreground: #0b0c0f;
--ctahover: #71c0ff;
--success: #87c05f;
--success-foreground: #0b0c0f;
--warning: #dfab25;
--warning-foreground: #0b0c0f;
--destructive: #ff838b;
--destructive-foreground: #0b0c0f;
--info: #5eb7ff;
--info-foreground: #0b0c0f;
--busy: #e8925a;
--busy-foreground: #0b0c0f;
--busy-ink: #e8925a;
--border: #464a51;
--input: #464a51;
--ring: #5eb7ff;
--radius: 0.625rem;
--chart-primary: #5eb7ff;
--chart-secondary: #dd97f1;
--status-success: #87c05f;
--status-warning: #dfab25;
--status-in-progress: #5eb7ff;
--page-bg: #0b0c0f;
--page-bg-src: '';
--panel-bg: rgb(26 29 35 / 0.72);
--panel-border: rgb(70 74 81 / 0.9);
--panel-border-bare: rgb(70 74 81 / 0.55);
--panel-raised-bg: rgb(26 29 35 / 0.95);
--panel-raised-border: rgb(70 74 81 / 1);
--panel-accent: #5eb7ff;
--panel-header-bg: rgb(38 52 63 / 0.6);
--panel-header-fg: #9b9fa9;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1a1d23;
--glass-bg: rgb(26 29 35 / 0.55);
--glass-border: rgb(70 74 81 / 0.7);
--dock-bg: rgb(26 29 35 / 0.7);
--dock-border: rgb(70 74 81 / 0.8);
--dock-tooltip-bg: #26343f;
--header-bg: rgb(26 29 35 / 0.8);
--header-border: rgb(70 74 81 / 0.9);
--header-fg: #9b9fa9;
--header-blur: 12px;
--pixel-grid-color: rgb(107 111 121 / 0.07);
--card-grid-color: rgb(107 111 121 / 0.05);
--panel-grid-color: rgb(107 111 121 / 0.06);
--scrollbar-thumb: rgb(52 54 58 / 0.6);
--scrollbar-thumb-hover: rgb(52 54 58 / 0.85);
--scrollbar-thin-thumb: rgb(52 54 58 / 0.45);
--scrollbar-thin-thumb-hover: rgb(52 54 58 / 0.7);
--brand: #5eb7ff;
--brand-foreground: #0b0c0f;
--brand-primary: #5eb7ff;
--brand-accent: #4ac2b8;
--brand-warm: #e8925a;
--brand-deep: #0b0c0f;
--brand-muted: #34363a;
--ink: #9b9fa9;
--surface-warm: #1a1d23;
--naturegreen: #87c05f;
--naturegreen-foreground: #0b0c0f;
--duck-dark: #9b9fa9;
--duck-teal: #4ac2b8;
--duck-yellow: #dfab25;
--duck-orange: #e8925a;
--duck-forest: #87c05f;
--duck-beige: #272a30;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Biscuit DE Mar Dark — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark) — the source repo's own colors.toml says so directly.
Source: https://github.com/OldJobobo/omarchy-biscuit-de-mar-dark-theme (colors.toml (Omarchy schema)), read by scripts/port-community-themes.ts. Values
came straight from the repo's own colors.toml — the same schema and reader the official 22 themes
use, so nothing here is reconstructed. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='biscuit-de-mar-dark'] {
--background: #1a1515;
--foreground: #dcc9bc;
--card: #1a1515;
--card-foreground: #dcc9bc;
--popover: #1a1515;
--popover-foreground: #dcc9bc;
--muted: #2d2424;
--muted-foreground: #ffe9c7;
--accent: #2d2424;
--accent-foreground: #dcc9bc;
--primary: #ae3f82;
--primary-foreground: #ffe9c7;
--secondary: #2d2424;
--secondary-foreground: #dcc9bc;
--cta: #ae3f82;
--cta-foreground: #ffe9c7;
--ctahover: #b85691;
--success: #768f80;
--success-foreground: #1a1515;
--warning: #959a6b;
--warning-foreground: #1a1515;
--destructive: #f07342;
--destructive-foreground: #1a1515;
--info: #614f76;
--info-foreground: #ffe9c7;
--busy: #e39c45;
--busy-foreground: #1a1515;
--busy-ink: #e39c45;
--border: #5a5047;
--input: #5a5047;
--ring: #ae3f82;
--radius: 0.625rem;
--chart-primary: #ae3f82;
--chart-secondary: #7b3d79;
--status-success: #768f80;
--status-warning: #959a6b;
--status-in-progress: #614f76;
--page-bg: #1a1515;
--page-bg-src: '';
--panel-bg: rgb(26 21 21 / 0.72);
--panel-border: rgb(90 80 71 / 0.9);
--panel-border-bare: rgb(90 80 71 / 0.55);
--panel-raised-bg: rgb(26 21 21 / 0.95);
--panel-raised-border: rgb(90 80 71 / 1);
--panel-accent: #ae3f82;
--panel-header-bg: rgb(45 36 36 / 0.6);
--panel-header-fg: #dcc9bc;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1a1515;
--glass-bg: rgb(26 21 21 / 0.55);
--glass-border: rgb(90 80 71 / 0.7);
--dock-bg: rgb(26 21 21 / 0.7);
--dock-border: rgb(90 80 71 / 0.8);
--dock-tooltip-bg: #2d2424;
--header-bg: rgb(26 21 21 / 0.8);
--header-border: rgb(90 80 71 / 0.9);
--header-fg: #dcc9bc;
--header-blur: 12px;
--pixel-grid-color: rgb(156 129 129 / 0.07);
--card-grid-color: rgb(156 129 129 / 0.05);
--panel-grid-color: rgb(156 129 129 / 0.06);
--scrollbar-thumb: rgb(114 90 90 / 0.6);
--scrollbar-thumb-hover: rgb(114 90 90 / 0.85);
--scrollbar-thin-thumb: rgb(114 90 90 / 0.45);
--scrollbar-thin-thumb-hover: rgb(114 90 90 / 0.7);
--brand: #ae3f82;
--brand-foreground: #ffe9c7;
--brand-primary: #ae3f82;
--brand-accent: #756d94;
--brand-warm: #e39c45;
--brand-deep: #1a1515;
--brand-muted: #725a5a;
--ink: #dcc9bc;
--surface-warm: #1a1515;
--naturegreen: #768f80;
--naturegreen-foreground: #1a1515;
--duck-dark: #dcc9bc;
--duck-teal: #756d94;
--duck-yellow: #959a6b;
--duck-orange: #e39c45;
--duck-forest: #768f80;
--duck-beige: #2d2726;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Black Gold — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-blackgold-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='black-gold'] {
--background: #070707;
--foreground: #ebdbb2;
--card: #0d0d0d;
--card-foreground: #ebdbb2;
--popover: #0d0d0d;
--popover-foreground: #ebdbb2;
--muted: #1e1e1e;
--muted-foreground: #a89d81;
--accent: #1e1e1e;
--accent-foreground: #ebdbb2;
--primary: #7a6a2c;
--primary-foreground: #f4ebd5;
--secondary: #1e1e1e;
--secondary-foreground: #ebdbb2;
--cta: #7a6a2c;
--cta-foreground: #f4ebd5;
--ctahover: #8a7c45;
--success: #a3850e;
--success-foreground: #070707;
--warning: #4d574e;
--warning-foreground: #ebdbb2;
--destructive: #d35f5f;
--destructive-foreground: #070707;
--info: #6e6a58;
--info-foreground: #f4ead3;
--busy: #905b57;
--busy-foreground: #f2e8cd;
--busy-ink: #9b6b68;
--border: #38352d;
--input: #38352d;
--ring: #7a6a2c;
--radius: 0.625rem;
--chart-primary: #7a6a2c;
--chart-secondary: #bfa75d;
--status-success: #a3850e;
--status-warning: #4d574e;
--status-in-progress: #6e6a58;
--page-bg: #070707;
--page-bg-src: '';
--panel-bg: rgb(13 13 13 / 0.72);
--panel-border: rgb(56 53 45 / 0.9);
--panel-border-bare: rgb(56 53 45 / 0.55);
--panel-raised-bg: rgb(13 13 13 / 0.95);
--panel-raised-border: rgb(56 53 45 / 1);
--panel-accent: #7a6a2c;
--panel-header-bg: rgb(30 30 30 / 0.6);
--panel-header-fg: #ebdbb2;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0d0d0d;
--glass-bg: rgb(13 13 13 / 0.55);
--glass-border: rgb(56 53 45 / 0.7);
--dock-bg: rgb(13 13 13 / 0.7);
--dock-border: rgb(56 53 45 / 0.8);
--dock-tooltip-bg: #1e1e1e;
--header-bg: rgb(13 13 13 / 0.8);
--header-border: rgb(56 53 45 / 0.9);
--header-fg: #ebdbb2;
--header-blur: 12px;
--pixel-grid-color: rgb(113 106 87 / 0.07);
--card-grid-color: rgb(113 106 87 / 0.05);
--panel-grid-color: rgb(113 106 87 / 0.06);
--scrollbar-thumb: rgb(48 53 49 / 0.6);
--scrollbar-thumb-hover: rgb(48 53 49 / 0.85);
--scrollbar-thin-thumb: rgb(48 53 49 / 0.45);
--scrollbar-thin-thumb-hover: rgb(48 53 49 / 0.7);
--brand: #7a6a2c;
--brand-foreground: #f4ebd5;
--brand-primary: #7a6a2c;
--brand-accent: #7a6a2c;
--brand-warm: #905b57;
--brand-deep: #070707;
--brand-muted: #303531;
--ink: #ebdbb2;
--surface-warm: #0d0d0d;
--naturegreen: #a3850e;
--naturegreen-foreground: #070707;
--duck-dark: #ebdbb2;
--duck-teal: #7a6a2c;
--duck-yellow: #4d574e;
--duck-orange: #905b57;
--duck-forest: #a3850e;
--duck-beige: #23221e;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Black Money — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-blackmoney-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='black-money'] {
--background: #070707;
--foreground: #d8d4b4;
--card: #0c0c0c;
--card-foreground: #d8d4b4;
--popover: #0c0c0c;
--popover-foreground: #d8d4b4;
--muted: #1d1d1d;
--muted-foreground: #9b9882;
--accent: #1d1d1d;
--accent-foreground: #d8d4b4;
--primary: #d8d4b4;
--primary-foreground: #070707;
--secondary: #1d1d1d;
--secondary-foreground: #d8d4b4;
--cta: #d8d4b4;
--cta-foreground: #070707;
--ctahover: #ddd9bd;
--success: #2a593f;
--success-foreground: #d8d4b4;
--warning: #525b54;
--warning-foreground: #d8d4b4;
--destructive: #dd5670;
--destructive-foreground: #070707;
--info: #d8d4b4;
--info-foreground: #070707;
--busy: #985962;
--busy-foreground: #ececec;
--busy-ink: #a26a72;
--border: #34332d;
--input: #34332d;
--ring: #d8d4b4;
--radius: 0.625rem;
--chart-primary: #d8d4b4;
--chart-secondary: #689e80;
--status-success: #2a593f;
--status-warning: #525b54;
--status-in-progress: #d8d4b4;
--page-bg: #070707;
--page-bg-src: '';
--panel-bg: rgb(12 12 12 / 0.72);
--panel-border: rgb(52 51 45 / 0.9);
--panel-border-bare: rgb(52 51 45 / 0.55);
--panel-raised-bg: rgb(12 12 12 / 0.95);
--panel-raised-border: rgb(52 51 45 / 1);
--panel-accent: #d8d4b4;
--panel-header-bg: rgb(29 29 29 / 0.6);
--panel-header-fg: #d8d4b4;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0c0c0c;
--glass-bg: rgb(12 12 12 / 0.55);
--glass-border: rgb(52 51 45 / 0.7);
--dock-bg: rgb(12 12 12 / 0.7);
--dock-border: rgb(52 51 45 / 0.8);
--dock-tooltip-bg: #1d1d1d;
--header-bg: rgb(12 12 12 / 0.8);
--header-border: rgb(52 51 45 / 0.9);
--header-fg: #d8d4b4;
--header-blur: 12px;
--pixel-grid-color: rgb(104 102 88 / 0.07);
--card-grid-color: rgb(104 102 88 / 0.05);
--panel-grid-color: rgb(104 102 88 / 0.06);
--scrollbar-thumb: rgb(78 89 74 / 0.6);
--scrollbar-thumb-hover: rgb(78 89 74 / 0.85);
--scrollbar-thin-thumb: rgb(78 89 74 / 0.45);
--scrollbar-thin-thumb-hover: rgb(78 89 74 / 0.7);
--brand: #d8d4b4;
--brand-foreground: #070707;
--brand-primary: #d8d4b4;
--brand-accent: #88c6a3;
--brand-warm: #985962;
--brand-deep: #070707;
--brand-muted: #4e594a;
--ink: #d8d4b4;
--surface-warm: #0c0c0c;
--naturegreen: #2a593f;
--naturegreen-foreground: #d8d4b4;
--duck-dark: #d8d4b4;
--duck-teal: #88c6a3;
--duck-yellow: #525b54;
--duck-orange: #985962;
--duck-forest: #2a593f;
--duck-beige: #20201d;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Blackturq — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-blackturq-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='blackturq'] {
--background: #060606;
--foreground: #c8dcdc;
--card: #0a0a0a;
--card-foreground: #c8dcdc;
--popover: #0a0a0a;
--popover-foreground: #c8dcdc;
--muted: #1b1b1b;
--muted-foreground: #8f9d9d;
--accent: #1b1b1b;
--accent-foreground: #c8dcdc;
--primary: #adf0e9;
--primary-foreground: #060606;
--secondary: #1b1b1b;
--secondary-foreground: #c8dcdc;
--cta: #adf0e9;
--cta-foreground: #060606;
--ctahover: #b7f2ec;
--success: #8fecd5;
--success-foreground: #060606;
--warning: #a9d1d7;
--warning-foreground: #060606;
--destructive: #d35f5f;
--destructive-foreground: #060606;
--info: #adf0e9;
--info-foreground: #060606;
--busy: #be989b;
--busy-foreground: #060606;
--busy-ink: #be989b;
--border: #2f3333;
--input: #2f3333;
--ring: #adf0e9;
--radius: 0.625rem;
--chart-primary: #adf0e9;
--chart-secondary: #485362;
--status-success: #8fecd5;
--status-warning: #a9d1d7;
--status-in-progress: #adf0e9;
--page-bg: #060606;
--page-bg-src: '';
--panel-bg: rgb(10 10 10 / 0.72);
--panel-border: rgb(47 51 51 / 0.9);
--panel-border-bare: rgb(47 51 51 / 0.55);
--panel-raised-bg: rgb(10 10 10 / 0.95);
--panel-raised-border: rgb(47 51 51 / 1);
--panel-accent: #adf0e9;
--panel-header-bg: rgb(27 27 27 / 0.6);
--panel-header-fg: #c8dcdc;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0a0a0a;
--glass-bg: rgb(10 10 10 / 0.55);
--glass-border: rgb(47 51 51 / 0.7);
--dock-bg: rgb(10 10 10 / 0.7);
--dock-border: rgb(47 51 51 / 0.8);
--dock-tooltip-bg: #1b1b1b;
--header-bg: rgb(10 10 10 / 0.8);
--header-border: rgb(47 51 51 / 0.9);
--header-fg: #c8dcdc;
--header-blur: 12px;
--pixel-grid-color: rgb(95 104 104 / 0.07);
--card-grid-color: rgb(95 104 104 / 0.05);
--panel-grid-color: rgb(95 104 104 / 0.06);
--scrollbar-thumb: rgb(50 47 59 / 0.6);
--scrollbar-thumb-hover: rgb(50 47 59 / 0.85);
--scrollbar-thin-thumb: rgb(50 47 59 / 0.45);
--scrollbar-thin-thumb-hover: rgb(50 47 59 / 0.7);
--brand: #adf0e9;
--brand-foreground: #060606;
--brand-primary: #adf0e9;
--brand-accent: #5a676b;
--brand-warm: #be989b;
--brand-deep: #060606;
--brand-muted: #322f3b;
--ink: #c8dcdc;
--surface-warm: #0a0a0a;
--naturegreen: #8fecd5;
--naturegreen-foreground: #060606;
--duck-dark: #c8dcdc;
--duck-teal: #5a676b;
--duck-yellow: #a9d1d7;
--duck-orange: #be989b;
--duck-forest: #8fecd5;
--duck-beige: #1d1f1f;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Cattpuccin Glass — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/Luquatic/omarchy-catppuccin-glass (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='cattpuccin-glass'] {
--background: #0e0f11;
--foreground: #cdd6f4;
--card: #1a1b1e;
--card-foreground: #cdd6f4;
--popover: #1a1b1e;
--popover-foreground: #cdd6f4;
--muted: #2a2b2e;
--muted-foreground: #979eb4;
--accent: #2a2b2e;
--accent-foreground: #cdd6f4;
--primary: #94e2d5;
--primary-foreground: #0e0f11;
--secondary: #2a2b2e;
--secondary-foreground: #cdd6f4;
--cta: #94e2d5;
--cta-foreground: #0e0f11;
--ctahover: #a1e5da;
--success: #a6e3a1;
--success-foreground: #0e0f11;
--warning: #f9e2af;
--warning-foreground: #0e0f11;
--destructive: #f38ba8;
--destructive-foreground: #0e0f11;
--info: #89b4fa;
--info-foreground: #0e0f11;
--busy: #f6b7ac;
--busy-foreground: #0e0f11;
--busy-ink: #f6b7ac;
--border: #3d4048;
--input: #3d4048;
--ring: #94e2d5;
--radius: 0.625rem;
--chart-primary: #94e2d5;
--chart-secondary: #f5c2e7;
--status-success: #a6e3a1;
--status-warning: #f9e2af;
--status-in-progress: #89b4fa;
--page-bg: #0e0f11;
--page-bg-src: '';
--panel-bg: rgb(26 27 30 / 0.72);
--panel-border: rgb(61 64 72 / 0.9);
--panel-border-bare: rgb(61 64 72 / 0.55);
--panel-raised-bg: rgb(26 27 30 / 0.95);
--panel-raised-border: rgb(61 64 72 / 1);
--panel-accent: #94e2d5;
--panel-header-bg: rgb(42 43 46 / 0.6);
--panel-header-fg: #cdd6f4;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1a1b1e;
--glass-bg: rgb(26 27 30 / 0.55);
--glass-border: rgb(61 64 72 / 0.7);
--dock-bg: rgb(26 27 30 / 0.7);
--dock-border: rgb(61 64 72 / 0.8);
--dock-tooltip-bg: #2a2b2e;
--header-bg: rgb(26 27 30 / 0.8);
--header-border: rgb(61 64 72 / 0.9);
--header-fg: #cdd6f4;
--header-blur: 12px;
--pixel-grid-color: rgb(107 111 126 / 0.07);
--card-grid-color: rgb(107 111 126 / 0.05);
--panel-grid-color: rgb(107 111 126 / 0.06);
--scrollbar-thumb: rgb(88 91 112 / 0.6);
--scrollbar-thumb-hover: rgb(88 91 112 / 0.85);
--scrollbar-thin-thumb: rgb(88 91 112 / 0.45);
--scrollbar-thin-thumb-hover: rgb(88 91 112 / 0.7);
--brand: #94e2d5;
--brand-foreground: #0e0f11;
--brand-primary: #94e2d5;
--brand-accent: #94e2d5;
--brand-warm: #f6b7ac;
--brand-deep: #0e0f11;
--brand-muted: #585b70;
--ink: #cdd6f4;
--surface-warm: #1a1b1e;
--naturegreen: #a6e3a1;
--naturegreen-foreground: #0e0f11;
--duck-dark: #cdd6f4;
--duck-teal: #94e2d5;
--duck-yellow: #f9e2af;
--duck-orange: #f6b7ac;
--duck-forest: #a6e3a1;
--duck-beige: #2c2e33;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Corporate — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Light theme (light), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/defer/omarchy-corporate-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='corporate'] {
--background: #eeeeee;
--foreground: #444444;
--card: #e6e6e6;
--card-foreground: #444444;
--popover: #e6e6e6;
--popover-foreground: #444444;
--muted: #e0e0e0;
--muted-foreground: #626262;
--accent: #e0e0e0;
--accent-foreground: #444444;
--primary: #005f87;
--primary-foreground: #d6d6d6;
--secondary: #e0e0e0;
--secondary-foreground: #444444;
--cta: #005f87;
--cta-foreground: #d6d6d6;
--ctahover: #005477;
--success: #008700;
--success-foreground: #fafafa;
--warning: #5f8700;
--warning-foreground: #0b0b0b;
--destructive: #af0000;
--destructive-foreground: #d6d6d6;
--info: #0087af;
--info-foreground: #101010;
--busy: #874400;
--busy-foreground: #d6d6d6;
--busy-ink: #874400;
--border: #d3d3d3;
--input: #cecece;
--ring: #005f87;
--radius: 0.625rem;
--chart-primary: #005f87;
--chart-secondary: #878787;
--status-success: #008700;
--status-warning: #5f8700;
--status-in-progress: #0087af;
--page-bg: #eeeeee;
--page-bg-src: '';
--panel-bg: rgb(230 230 230 / 0.72);
--panel-border: rgb(211 211 211 / 0.9);
--panel-border-bare: rgb(211 211 211 / 0.55);
--panel-raised-bg: rgb(230 230 230 / 0.95);
--panel-raised-border: rgb(211 211 211 / 1);
--panel-accent: #005f87;
--panel-header-bg: rgb(224 224 224 / 0.6);
--panel-header-fg: #444444;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #e6e6e6;
--glass-bg: rgb(230 230 230 / 0.55);
--glass-border: rgb(211 211 211 / 0.7);
--dock-bg: rgb(230 230 230 / 0.7);
--dock-border: rgb(211 211 211 / 0.8);
--dock-tooltip-bg: #e0e0e0;
--header-bg: rgb(230 230 230 / 0.8);
--header-border: rgb(211 211 211 / 0.9);
--header-fg: #444444;
--header-blur: 12px;
--pixel-grid-color: rgb(130 130 130 / 0.07);
--card-grid-color: rgb(130 130 130 / 0.05);
--panel-grid-color: rgb(130 130 130 / 0.06);
--scrollbar-thumb: rgb(188 188 188 / 0.6);
--scrollbar-thumb-hover: rgb(188 188 188 / 0.85);
--scrollbar-thin-thumb: rgb(188 188 188 / 0.45);
--scrollbar-thin-thumb-hover: rgb(188 188 188 / 0.7);
--brand: #005f87;
--brand-foreground: #d6d6d6;
--brand-primary: #005f87;
--brand-accent: #005f87;
--brand-warm: #874400;
--brand-deep: #e0e0e0;
--brand-muted: #bcbcbc;
--ink: #444444;
--surface-warm: #e6e6e6;
--naturegreen: #008700;
--naturegreen-foreground: #fafafa;
--duck-dark: #444444;
--duck-teal: #005f87;
--duck-yellow: #5f8700;
--duck-orange: #874400;
--duck-forest: #008700;
--duck-beige: #d6d6d6;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Crimson Gold — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark) — the source repo's own colors.toml says so directly.
Source: https://github.com/knappkevin/omarchy-crimson-gold-theme (colors.toml (Omarchy schema)), read by scripts/port-community-themes.ts. Values
came straight from the repo's own colors.toml — the same schema and reader the official 22 themes
use, so nothing here is reconstructed. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='crimson-gold'] {
--background: #080505;
--foreground: #dbb42c;
--card: #1a0808;
--card-foreground: #dbb42c;
--popover: #1a0808;
--popover-foreground: #dbb42c;
--muted: #411010;
--muted-foreground: #bebebe;
--accent: #411010;
--accent-foreground: #dbb42c;
--primary: #9f831c;
--primary-foreground: #080505;
--secondary: #411010;
--secondary-foreground: #dbb42c;
--cta: #9f831c;
--cta-foreground: #080505;
--ctahover: #ab9237;
--success: #ffc107;
--success-foreground: #080505;
--warning: #b91c1c;
--warning-foreground: #eaeaea;
--destructive: #ee3333;
--destructive-foreground: #080505;
--info: #e68e0d;
--info-foreground: #080505;
--busy: #eac027;
--busy-foreground: #080505;
--busy-ink: #eac027;
--border: #483b3b;
--input: #483b3b;
--ring: #9f831c;
--radius: 0.625rem;
--chart-primary: #9f831c;
--chart-secondary: #d35f5f;
--status-success: #ffc107;
--status-warning: #b91c1c;
--status-in-progress: #e68e0d;
--page-bg: #080505;
--page-bg-src: '';
--panel-bg: rgb(26 8 8 / 0.72);
--panel-border: rgb(72 59 59 / 0.9);
--panel-border-bare: rgb(72 59 59 / 0.55);
--panel-raised-bg: rgb(26 8 8 / 0.95);
--panel-raised-border: rgb(72 59 59 / 1);
--panel-accent: #9f831c;
--panel-header-bg: rgb(65 16 16 / 0.6);
--panel-header-fg: #dbb42c;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1a0808;
--glass-bg: rgb(26 8 8 / 0.55);
--glass-border: rgb(72 59 59 / 0.7);
--dock-bg: rgb(26 8 8 / 0.7);
--dock-border: rgb(72 59 59 / 0.8);
--dock-tooltip-bg: #411010;
--header-bg: rgb(26 8 8 / 0.8);
--header-border: rgb(72 59 59 / 0.9);
--header-fg: #dbb42c;
--header-blur: 12px;
--pixel-grid-color: rgb(96 96 96 / 0.07);
--card-grid-color: rgb(96 96 96 / 0.05);
--panel-grid-color: rgb(96 96 96 / 0.06);
--scrollbar-thumb: rgb(170 170 170 / 0.6);
--scrollbar-thumb-hover: rgb(170 170 170 / 0.85);
--scrollbar-thin-thumb: rgb(170 170 170 / 0.45);
--scrollbar-thin-thumb-hover: rgb(170 170 170 / 0.7);
--brand: #9f831c;
--brand-foreground: #080505;
--brand-primary: #9f831c;
--brand-accent: #ee0000;
--brand-warm: #eac027;
--brand-deep: #080505;
--brand-muted: #aaaaaa;
--ink: #dbb42c;
--surface-warm: #1a0808;
--naturegreen: #ffc107;
--naturegreen-foreground: #080505;
--duck-dark: #dbb42c;
--duck-teal: #ee0000;
--duck-yellow: #b91c1c;
--duck-orange: #eac027;
--duck-forest: #ffc107;
--duck-beige: #2d190c;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Cyberpunk 2 — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/SeanAnd/omarchy-cyberpunk-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='cyberpunk-2'] {
--background: #120000;
--foreground: #ff4040;
--card: #200000;
--card-foreground: #ff4040;
--popover: #200000;
--popover-foreground: #ff4040;
--muted: #301212;
--muted-foreground: #cd6262;
--accent: #301212;
--accent-foreground: #ff4040;
--primary: #b5e4f4;
--primary-foreground: #120000;
--secondary: #301212;
--secondary-foreground: #ff4040;
--cta: #b5e4f4;
--cta-foreground: #120000;
--ctahover: #bee7f5;
--success: #27a75c;
--success-foreground: #120000;
--warning: #ff3c3c;
--warning-foreground: #120000;
--destructive: #ff1100;
--destructive-foreground: #120000;
--info: #26bdfd;
--info-foreground: #120000;
--busy: #ff271e;
--busy-foreground: #120000;
--busy-ink: #ff271e;
--border: #4c0d0d;
--input: #501313;
--ring: #b5e4f4;
--radius: 0.625rem;
--chart-primary: #b5e4f4;
--chart-secondary: #ffcf3d;
--status-success: #27a75c;
--status-warning: #ff3c3c;
--status-in-progress: #26bdfd;
--page-bg: #120000;
--page-bg-src: '';
--panel-bg: rgb(32 0 0 / 0.72);
--panel-border: rgb(76 13 13 / 0.9);
--panel-border-bare: rgb(76 13 13 / 0.55);
--panel-raised-bg: rgb(32 0 0 / 0.95);
--panel-raised-border: rgb(76 13 13 / 1);
--panel-accent: #b5e4f4;
--panel-header-bg: rgb(48 18 18 / 0.6);
--panel-header-fg: #ff4040;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #200000;
--glass-bg: rgb(32 0 0 / 0.55);
--glass-border: rgb(76 13 13 / 0.7);
--dock-bg: rgb(32 0 0 / 0.7);
--dock-border: rgb(76 13 13 / 0.8);
--dock-tooltip-bg: #301212;
--header-bg: rgb(32 0 0 / 0.8);
--header-border: rgb(76 13 13 / 0.9);
--header-fg: #ff4040;
--header-blur: 12px;
--pixel-grid-color: rgb(154 69 69 / 0.07);
--card-grid-color: rgb(154 69 69 / 0.05);
--panel-grid-color: rgb(154 69 69 / 0.06);
--scrollbar-thumb: rgb(92 88 85 / 0.6);
--scrollbar-thumb-hover: rgb(92 88 85 / 0.85);
--scrollbar-thin-thumb: rgb(92 88 85 / 0.45);
--scrollbar-thin-thumb-hover: rgb(92 88 85 / 0.7);
--brand: #b5e4f4;
--brand-foreground: #120000;
--brand-primary: #b5e4f4;
--brand-accent: #b5e4f4;
--brand-warm: #ff271e;
--brand-deep: #120000;
--brand-muted: #5c5855;
--ink: #ff4040;
--surface-warm: #200000;
--naturegreen: #27a75c;
--naturegreen-foreground: #120000;
--duck-dark: #ff4040;
--duck-teal: #b5e4f4;
--duck-yellow: #ff3c3c;
--duck-orange: #ff271e;
--duck-forest: #27a75c;
--duck-beige: #360606;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Desert Gleam — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Light theme (light), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/avis3nna/desert-gleam (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='desert-gleam'] {
--background: #faf7f3;
--foreground: #3a3644;
--card: #f1eeea;
--card-foreground: #3a3644;
--popover: #f1eeea;
--popover-foreground: #3a3644;
--muted: #ebe8e4;
--muted-foreground: #68656d;
--accent: #ebe8e4;
--accent-foreground: #3a3644;
--primary: #7a6d9e;
--primary-foreground: #fbfbfb;
--secondary: #ebe8e4;
--secondary-foreground: #3a3644;
--cta: #7a6d9e;
--cta-foreground: #fbfbfb;
--ctahover: #6b608b;
--success: #7a9977;
--success-foreground: #2c2933;
--warning: #c68d53;
--warning-foreground: #332f3c;
--destructive: #b36667;
--destructive-foreground: #111110;
--info: #7a6d9e;
--info-foreground: #fbfbfb;
--busy: #bd7a5d;
--busy-foreground: #24222b;
--busy-ink: #97624a;
--border: #dbd8d6;
--input: #d6d3d1;
--ring: #7a6d9e;
--radius: 0.625rem;
--chart-primary: #7a6d9e;
--chart-secondary: #d4886a;
--status-success: #7a9977;
--status-warning: #c68d53;
--status-in-progress: #7a6d9e;
--page-bg: #faf7f3;
--page-bg-src: '';
--panel-bg: rgb(241 238 234 / 0.72);
--panel-border: rgb(219 216 214 / 0.9);
--panel-border-bare: rgb(219 216 214 / 0.55);
--panel-raised-bg: rgb(241 238 234 / 0.95);
--panel-raised-border: rgb(219 216 214 / 1);
--panel-accent: #7a6d9e;
--panel-header-bg: rgb(235 232 228 / 0.6);
--panel-header-fg: #3a3644;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #f1eeea;
--glass-bg: rgb(241 238 234 / 0.55);
--glass-border: rgb(219 216 214 / 0.7);
--dock-bg: rgb(241 238 234 / 0.7);
--dock-border: rgb(219 216 214 / 0.8);
--dock-tooltip-bg: #ebe8e4;
--header-bg: rgb(241 238 234 / 0.8);
--header-border: rgb(219 216 214 / 0.9);
--header-fg: #3a3644;
--header-blur: 12px;
--pixel-grid-color: rgb(139 136 139 / 0.07);
--card-grid-color: rgb(139 136 139 / 0.05);
--panel-grid-color: rgb(139 136 139 / 0.06);
--scrollbar-thumb: rgb(216 203 192 / 0.6);
--scrollbar-thumb-hover: rgb(216 203 192 / 0.85);
--scrollbar-thin-thumb: rgb(216 203 192 / 0.45);
--scrollbar-thin-thumb-hover: rgb(216 203 192 / 0.7);
--brand: #7a6d9e;
--brand-foreground: #fbfbfb;
--brand-primary: #7a6d9e;
--brand-accent: #5f8d7c;
--brand-warm: #bd7a5d;
--brand-deep: #ebe8e4;
--brand-muted: #d8cbc0;
--ink: #3a3644;
--surface-warm: #f1eeea;
--naturegreen: #7a9977;
--naturegreen-foreground: #2c2933;
--duck-dark: #3a3644;
--duck-teal: #5f8d7c;
--duck-yellow: #c68d53;
--duck-orange: #bd7a5d;
--duck-forest: #7a9977;
--duck-beige: #dfdcd9;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Desert Twilight — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/avis3nna/desert-twilight (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='desert-twilight'] {
--background: #0e0e13;
--foreground: #f0f0f2;
--card: #1a1922;
--card-foreground: #f0f0f2;
--popover: #1a1922;
--popover-foreground: #f0f0f2;
--muted: #2a2931;
--muted-foreground: #b0b0b4;
--accent: #2a2931;
--accent-foreground: #f0f0f2;
--primary: #94d4c4;
--primary-foreground: #0e0e13;
--secondary: #2a2931;
--secondary-foreground: #f0f0f2;
--cta: #94d4c4;
--cta-foreground: #0e0e13;
--ctahover: #a1d9cb;
--success: #5fb3ac;
--success-foreground: #0e0e13;
--warning: #d4a255;
--warning-foreground: #0e0e13;
--destructive: #d16b6b;
--destructive-foreground: #0e0e13;
--info: #a89dd1;
--info-foreground: #0e0e13;
--busy: #d38760;
--busy-foreground: #0e0e13;
--busy-ink: #d38760;
--border: #44434b;
--input: #44434b;
--ring: #94d4c4;
--radius: 0.625rem;
--chart-primary: #94d4c4;
--chart-secondary: #e8845c;
--status-success: #5fb3ac;
--status-warning: #d4a255;
--status-in-progress: #a89dd1;
--page-bg: #0e0e13;
--page-bg-src: '';
--panel-bg: rgb(26 25 34 / 0.72);
--panel-border: rgb(68 67 75 / 0.9);
--panel-border-bare: rgb(68 67 75 / 0.55);
--panel-raised-bg: rgb(26 25 34 / 0.95);
--panel-raised-border: rgb(68 67 75 / 1);
--panel-accent: #94d4c4;
--panel-header-bg: rgb(42 41 49 / 0.6);
--panel-header-fg: #f0f0f2;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1a1922;
--glass-bg: rgb(26 25 34 / 0.55);
--glass-border: rgb(68 67 75 / 0.7);
--dock-bg: rgb(26 25 34 / 0.7);
--dock-border: rgb(68 67 75 / 0.8);
--dock-tooltip-bg: #2a2931;
--header-bg: rgb(26 25 34 / 0.8);
--header-border: rgb(68 67 75 / 0.9);
--header-fg: #f0f0f2;
--header-blur: 12px;
--pixel-grid-color: rgb(122 122 128 / 0.07);
--card-grid-color: rgb(122 122 128 / 0.05);
--panel-grid-color: rgb(122 122 128 / 0.06);
--scrollbar-thumb: rgb(58 57 77 / 0.6);
--scrollbar-thumb-hover: rgb(58 57 77 / 0.85);
--scrollbar-thin-thumb: rgb(58 57 77 / 0.45);
--scrollbar-thin-thumb-hover: rgb(58 57 77 / 0.7);
--brand: #94d4c4;
--brand-foreground: #0e0e13;
--brand-primary: #94d4c4;
--brand-accent: #7dbba3;
--brand-warm: #d38760;
--brand-deep: #0e0e13;
--brand-muted: #3a394d;
--ink: #f0f0f2;
--surface-warm: #1a1922;
--naturegreen: #5fb3ac;
--naturegreen-foreground: #0e0e13;
--duck-dark: #f0f0f2;
--duck-teal: #7dbba3;
--duck-yellow: #d4a255;
--duck-orange: #d38760;
--duck-forest: #5fb3ac;
--duck-beige: #2f2f37;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Elysian — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-elysian-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='elysian'] {
--background: #010201;
--foreground: #fdfffd;
--card: #010401;
--card-foreground: #fdfffd;
--popover: #010401;
--popover-foreground: #fdfffd;
--muted: #131613;
--muted-foreground: #b1b4b1;
--accent: #131613;
--accent-foreground: #fdfffd;
--primary: #e3f5f6;
--primary-foreground: #010201;
--secondary: #131613;
--secondary-foreground: #fdfffd;
--cta: #e3f5f6;
--cta-foreground: #010201;
--ctahover: #e6f6f7;
--success: #70cf6c;
--success-foreground: #010201;
--warning: #dfec63;
--warning-foreground: #010201;
--destructive: #bf5a7c;
--destructive-foreground: #010201;
--info: #62e2a4;
--info-foreground: #010201;
--busy: #cfa370;
--busy-foreground: #010201;
--busy-ink: #cfa370;
--border: #323532;
--input: #323532;
--ring: #e3f5f6;
--radius: 0.625rem;
--chart-primary: #e3f5f6;
--chart-secondary: #e0eb7a;
--status-success: #70cf6c;
--status-warning: #dfec63;
--status-in-progress: #62e2a4;
--page-bg: #010201;
--page-bg-src: '';
--panel-bg: rgb(1 4 1 / 0.72);
--panel-border: rgb(50 53 50 / 0.9);
--panel-border-bare: rgb(50 53 50 / 0.55);
--panel-raised-bg: rgb(1 4 1 / 0.95);
--panel-raised-border: rgb(50 53 50 / 1);
--panel-accent: #e3f5f6;
--panel-header-bg: rgb(19 22 19 / 0.6);
--panel-header-fg: #fdfffd;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #010401;
--glass-bg: rgb(1 4 1 / 0.55);
--glass-border: rgb(50 53 50 / 0.7);
--dock-bg: rgb(1 4 1 / 0.7);
--dock-border: rgb(50 53 50 / 0.8);
--dock-tooltip-bg: #131613;
--header-bg: rgb(1 4 1 / 0.8);
--header-border: rgb(50 53 50 / 0.9);
--header-fg: #fdfffd;
--header-blur: 12px;
--pixel-grid-color: rgb(114 117 114 / 0.07);
--card-grid-color: rgb(114 117 114 / 0.05);
--panel-grid-color: rgb(114 117 114 / 0.06);
--scrollbar-thumb: rgb(81 138 81 / 0.6);
--scrollbar-thumb-hover: rgb(81 138 81 / 0.85);
--scrollbar-thin-thumb: rgb(81 138 81 / 0.45);
--scrollbar-thin-thumb-hover: rgb(81 138 81 / 0.7);
--brand: #e3f5f6;
--brand-foreground: #010201;
--brand-primary: #e3f5f6;
--brand-accent: #9ed8dd;
--brand-warm: #cfa370;
--brand-deep: #010201;
--brand-muted: #518a51;
--ink: #fdfffd;
--surface-warm: #010401;
--naturegreen: #70cf6c;
--naturegreen-foreground: #010201;
--duck-dark: #fdfffd;
--duck-teal: #9ed8dd;
--duck-yellow: #dfec63;
--duck-orange: #cfa370;
--duck-forest: #70cf6c;
--duck-beige: #1a1d1a;
--logo-src: '/officer-logo.svg';
}
+8 -8
View File
@@ -9,9 +9,9 @@
[data-theme='ethereal'] {
--background: #030610;
--foreground: #ffcead;
--card: #060B1E;
--card: #060b1e;
--card-foreground: #ffcead;
--popover: #060B1E;
--popover: #060b1e;
--popover-foreground: #ffcead;
--muted: #131a3a;
--muted-foreground: #c9b8a6;
@@ -26,9 +26,9 @@
--ctahover: #8d91de;
--success: #92a593;
--success-foreground: #030610;
--warning: #E9BB4F;
--warning: #e9bb4f;
--warning-foreground: #030610;
--destructive: #ED5B5A;
--destructive: #ed5b5a;
--destructive-foreground: #030610;
--info: #7d82d9;
--info-foreground: #030610;
@@ -42,7 +42,7 @@
--chart-primary: #7d82d9;
--chart-secondary: #c89dc1;
--status-success: #92a593;
--status-warning: #E9BB4F;
--status-warning: #e9bb4f;
--status-in-progress: #7d82d9;
--page-bg: #030610;
--page-bg-src: '';
@@ -56,7 +56,7 @@
--panel-header-fg: #ffcead;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #060B1E;
--card-bg: #060b1e;
--glass-bg: rgb(6 11 30 / 0.55);
--glass-border: rgb(61 59 68 / 0.7);
--dock-bg: rgb(6 11 30 / 0.7);
@@ -81,12 +81,12 @@
--brand-deep: #030610;
--brand-muted: #6d7db6;
--ink: #ffcead;
--surface-warm: #060B1E;
--surface-warm: #060b1e;
--naturegreen: #92a593;
--naturegreen-foreground: #030610;
--duck-dark: #ffcead;
--duck-teal: #a3bfd1;
--duck-yellow: #E9BB4F;
--duck-yellow: #e9bb4f;
--duck-orange: #eb8b54;
--duck-forest: #92a593;
--duck-beige: #1f1f2c;
@@ -0,0 +1,97 @@
/*
Evergarden — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/celsobenedetti/omarchy-evergarden (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='evergarden'] {
--background: #131719;
--foreground: #adc9bc;
--card: #232a2e;
--card-foreground: #adc9bc;
--popover: #232a2e;
--popover-foreground: #adc9bc;
--muted: #32393d;
--muted-foreground: #93a69f;
--accent: #32393d;
--accent-foreground: #adc9bc;
--primary: #b3e6db;
--primary-foreground: #131719;
--secondary: #32393d;
--secondary-foreground: #adc9bc;
--cta: #b3e6db;
--cta-foreground: #131719;
--ctahover: #bce9df;
--success: #cbe3b3;
--success-foreground: #131719;
--warning: #f5d098;
--warning-foreground: #131719;
--destructive: #f57f82;
--destructive-foreground: #131719;
--info: #839e9a;
--info-foreground: #131719;
--busy: #f5a88d;
--busy-foreground: #131719;
--busy-ink: #f5a88d;
--border: #3e494a;
--input: #3e494a;
--ring: #b3e6db;
--radius: 0.625rem;
--chart-primary: #b3e6db;
--chart-secondary: #b3e6db;
--status-success: #cbe3b3;
--status-warning: #f5d098;
--status-in-progress: #839e9a;
--page-bg: #131719;
--page-bg-src: '';
--panel-bg: rgb(35 42 46 / 0.72);
--panel-border: rgb(62 73 74 / 0.9);
--panel-border-bare: rgb(62 73 74 / 0.55);
--panel-raised-bg: rgb(35 42 46 / 0.95);
--panel-raised-border: rgb(62 73 74 / 1);
--panel-accent: #b3e6db;
--panel-header-bg: rgb(50 57 61 / 0.6);
--panel-header-fg: #adc9bc;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #232a2e;
--glass-bg: rgb(35 42 46 / 0.55);
--glass-border: rgb(62 73 74 / 0.7);
--dock-bg: rgb(35 42 46 / 0.7);
--dock-border: rgb(62 73 74 / 0.8);
--dock-tooltip-bg: #32393d;
--header-bg: rgb(35 42 46 / 0.8);
--header-border: rgb(62 73 74 / 0.9);
--header-fg: #adc9bc;
--header-blur: 12px;
--pixel-grid-color: rgb(101 118 114 / 0.07);
--card-grid-color: rgb(101 118 114 / 0.05);
--panel-grid-color: rgb(101 118 114 / 0.06);
--scrollbar-thumb: rgb(173 201 188 / 0.6);
--scrollbar-thumb-hover: rgb(173 201 188 / 0.85);
--scrollbar-thin-thumb: rgb(173 201 188 / 0.45);
--scrollbar-thin-thumb-hover: rgb(173 201 188 / 0.7);
--brand: #b3e6db;
--brand-foreground: #131719;
--brand-primary: #b3e6db;
--brand-accent: #b3e6db;
--brand-warm: #f5a88d;
--brand-deep: #131719;
--brand-muted: #adc9bc;
--ink: #adc9bc;
--surface-warm: #232a2e;
--naturegreen: #cbe3b3;
--naturegreen-foreground: #131719;
--duck-dark: #adc9bc;
--duck-teal: #b3e6db;
--duck-yellow: #f5d098;
--duck-orange: #f5a88d;
--duck-forest: #cbe3b3;
--duck-beige: #313a3c;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Fiery Ocean — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-fiery-ocean-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='fiery-ocean'] {
--background: #00121a;
--foreground: #fdf0d5;
--card: #002130;
--card-foreground: #fdf0d5;
--popover: #002130;
--popover-foreground: #fdf0d5;
--muted: #12313e;
--muted-foreground: #b1b2a4;
--accent: #12313e;
--accent-foreground: #fdf0d5;
--primary: #8be9fd;
--primary-foreground: #00121a;
--secondary: #12313e;
--secondary-foreground: #fdf0d5;
--cta: #8be9fd;
--cta-foreground: #00121a;
--ctahover: #99ecfd;
--success: #2a9d8f;
--success-foreground: #00121a;
--warning: #fca311;
--warning-foreground: #00121a;
--destructive: #e63946;
--destructive-foreground: #00121a;
--info: #669bbc;
--info-foreground: #00121a;
--busy: #f16e2c;
--busy-foreground: #00121a;
--busy-ink: #f16e2c;
--border: #324a50;
--input: #324a50;
--ring: #8be9fd;
--radius: 0.625rem;
--chart-primary: #8be9fd;
--chart-secondary: #e63946;
--status-success: #2a9d8f;
--status-warning: #fca311;
--status-in-progress: #669bbc;
--page-bg: #00121a;
--page-bg-src: '';
--panel-bg: rgb(0 33 48 / 0.72);
--panel-border: rgb(50 74 80 / 0.9);
--panel-border-bare: rgb(50 74 80 / 0.55);
--panel-raised-bg: rgb(0 33 48 / 0.95);
--panel-raised-border: rgb(50 74 80 / 1);
--panel-accent: #8be9fd;
--panel-header-bg: rgb(18 49 62 / 0.6);
--panel-header-fg: #fdf0d5;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #002130;
--glass-bg: rgb(0 33 48 / 0.55);
--glass-border: rgb(50 74 80 / 0.7);
--dock-bg: rgb(0 33 48 / 0.7);
--dock-border: rgb(50 74 80 / 0.8);
--dock-tooltip-bg: #12313e;
--header-bg: rgb(0 33 48 / 0.8);
--header-border: rgb(50 74 80 / 0.9);
--header-fg: #fdf0d5;
--header-blur: 12px;
--pixel-grid-color: rgb(114 126 122 / 0.07);
--card-grid-color: rgb(114 126 122 / 0.05);
--panel-grid-color: rgb(114 126 122 / 0.06);
--scrollbar-thumb: rgb(80 104 116 / 0.6);
--scrollbar-thumb-hover: rgb(80 104 116 / 0.85);
--scrollbar-thin-thumb: rgb(80 104 116 / 0.45);
--scrollbar-thin-thumb-hover: rgb(80 104 116 / 0.7);
--brand: #8be9fd;
--brand-foreground: #00121a;
--brand-primary: #8be9fd;
--brand-accent: #90e0ef;
--brand-warm: #f16e2c;
--brand-deep: #00121a;
--brand-muted: #506874;
--ink: #fdf0d5;
--surface-warm: #002130;
--naturegreen: #2a9d8f;
--naturegreen-foreground: #00121a;
--duck-dark: #fdf0d5;
--duck-teal: #90e0ef;
--duck-yellow: #fca311;
--duck-orange: #f16e2c;
--duck-forest: #2a9d8f;
--duck-beige: #193641;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Fireside — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-fireside-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='fireside'] {
--background: #060a12;
--foreground: #f0f2f5;
--card: #0a1220;
--card-foreground: #f0f2f5;
--popover: #0a1220;
--popover-foreground: #f0f2f5;
--muted: #1b2330;
--muted-foreground: #abafb5;
--accent: #1b2330;
--accent-foreground: #f0f2f5;
--primary: #e3ddda;
--primary-foreground: #060a12;
--secondary: #1b2330;
--secondary-foreground: #f0f2f5;
--cta: #e3ddda;
--cta-foreground: #060a12;
--ctahover: #e6e1de;
--success: #889889;
--success-foreground: #060a12;
--warning: #b8b5a2;
--warning-foreground: #060a12;
--destructive: #e06b58;
--destructive-foreground: #060a12;
--info: #b8b8b6;
--info-foreground: #060a12;
--busy: #cc907d;
--busy-foreground: #060a12;
--busy-ink: #cc907d;
--border: #373e4a;
--input: #373e4a;
--ring: #e3ddda;
--radius: 0.625rem;
--chart-primary: #e3ddda;
--chart-secondary: #e48b7a;
--status-success: #889889;
--status-warning: #b8b5a2;
--status-in-progress: #b8b8b6;
--page-bg: #060a12;
--page-bg-src: '';
--panel-bg: rgb(10 18 32 / 0.72);
--panel-border: rgb(55 62 74 / 0.9);
--panel-border-bare: rgb(55 62 74 / 0.55);
--panel-raised-bg: rgb(10 18 32 / 0.95);
--panel-raised-border: rgb(55 62 74 / 1);
--panel-accent: #e3ddda;
--panel-header-bg: rgb(27 35 48 / 0.6);
--panel-header-fg: #f0f2f5;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0a1220;
--glass-bg: rgb(10 18 32 / 0.55);
--glass-border: rgb(55 62 74 / 0.7);
--dock-bg: rgb(10 18 32 / 0.7);
--dock-border: rgb(55 62 74 / 0.8);
--dock-tooltip-bg: #1b2330;
--header-bg: rgb(10 18 32 / 0.8);
--header-border: rgb(55 62 74 / 0.9);
--header-fg: #f0f2f5;
--header-blur: 12px;
--pixel-grid-color: rgb(113 119 128 / 0.07);
--card-grid-color: rgb(113 119 128 / 0.05);
--panel-grid-color: rgb(113 119 128 / 0.06);
--scrollbar-thumb: rgb(85 92 101 / 0.6);
--scrollbar-thumb-hover: rgb(85 92 101 / 0.85);
--scrollbar-thin-thumb: rgb(85 92 101 / 0.45);
--scrollbar-thin-thumb-hover: rgb(85 92 101 / 0.7);
--brand: #e3ddda;
--brand-foreground: #060a12;
--brand-primary: #e3ddda;
--brand-accent: #d0cac7;
--brand-warm: #cc907d;
--brand-deep: #060a12;
--brand-muted: #555c65;
--ink: #f0f2f5;
--surface-warm: #0a1220;
--naturegreen: #889889;
--naturegreen-foreground: #060a12;
--duck-dark: #f0f2f5;
--duck-teal: #d0cac7;
--duck-yellow: #b8b5a2;
--duck-orange: #cc907d;
--duck-forest: #889889;
--duck-beige: #212835;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Firesky — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-firesky-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='firesky'] {
--background: #080808;
--foreground: #e0d8d0;
--card: #0f0f0f;
--card-foreground: #e0d8d0;
--popover: #0f0f0f;
--popover-foreground: #e0d8d0;
--muted: #202020;
--muted-foreground: #a19c96;
--accent: #202020;
--accent-foreground: #e0d8d0;
--primary: #70e0dd;
--primary-foreground: #080808;
--secondary: #202020;
--secondary-foreground: #e0d8d0;
--cta: #70e0dd;
--cta-foreground: #080808;
--ctahover: #81e4e1;
--success: #1a6b6e;
--success-foreground: #e2dad2;
--warning: #e68040;
--warning-foreground: #080808;
--destructive: #e6441a;
--destructive-foreground: #080808;
--info: #2a7a80;
--info-foreground: #f3f3f3;
--busy: #e6622d;
--busy-foreground: #080808;
--busy-ink: #e6622d;
--border: #383635;
--input: #383635;
--ring: #70e0dd;
--radius: 0.625rem;
--chart-primary: #70e0dd;
--chart-secondary: #c4753d;
--status-success: #1a6b6e;
--status-warning: #e68040;
--status-in-progress: #2a7a80;
--page-bg: #080808;
--page-bg-src: '';
--panel-bg: rgb(15 15 15 / 0.72);
--panel-border: rgb(56 54 53 / 0.9);
--panel-border-bare: rgb(56 54 53 / 0.55);
--panel-raised-bg: rgb(15 15 15 / 0.95);
--panel-raised-border: rgb(56 54 53 / 1);
--panel-accent: #70e0dd;
--panel-header-bg: rgb(32 32 32 / 0.6);
--panel-header-fg: #e0d8d0;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0f0f0f;
--glass-bg: rgb(15 15 15 / 0.55);
--glass-border: rgb(56 54 53 / 0.7);
--dock-bg: rgb(15 15 15 / 0.7);
--dock-border: rgb(56 54 53 / 0.8);
--dock-tooltip-bg: #202020;
--header-bg: rgb(15 15 15 / 0.8);
--header-border: rgb(56 54 53 / 0.9);
--header-fg: #e0d8d0;
--header-blur: 12px;
--pixel-grid-color: rgb(109 105 102 / 0.07);
--card-grid-color: rgb(109 105 102 / 0.05);
--panel-grid-color: rgb(109 105 102 / 0.06);
--scrollbar-thumb: rgb(77 107 107 / 0.6);
--scrollbar-thumb-hover: rgb(77 107 107 / 0.85);
--scrollbar-thin-thumb: rgb(77 107 107 / 0.45);
--scrollbar-thin-thumb-hover: rgb(77 107 107 / 0.7);
--brand: #70e0dd;
--brand-foreground: #080808;
--brand-primary: #70e0dd;
--brand-accent: #40b8b4;
--brand-warm: #e6622d;
--brand-deep: #080808;
--brand-muted: #4d6b6b;
--ink: #e0d8d0;
--surface-warm: #0f0f0f;
--naturegreen: #1a6b6e;
--naturegreen-foreground: #e2dad2;
--duck-dark: #e0d8d0;
--duck-teal: #40b8b4;
--duck-yellow: #e68040;
--duck-orange: #e6622d;
--duck-forest: #1a6b6e;
--duck-beige: #242322;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Flexoki Dark — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/euandeas/omarchy-flexoki-dark-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='flexoki-dark'] {
--background: #090808;
--foreground: #cecdc3;
--card: #100f0f;
--card-foreground: #cecdc3;
--popover: #100f0f;
--popover-foreground: #cecdc3;
--muted: #212020;
--muted-foreground: #95948d;
--accent: #212020;
--accent-foreground: #cecdc3;
--primary: #3aa99f;
--primary-foreground: #090808;
--secondary: #212020;
--secondary-foreground: #cecdc3;
--cta: #3aa99f;
--cta-foreground: #090808;
--ctahover: #52b3ab;
--success: #66800b;
--success-foreground: #060505;
--warning: #ad8301;
--warning-foreground: #090808;
--destructive: #af3029;
--destructive-foreground: #dadad2;
--info: #205ea6;
--info-foreground: #d8d7cf;
--busy: #ae5a15;
--busy-foreground: #f9f9f9;
--busy-ink: #b46627;
--border: #353432;
--input: #353432;
--ring: #3aa99f;
--radius: 0.625rem;
--chart-primary: #3aa99f;
--chart-secondary: #a02f6f;
--status-success: #66800b;
--status-warning: #ad8301;
--status-in-progress: #205ea6;
--page-bg: #090808;
--page-bg-src: '';
--panel-bg: rgb(16 15 15 / 0.72);
--panel-border: rgb(53 52 50 / 0.9);
--panel-border-bare: rgb(53 52 50 / 0.55);
--panel-raised-bg: rgb(16 15 15 / 0.95);
--panel-raised-border: rgb(53 52 50 / 1);
--panel-accent: #3aa99f;
--panel-header-bg: rgb(33 32 32 / 0.6);
--panel-header-fg: #cecdc3;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #100f0f;
--glass-bg: rgb(16 15 15 / 0.55);
--glass-border: rgb(53 52 50 / 0.7);
--dock-bg: rgb(16 15 15 / 0.7);
--dock-border: rgb(53 52 50 / 0.8);
--dock-tooltip-bg: #212020;
--header-bg: rgb(16 15 15 / 0.8);
--header-border: rgb(53 52 50 / 0.9);
--header-fg: #cecdc3;
--header-blur: 12px;
--pixel-grid-color: rgb(101 100 96 / 0.07);
--card-grid-color: rgb(101 100 96 / 0.05);
--panel-grid-color: rgb(101 100 96 / 0.06);
--scrollbar-thumb: rgb(111 110 105 / 0.6);
--scrollbar-thumb-hover: rgb(111 110 105 / 0.85);
--scrollbar-thin-thumb: rgb(111 110 105 / 0.45);
--scrollbar-thin-thumb-hover: rgb(111 110 105 / 0.7);
--brand: #3aa99f;
--brand-foreground: #090808;
--brand-primary: #3aa99f;
--brand-accent: #24837b;
--brand-warm: #ae5a15;
--brand-deep: #090808;
--brand-muted: #6f6e69;
--ink: #cecdc3;
--surface-warm: #100f0f;
--naturegreen: #66800b;
--naturegreen-foreground: #060505;
--duck-dark: #cecdc3;
--duck-teal: #24837b;
--duck-yellow: #ad8301;
--duck-orange: #ae5a15;
--duck-forest: #66800b;
--duck-beige: #232221;
--logo-src: '/officer-logo.svg';
}
@@ -7,56 +7,56 @@
Source: basecamp/omarchy themes/flexoki-light/colors.toml (mode: light)
*/
[data-theme='flexoki-light'] {
--background: #FFFCF0;
--foreground: #100F0F;
--card: #E6E4D9;
--card-foreground: #100F0F;
--popover: #E6E4D9;
--popover-foreground: #100F0F;
--background: #fffcf0;
--foreground: #100f0f;
--card: #e6e4d9;
--card-foreground: #100f0f;
--popover: #e6e4d9;
--popover-foreground: #100f0f;
--muted: #f2efe4;
--muted-foreground: #403E3C;
--muted-foreground: #403e3c;
--accent: #f2efe4;
--accent-foreground: #100F0F;
--primary: #205EA6;
--accent-foreground: #100f0f;
--primary: #205ea6;
--primary-foreground: #e5e2d8;
--secondary: #f2efe4;
--secondary-foreground: #100F0F;
--cta: #205EA6;
--secondary-foreground: #100f0f;
--cta: #205ea6;
--cta-foreground: #e5e2d8;
--ctahover: #1c5392;
--success: #879A39;
--success-foreground: #100F0F;
--warning: #D0A215;
--warning-foreground: #100F0F;
--destructive: #D14D41;
--success: #879a39;
--success-foreground: #100f0f;
--warning: #d0a215;
--warning-foreground: #100f0f;
--destructive: #d14d41;
--destructive-foreground: #0d0c0c;
--info: #205EA6;
--info: #205ea6;
--info-foreground: #e5e2d8;
--busy: #d0772b;
--busy-foreground: #100F0F;
--busy-foreground: #100f0f;
--busy-ink: #ac6223;
--border: #cbc9c0;
--input: #cbc9c0;
--ring: #205EA6;
--ring: #205ea6;
--radius: 0.625rem;
--chart-primary: #205EA6;
--chart-secondary: #CE5D97;
--status-success: #879A39;
--status-warning: #D0A215;
--status-in-progress: #205EA6;
--page-bg: #FFFCF0;
--chart-primary: #205ea6;
--chart-secondary: #ce5d97;
--status-success: #879a39;
--status-warning: #d0a215;
--status-in-progress: #205ea6;
--page-bg: #fffcf0;
--page-bg-src: '';
--panel-bg: rgb(230 228 217 / 0.72);
--panel-border: rgb(203 201 192 / 0.9);
--panel-border-bare: rgb(203 201 192 / 0.55);
--panel-raised-bg: rgb(230 228 217 / 0.95);
--panel-raised-border: rgb(203 201 192 / 1);
--panel-accent: #205EA6;
--panel-accent: #205ea6;
--panel-header-bg: rgb(242 239 228 / 0.6);
--panel-header-fg: #100F0F;
--panel-header-fg: #100f0f;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #E6E4D9;
--card-bg: #e6e4d9;
--glass-bg: rgb(230 228 217 / 0.55);
--glass-border: rgb(203 201 192 / 0.7);
--dock-bg: rgb(230 228 217 / 0.7);
@@ -64,7 +64,7 @@
--dock-tooltip-bg: #f2efe4;
--header-bg: rgb(230 228 217 / 0.8);
--header-border: rgb(203 201 192 / 0.9);
--header-fg: #100F0F;
--header-fg: #100f0f;
--header-blur: 12px;
--pixel-grid-color: rgb(132 130 125 / 0.07);
--card-grid-color: rgb(132 130 125 / 0.05);
@@ -73,22 +73,22 @@
--scrollbar-thumb-hover: rgb(183 181 172 / 0.85);
--scrollbar-thin-thumb: rgb(183 181 172 / 0.45);
--scrollbar-thin-thumb-hover: rgb(183 181 172 / 0.7);
--brand: #205EA6;
--brand: #205ea6;
--brand-foreground: #e5e2d8;
--brand-primary: #205EA6;
--brand-accent: #3AA99F;
--brand-primary: #205ea6;
--brand-accent: #3aa99f;
--brand-warm: #d0772b;
--brand-deep: #f2efe4;
--brand-muted: #B7B5AC;
--ink: #100F0F;
--surface-warm: #E6E4D9;
--naturegreen: #879A39;
--naturegreen-foreground: #100F0F;
--duck-dark: #100F0F;
--duck-teal: #3AA99F;
--duck-yellow: #D0A215;
--brand-muted: #b7b5ac;
--ink: #100f0f;
--surface-warm: #e6e4d9;
--naturegreen: #879a39;
--naturegreen-foreground: #100f0f;
--duck-dark: #100f0f;
--duck-teal: #3aa99f;
--duck-yellow: #d0a215;
--duck-orange: #d0772b;
--duck-forest: #879A39;
--duck-forest: #879a39;
--duck-beige: #d1cfc5;
--logo-src: '/officer-logo.svg';
}
+97
View File
@@ -0,0 +1,97 @@
/*
Frost — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-frost-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='frost'] {
--background: #06080f;
--foreground: #d4d5d9;
--card: #0a0f1c;
--card-foreground: #d4d5d9;
--popover: #0a0f1c;
--popover-foreground: #d4d5d9;
--muted: #1b202c;
--muted-foreground: #979aa0;
--accent: #1b202c;
--accent-foreground: #d4d5d9;
--primary: #b8c7d0;
--primary-foreground: #06080f;
--secondary: #1b202c;
--secondary-foreground: #d4d5d9;
--cta: #b8c7d0;
--cta-foreground: #06080f;
--ctahover: #c1ced6;
--success: #95a8b8;
--success-foreground: #06080f;
--warning: #9fadb8;
--warning-foreground: #06080f;
--destructive: #869aac;
--destructive-foreground: #06080f;
--info: #9bb0c2;
--info-foreground: #06080f;
--busy: #93a4b2;
--busy-foreground: #06080f;
--busy-ink: #93a4b2;
--border: #313641;
--input: #313641;
--ring: #b8c7d0;
--radius: 0.625rem;
--chart-primary: #b8c7d0;
--chart-secondary: #a8b9c6;
--status-success: #95a8b8;
--status-warning: #9fadb8;
--status-in-progress: #9bb0c2;
--page-bg: #06080f;
--page-bg-src: '';
--panel-bg: rgb(10 15 28 / 0.72);
--panel-border: rgb(49 54 65 / 0.9);
--panel-border-bare: rgb(49 54 65 / 0.55);
--panel-raised-bg: rgb(10 15 28 / 0.95);
--panel-raised-border: rgb(49 54 65 / 1);
--panel-accent: #b8c7d0;
--panel-header-bg: rgb(27 32 44 / 0.6);
--panel-header-fg: #d4d5d9;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0a0f1c;
--glass-bg: rgb(10 15 28 / 0.55);
--glass-border: rgb(49 54 65 / 0.7);
--dock-bg: rgb(10 15 28 / 0.7);
--dock-border: rgb(49 54 65 / 0.8);
--dock-tooltip-bg: #1b202c;
--header-bg: rgb(10 15 28 / 0.8);
--header-border: rgb(49 54 65 / 0.9);
--header-fg: #d4d5d9;
--header-blur: 12px;
--pixel-grid-color: rgb(101 104 113 / 0.07);
--card-grid-color: rgb(101 104 113 / 0.05);
--panel-grid-color: rgb(101 104 113 / 0.06);
--scrollbar-thumb: rgb(95 99 116 / 0.6);
--scrollbar-thumb-hover: rgb(95 99 116 / 0.85);
--scrollbar-thin-thumb: rgb(95 99 116 / 0.45);
--scrollbar-thin-thumb-hover: rgb(95 99 116 / 0.7);
--brand: #b8c7d0;
--brand-foreground: #06080f;
--brand-primary: #b8c7d0;
--brand-accent: #b8c7d0;
--brand-warm: #93a4b2;
--brand-deep: #06080f;
--brand-muted: #5f6374;
--ink: #d4d5d9;
--surface-warm: #0a0f1c;
--naturegreen: #95a8b8;
--naturegreen-foreground: #06080f;
--duck-dark: #d4d5d9;
--duck-teal: #b8c7d0;
--duck-yellow: #9fadb8;
--duck-orange: #93a4b2;
--duck-forest: #95a8b8;
--duck-beige: #1e232f;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Futurism — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-futurism-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='futurism'] {
--background: #060b16;
--foreground: #f0f8ff;
--card: #0a1428;
--card-foreground: #f0f8ff;
--popover: #0a1428;
--popover-foreground: #f0f8ff;
--muted: #1b2437;
--muted-foreground: #abb4bf;
--accent: #1b2437;
--accent-foreground: #f0f8ff;
--primary: #f0f8ff;
--primary-foreground: #060b16;
--secondary: #1b2437;
--secondary-foreground: #f0f8ff;
--cta: #f0f8ff;
--cta-foreground: #060b16;
--ctahover: #f2f9ff;
--success: #00bfff;
--success-foreground: #060b16;
--warning: #5076b2;
--warning-foreground: #ffffff;
--destructive: #ff40a3;
--destructive-foreground: #060b16;
--info: #f0f8ff;
--info-foreground: #060b16;
--busy: #a85bab;
--busy-foreground: #050913;
--busy-ink: #aa5fad;
--border: #374152;
--input: #374152;
--ring: #f0f8ff;
--radius: 0.625rem;
--chart-primary: #f0f8ff;
--chart-secondary: #ff40a3;
--status-success: #00bfff;
--status-warning: #5076b2;
--status-in-progress: #f0f8ff;
--page-bg: #060b16;
--page-bg-src: '';
--panel-bg: rgb(10 20 40 / 0.72);
--panel-border: rgb(55 65 82 / 0.9);
--panel-border-bare: rgb(55 65 82 / 0.55);
--panel-raised-bg: rgb(10 20 40 / 0.95);
--panel-raised-border: rgb(55 65 82 / 1);
--panel-accent: #f0f8ff;
--panel-header-bg: rgb(27 36 55 / 0.6);
--panel-header-fg: #f0f8ff;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0a1428;
--glass-bg: rgb(10 20 40 / 0.55);
--glass-border: rgb(55 65 82 / 0.7);
--dock-bg: rgb(10 20 40 / 0.7);
--dock-border: rgb(55 65 82 / 0.8);
--dock-tooltip-bg: #1b2437;
--header-bg: rgb(10 20 40 / 0.8);
--header-border: rgb(55 65 82 / 0.9);
--header-fg: #f0f8ff;
--header-blur: 12px;
--pixel-grid-color: rgb(113 123 137 / 0.07);
--card-grid-color: rgb(113 123 137 / 0.05);
--panel-grid-color: rgb(113 123 137 / 0.06);
--scrollbar-thumb: rgb(240 248 255 / 0.6);
--scrollbar-thumb-hover: rgb(240 248 255 / 0.85);
--scrollbar-thin-thumb: rgb(240 248 255 / 0.45);
--scrollbar-thin-thumb-hover: rgb(240 248 255 / 0.7);
--brand: #f0f8ff;
--brand-foreground: #060b16;
--brand-primary: #f0f8ff;
--brand-accent: #f0f8ff;
--brand-warm: #a85bab;
--brand-deep: #060b16;
--brand-muted: #f0f8ff;
--ink: #f0f8ff;
--surface-warm: #0a1428;
--naturegreen: #00bfff;
--naturegreen-foreground: #060b16;
--duck-dark: #f0f8ff;
--duck-teal: #f0f8ff;
--duck-yellow: #5076b2;
--duck-orange: #a85bab;
--duck-forest: #00bfff;
--duck-beige: #212b3e;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Ghost Pastel — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/row-huh/omarchy-ghost-pastel-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='ghost-pastel'] {
--background: #040303;
--foreground: #ffffff;
--card: #070506;
--card-foreground: #ffffff;
--popover: #070506;
--popover-foreground: #ffffff;
--muted: #181717;
--muted-foreground: #b5b4b4;
--accent: #181717;
--accent-foreground: #ffffff;
--primary: #e4e6fb;
--primary-foreground: #040303;
--secondary: #181717;
--secondary-foreground: #ffffff;
--cta: #e4e6fb;
--cta-foreground: #040303;
--ctahover: #e7e9fb;
--success: #648ed0;
--success-foreground: #040303;
--warning: #e095b5;
--warning-foreground: #040303;
--destructive: #b37580;
--destructive-foreground: #040303;
--info: #979fec;
--info-foreground: #040303;
--busy: #ca859b;
--busy-foreground: #040303;
--busy-ink: #ca859b;
--border: #383637;
--input: #383637;
--ring: #e4e6fb;
--radius: 0.625rem;
--chart-primary: #e4e6fb;
--chart-secondary: #cd9dcf;
--status-success: #648ed0;
--status-warning: #e095b5;
--status-in-progress: #979fec;
--page-bg: #040303;
--page-bg-src: '';
--panel-bg: rgb(7 5 6 / 0.72);
--panel-border: rgb(56 54 55 / 0.9);
--panel-border-bare: rgb(56 54 55 / 0.55);
--panel-raised-bg: rgb(7 5 6 / 0.95);
--panel-raised-border: rgb(56 54 55 / 1);
--panel-accent: #e4e6fb;
--panel-header-bg: rgb(24 23 23 / 0.6);
--panel-header-fg: #ffffff;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #070506;
--glass-bg: rgb(7 5 6 / 0.55);
--glass-border: rgb(56 54 55 / 0.7);
--dock-bg: rgb(7 5 6 / 0.7);
--dock-border: rgb(56 54 55 / 0.8);
--dock-tooltip-bg: #181717;
--header-bg: rgb(7 5 6 / 0.8);
--header-border: rgb(56 54 55 / 0.9);
--header-fg: #ffffff;
--header-blur: 12px;
--pixel-grid-color: rgb(119 118 118 / 0.07);
--card-grid-color: rgb(119 118 118 / 0.05);
--panel-grid-color: rgb(119 118 118 / 0.06);
--scrollbar-thumb: rgb(131 111 121 / 0.6);
--scrollbar-thumb-hover: rgb(131 111 121 / 0.85);
--scrollbar-thin-thumb: rgb(131 111 121 / 0.45);
--scrollbar-thin-thumb-hover: rgb(131 111 121 / 0.7);
--brand: #e4e6fb;
--brand-foreground: #040303;
--brand-primary: #e4e6fb;
--brand-accent: #7c93dd;
--brand-warm: #ca859b;
--brand-deep: #040303;
--brand-muted: #836f79;
--ink: #ffffff;
--surface-warm: #070506;
--naturegreen: #648ed0;
--naturegreen-foreground: #040303;
--duck-dark: #ffffff;
--duck-teal: #7c93dd;
--duck-yellow: #e095b5;
--duck-orange: #ca859b;
--duck-forest: #648ed0;
--duck-beige: #201e1f;
--logo-src: '/officer-logo.svg';
}
+11 -11
View File
@@ -9,19 +9,19 @@
[data-theme='hackerman'] {
--background: #06060c;
--foreground: #ddf7ff;
--card: #0B0C16;
--card: #0b0c16;
--card-foreground: #ddf7ff;
--popover: #0B0C16;
--popover: #0b0c16;
--popover-foreground: #ddf7ff;
--muted: #151828;
--muted-foreground: #b5c5db;
--accent: #151828;
--accent-foreground: #ddf7ff;
--primary: #82FB9C;
--primary: #82fb9c;
--primary-foreground: #06060c;
--secondary: #151828;
--secondary-foreground: #ddf7ff;
--cta: #82FB9C;
--cta: #82fb9c;
--cta-foreground: #06060c;
--ctahover: #91fba8;
--success: #4fe88f;
@@ -37,9 +37,9 @@
--busy-ink: #50f7a3;
--border: #3b404d;
--input: #3b404d;
--ring: #82FB9C;
--ring: #82fb9c;
--radius: 0.625rem;
--chart-primary: #82FB9C;
--chart-primary: #82fb9c;
--chart-secondary: #86a7df;
--status-success: #4fe88f;
--status-warning: #50f7d4;
@@ -51,12 +51,12 @@
--panel-border-bare: rgb(59 64 77 / 0.55);
--panel-raised-bg: rgb(11 12 22 / 0.95);
--panel-raised-border: rgb(59 64 77 / 1);
--panel-accent: #82FB9C;
--panel-accent: #82fb9c;
--panel-header-bg: rgb(21 24 40 / 0.6);
--panel-header-fg: #ddf7ff;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0B0C16;
--card-bg: #0b0c16;
--glass-bg: rgb(11 12 22 / 0.55);
--glass-border: rgb(59 64 77 / 0.7);
--dock-bg: rgb(11 12 22 / 0.7);
@@ -73,15 +73,15 @@
--scrollbar-thumb-hover: rgb(45 52 80 / 0.85);
--scrollbar-thin-thumb: rgb(45 52 80 / 0.45);
--scrollbar-thin-thumb-hover: rgb(45 52 80 / 0.7);
--brand: #82FB9C;
--brand: #82fb9c;
--brand-foreground: #06060c;
--brand-primary: #82FB9C;
--brand-primary: #82fb9c;
--brand-accent: #7cf8f7;
--brand-warm: #50f7a3;
--brand-deep: #06060c;
--brand-muted: #2d3450;
--ink: #ddf7ff;
--surface-warm: #0B0C16;
--surface-warm: #0b0c16;
--naturegreen: #4fe88f;
--naturegreen-foreground: #06060c;
--duck-dark: #ddf7ff;
@@ -0,0 +1,97 @@
/*
Harbor Dark — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-harbordark-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='harbor-dark'] {
--background: #0f0f0f;
--foreground: #efebdc;
--card: #1b1b1b;
--card-foreground: #efebdc;
--popover: #1b1b1b;
--popover-foreground: #efebdc;
--muted: #2b2b2b;
--muted-foreground: #afada2;
--accent: #2b2b2b;
--accent-foreground: #efebdc;
--primary: #e58980;
--primary-foreground: #0f0f0f;
--secondary: #2b2b2b;
--secondary-foreground: #efebdc;
--cta: #e58980;
--cta-foreground: #0f0f0f;
--ctahover: #e8978f;
--success: #e75a50;
--success-foreground: #0f0f0f;
--warning: #a99b7a;
--warning-foreground: #0f0f0f;
--destructive: #f44336;
--destructive-foreground: #0f0f0f;
--info: #e58980;
--info-foreground: #0f0f0f;
--busy: #cf6f58;
--busy-foreground: #0f0f0f;
--busy-ink: #cf6f58;
--border: #444441;
--input: #444441;
--ring: #e58980;
--radius: 0.625rem;
--chart-primary: #e58980;
--chart-secondary: #77838a;
--status-success: #e75a50;
--status-warning: #a99b7a;
--status-in-progress: #e58980;
--page-bg: #0f0f0f;
--page-bg-src: '';
--panel-bg: rgb(27 27 27 / 0.72);
--panel-border: rgb(68 68 65 / 0.9);
--panel-border-bare: rgb(68 68 65 / 0.55);
--panel-raised-bg: rgb(27 27 27 / 0.95);
--panel-raised-border: rgb(68 68 65 / 1);
--panel-accent: #e58980;
--panel-header-bg: rgb(43 43 43 / 0.6);
--panel-header-fg: #efebdc;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1b1b1b;
--glass-bg: rgb(27 27 27 / 0.55);
--glass-border: rgb(68 68 65 / 0.7);
--dock-bg: rgb(27 27 27 / 0.7);
--dock-border: rgb(68 68 65 / 0.8);
--dock-tooltip-bg: #2b2b2b;
--header-bg: rgb(27 27 27 / 0.8);
--header-border: rgb(68 68 65 / 0.9);
--header-fg: #efebdc;
--header-blur: 12px;
--pixel-grid-color: rgb(122 121 114 / 0.07);
--card-grid-color: rgb(122 121 114 / 0.05);
--panel-grid-color: rgb(122 121 114 / 0.06);
--scrollbar-thumb: rgb(129 127 104 / 0.6);
--scrollbar-thumb-hover: rgb(129 127 104 / 0.85);
--scrollbar-thin-thumb: rgb(129 127 104 / 0.45);
--scrollbar-thin-thumb-hover: rgb(129 127 104 / 0.7);
--brand: #e58980;
--brand-foreground: #0f0f0f;
--brand-primary: #e58980;
--brand-accent: #6d6d6d;
--brand-warm: #cf6f58;
--brand-deep: #0f0f0f;
--brand-muted: #817f68;
--ink: #efebdc;
--surface-warm: #1b1b1b;
--naturegreen: #e75a50;
--naturegreen-foreground: #0f0f0f;
--duck-dark: #efebdc;
--duck-teal: #6d6d6d;
--duck-yellow: #a99b7a;
--duck-orange: #cf6f58;
--duck-forest: #e75a50;
--duck-beige: #30302e;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Hollow Knight — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-hollow-knight-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='hollow-knight'] {
--background: #00181e;
--foreground: #fbf1c7;
--card: #002b36;
--card-foreground: #fbf1c7;
--popover: #002b36;
--popover-foreground: #fbf1c7;
--muted: #123a44;
--muted-foreground: #b0b69c;
--accent: #123a44;
--accent-foreground: #fbf1c7;
--primary: #3bcba5;
--primary-foreground: #00181e;
--secondary: #123a44;
--secondary-foreground: #fbf1c7;
--cta: #3bcba5;
--cta-foreground: #00181e;
--ctahover: #53d1b0;
--success: #2a9d8f;
--success-foreground: #00181e;
--warning: #e9c46a;
--warning-foreground: #00181e;
--destructive: #e76f51;
--destructive-foreground: #00181e;
--info: #2a6f88;
--info-foreground: #fbf1c7;
--busy: #e89a5e;
--busy-foreground: #00181e;
--busy-ink: #e89a5e;
--border: #315253;
--input: #315253;
--ring: #3bcba5;
--radius: 0.625rem;
--chart-primary: #3bcba5;
--chart-secondary: #f4a261;
--status-success: #2a9d8f;
--status-warning: #e9c46a;
--status-in-progress: #2a6f88;
--page-bg: #00181e;
--page-bg-src: '';
--panel-bg: rgb(0 43 54 / 0.72);
--panel-border: rgb(49 82 83 / 0.9);
--panel-border-bare: rgb(49 82 83 / 0.55);
--panel-raised-bg: rgb(0 43 54 / 0.95);
--panel-raised-border: rgb(49 82 83 / 1);
--panel-accent: #3bcba5;
--panel-header-bg: rgb(18 58 68 / 0.6);
--panel-header-fg: #fbf1c7;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #002b36;
--glass-bg: rgb(0 43 54 / 0.55);
--glass-border: rgb(49 82 83 / 0.7);
--dock-bg: rgb(0 43 54 / 0.7);
--dock-border: rgb(49 82 83 / 0.8);
--dock-tooltip-bg: #123a44;
--header-bg: rgb(0 43 54 / 0.8);
--header-border: rgb(49 82 83 / 0.9);
--header-fg: #fbf1c7;
--header-blur: 12px;
--pixel-grid-color: rgb(113 132 119 / 0.07);
--card-grid-color: rgb(113 132 119 / 0.05);
--panel-grid-color: rgb(113 132 119 / 0.06);
--scrollbar-thumb: rgb(88 110 117 / 0.6);
--scrollbar-thumb-hover: rgb(88 110 117 / 0.85);
--scrollbar-thin-thumb: rgb(88 110 117 / 0.45);
--scrollbar-thin-thumb-hover: rgb(88 110 117 / 0.7);
--brand: #3bcba5;
--brand-foreground: #00181e;
--brand-primary: #3bcba5;
--brand-accent: #2a9d8f;
--brand-warm: #e89a5e;
--brand-deep: #00181e;
--brand-muted: #586e75;
--ink: #fbf1c7;
--surface-warm: #002b36;
--naturegreen: #2a9d8f;
--naturegreen-foreground: #00181e;
--duck-dark: #fbf1c7;
--duck-teal: #2a9d8f;
--duck-yellow: #e9c46a;
--duck-orange: #e89a5e;
--duck-forest: #2a9d8f;
--duck-beige: #193f45;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Inkypinky — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-inkypinky-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='inkypinky'] {
--background: #0a0a10;
--foreground: #c8c8c8;
--card: #13131d;
--card-foreground: #c8c8c8;
--popover: #13131d;
--popover-foreground: #c8c8c8;
--muted: #24242d;
--muted-foreground: #929295;
--accent: #24242d;
--accent-foreground: #c8c8c8;
--primary: #d2d7e3;
--primary-foreground: #0a0a10;
--secondary: #24242d;
--secondary-foreground: #c8c8c8;
--cta: #d2d7e3;
--cta-foreground: #0a0a10;
--ctahover: #d7dce6;
--success: #a6b2c7;
--success-foreground: #0a0a10;
--warning: #d18ba2;
--warning-foreground: #0a0a10;
--destructive: #ea90a8;
--destructive-foreground: #0a0a10;
--info: #7c7ca8;
--info-foreground: #0a0a10;
--busy: #de8ea5;
--busy-foreground: #0a0a10;
--busy-ink: #de8ea5;
--border: #37373f;
--input: #37373f;
--ring: #d2d7e3;
--radius: 0.625rem;
--chart-primary: #d2d7e3;
--chart-secondary: #9f859f;
--status-success: #a6b2c7;
--status-warning: #d18ba2;
--status-in-progress: #7c7ca8;
--page-bg: #0a0a10;
--page-bg-src: '';
--panel-bg: rgb(19 19 29 / 0.72);
--panel-border: rgb(55 55 63 / 0.9);
--panel-border-bare: rgb(55 55 63 / 0.55);
--panel-raised-bg: rgb(19 19 29 / 0.95);
--panel-raised-border: rgb(55 55 63 / 1);
--panel-accent: #d2d7e3;
--panel-header-bg: rgb(36 36 45 / 0.6);
--panel-header-fg: #c8c8c8;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #13131d;
--glass-bg: rgb(19 19 29 / 0.55);
--glass-border: rgb(55 55 63 / 0.7);
--dock-bg: rgb(19 19 29 / 0.7);
--dock-border: rgb(55 55 63 / 0.8);
--dock-tooltip-bg: #24242d;
--header-bg: rgb(19 19 29 / 0.8);
--header-border: rgb(55 55 63 / 0.9);
--header-fg: #c8c8c8;
--header-blur: 12px;
--pixel-grid-color: rgb(100 100 106 / 0.07);
--card-grid-color: rgb(100 100 106 / 0.05);
--panel-grid-color: rgb(100 100 106 / 0.06);
--scrollbar-thumb: rgb(67 67 83 / 0.6);
--scrollbar-thumb-hover: rgb(67 67 83 / 0.85);
--scrollbar-thin-thumb: rgb(67 67 83 / 0.45);
--scrollbar-thin-thumb-hover: rgb(67 67 83 / 0.7);
--brand: #d2d7e3;
--brand-foreground: #0a0a10;
--brand-primary: #d2d7e3;
--brand-accent: #919ab7;
--brand-warm: #de8ea5;
--brand-deep: #0a0a10;
--brand-muted: #434353;
--ink: #c8c8c8;
--surface-warm: #13131d;
--naturegreen: #a6b2c7;
--naturegreen-foreground: #0a0a10;
--duck-dark: #c8c8c8;
--duck-teal: #919ab7;
--duck-yellow: #d18ba2;
--duck-orange: #de8ea5;
--duck-forest: #a6b2c7;
--duck-beige: #25252e;
--logo-src: '/officer-logo.svg';
}
+1 -1
View File
@@ -79,7 +79,7 @@
--brand-accent: #6a9589;
--brand-warm: #c17158;
--brand-deep: #111116;
--brand-muted: #54546D;
--brand-muted: #54546d;
--ink: #dcd7ba;
--surface-warm: #1f1f28;
--naturegreen: #76946a;
+97
View File
@@ -0,0 +1,97 @@
/*
Kanso — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-kanso-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='kanso'] {
--background: #05080a;
--foreground: #c5c9c7;
--card: #090e13;
--card-foreground: #c5c9c7;
--popover: #090e13;
--popover-foreground: #c5c9c7;
--muted: #1a1f24;
--muted-foreground: #8d9191;
--accent: #1a1f24;
--accent-foreground: #c5c9c7;
--primary: #7fb4ca;
--primary-foreground: #05080a;
--secondary: #1a1f24;
--secondary-foreground: #c5c9c7;
--cta: #7fb4ca;
--cta-foreground: #05080a;
--ctahover: #8ebdd0;
--success: #8a9a7b;
--success-foreground: #05080a;
--warning: #c4b28a;
--warning-foreground: #05080a;
--destructive: #c4746e;
--destructive-foreground: #05080a;
--info: #8ba4b0;
--info-foreground: #05080a;
--busy: #c4937c;
--busy-foreground: #05080a;
--busy-ink: #c4937c;
--border: #2e3336;
--input: #2e3336;
--ring: #7fb4ca;
--radius: 0.625rem;
--chart-primary: #7fb4ca;
--chart-secondary: #a292a3;
--status-success: #8a9a7b;
--status-warning: #c4b28a;
--status-in-progress: #8ba4b0;
--page-bg: #05080a;
--page-bg-src: '';
--panel-bg: rgb(9 14 19 / 0.72);
--panel-border: rgb(46 51 54 / 0.9);
--panel-border-bare: rgb(46 51 54 / 0.55);
--panel-raised-bg: rgb(9 14 19 / 0.95);
--panel-raised-border: rgb(46 51 54 / 1);
--panel-accent: #7fb4ca;
--panel-header-bg: rgb(26 31 36 / 0.6);
--panel-header-fg: #c5c9c7;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #090e13;
--glass-bg: rgb(9 14 19 / 0.55);
--glass-border: rgb(46 51 54 / 0.7);
--dock-bg: rgb(9 14 19 / 0.7);
--dock-border: rgb(46 51 54 / 0.8);
--dock-tooltip-bg: #1a1f24;
--header-bg: rgb(9 14 19 / 0.8);
--header-border: rgb(46 51 54 / 0.9);
--header-fg: #c5c9c7;
--header-blur: 12px;
--pixel-grid-color: rgb(94 98 100 / 0.07);
--card-grid-color: rgb(94 98 100 / 0.05);
--panel-grid-color: rgb(94 98 100 / 0.06);
--scrollbar-thumb: rgb(57 59 68 / 0.6);
--scrollbar-thumb-hover: rgb(57 59 68 / 0.85);
--scrollbar-thin-thumb: rgb(57 59 68 / 0.45);
--scrollbar-thin-thumb-hover: rgb(57 59 68 / 0.7);
--brand: #7fb4ca;
--brand-foreground: #05080a;
--brand-primary: #7fb4ca;
--brand-accent: #8ea4a2;
--brand-warm: #c4937c;
--brand-deep: #05080a;
--brand-muted: #393b44;
--ink: #c5c9c7;
--surface-warm: #090e13;
--naturegreen: #8a9a7b;
--naturegreen-foreground: #05080a;
--duck-dark: #c5c9c7;
--duck-teal: #8ea4a2;
--duck-yellow: #c4b28a;
--duck-orange: #c4937c;
--duck-forest: #8a9a7b;
--duck-beige: #1c2125;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Kimiko — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/krymzonn/omarchy-kimiko-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='kimiko'] {
--background: #101212;
--foreground: #f8d1aa;
--card: #1d2121;
--card-foreground: #f8d1aa;
--popover: #1d2121;
--popover-foreground: #f8d1aa;
--muted: #2d3131;
--muted-foreground: #b69c81;
--accent: #2d3131;
--accent-foreground: #f8d1aa;
--primary: #d1f8f8;
--primary-foreground: #101212;
--secondary: #2d3131;
--secondary-foreground: #f8d1aa;
--cta: #d1f8f8;
--cta-foreground: #101212;
--ctahover: #d7f9f9;
--success: #5df85d;
--success-foreground: #101212;
--warning: #bad094;
--warning-foreground: #101212;
--destructive: #f8015d;
--destructive-foreground: #101212;
--info: #5f87af;
--info-foreground: #101212;
--busy: #d96979;
--busy-foreground: #101212;
--busy-ink: #d96979;
--border: #48433c;
--input: #48433c;
--ring: #d1f8f8;
--radius: 0.625rem;
--chart-primary: #d1f8f8;
--chart-secondary: #aa83f8;
--status-success: #5df85d;
--status-warning: #bad094;
--status-in-progress: #5f87af;
--page-bg: #101212;
--page-bg-src: '';
--panel-bg: rgb(29 33 33 / 0.72);
--panel-border: rgb(72 67 60 / 0.9);
--panel-border-bare: rgb(72 67 60 / 0.55);
--panel-raised-bg: rgb(29 33 33 / 0.95);
--panel-raised-border: rgb(72 67 60 / 1);
--panel-accent: #d1f8f8;
--panel-header-bg: rgb(45 49 49 / 0.6);
--panel-header-fg: #f8d1aa;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1d2121;
--glass-bg: rgb(29 33 33 / 0.55);
--glass-border: rgb(72 67 60 / 0.7);
--dock-bg: rgb(29 33 33 / 0.7);
--dock-border: rgb(72 67 60 / 0.8);
--dock-tooltip-bg: #2d3131;
--header-bg: rgb(29 33 33 / 0.8);
--header-border: rgb(72 67 60 / 0.9);
--header-fg: #f8d1aa;
--header-blur: 12px;
--pixel-grid-color: rgb(128 112 95 / 0.07);
--card-grid-color: rgb(128 112 95 / 0.05);
--panel-grid-color: rgb(128 112 95 / 0.06);
--scrollbar-thumb: rgb(78 78 82 / 0.6);
--scrollbar-thumb-hover: rgb(78 78 82 / 0.85);
--scrollbar-thin-thumb: rgb(78 78 82 / 0.45);
--scrollbar-thin-thumb-hover: rgb(78 78 82 / 0.7);
--brand: #d1f8f8;
--brand-foreground: #101212;
--brand-primary: #d1f8f8;
--brand-accent: #aad1d1;
--brand-warm: #d96979;
--brand-deep: #101212;
--brand-muted: #4e4e52;
--ink: #f8d1aa;
--surface-warm: #1d2121;
--naturegreen: #5df85d;
--naturegreen-foreground: #101212;
--duck-dark: #f8d1aa;
--duck-teal: #aad1d1;
--duck-yellow: #bad094;
--duck-orange: #d96979;
--duck-forest: #5df85d;
--duck-beige: #33332f;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Koyanagi — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark) — the source repo's own colors.toml says so directly.
Source: https://github.com/YutaKoyanagi10/omarchy-koyanagi-theme (colors.toml (Omarchy schema)), read by scripts/port-community-themes.ts. Values
came straight from the repo's own colors.toml — the same schema and reader the official 22 themes
use, so nothing here is reconstructed. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='koyanagi'] {
--background: #111113;
--foreground: #f2f2f2;
--card: #1c1c1e;
--card-foreground: #f2f2f2;
--popover: #1c1c1e;
--popover-foreground: #f2f2f2;
--muted: #2c2c2e;
--muted-foreground: #cccccc;
--accent: #2c2c2e;
--accent-foreground: #f2f2f2;
--primary: #ffdd80;
--primary-foreground: #111113;
--secondary: #2c2c2e;
--secondary-foreground: #f2f2f2;
--cta: #ffdd80;
--cta-foreground: #111113;
--ctahover: #ffe18f;
--success: #f2f2f2;
--success-foreground: #111113;
--warning: #ffdd80;
--warning-foreground: #111113;
--destructive: #f2f2f2;
--destructive-foreground: #111113;
--info: #7a7a7a;
--info-foreground: #0d0d0f;
--busy: #ffe9b3;
--busy-foreground: #111113;
--busy-ink: #ffe9b3;
--border: #4d4d4f;
--input: #4d4d4f;
--ring: #ffdd80;
--radius: 0.625rem;
--chart-primary: #ffdd80;
--chart-secondary: #8a8a8a;
--status-success: #f2f2f2;
--status-warning: #ffdd80;
--status-in-progress: #7a7a7a;
--page-bg: #111113;
--page-bg-src: '';
--panel-bg: rgb(28 28 30 / 0.72);
--panel-border: rgb(77 77 79 / 0.9);
--panel-border-bare: rgb(77 77 79 / 0.55);
--panel-raised-bg: rgb(28 28 30 / 0.95);
--panel-raised-border: rgb(77 77 79 / 1);
--panel-accent: #ffdd80;
--panel-header-bg: rgb(44 44 46 / 0.6);
--panel-header-fg: #f2f2f2;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1c1c1e;
--glass-bg: rgb(28 28 30 / 0.55);
--glass-border: rgb(77 77 79 / 0.7);
--dock-bg: rgb(28 28 30 / 0.7);
--dock-border: rgb(77 77 79 / 0.8);
--dock-tooltip-bg: #2c2c2e;
--header-bg: rgb(28 28 30 / 0.8);
--header-border: rgb(77 77 79 / 0.9);
--header-fg: #f2f2f2;
--header-blur: 12px;
--pixel-grid-color: rgb(106 106 106 / 0.07);
--card-grid-color: rgb(106 106 106 / 0.05);
--panel-grid-color: rgb(106 106 106 / 0.06);
--scrollbar-thumb: rgb(106 106 106 / 0.6);
--scrollbar-thumb-hover: rgb(106 106 106 / 0.85);
--scrollbar-thin-thumb: rgb(106 106 106 / 0.45);
--scrollbar-thin-thumb-hover: rgb(106 106 106 / 0.7);
--brand: #ffdd80;
--brand-foreground: #111113;
--brand-primary: #ffdd80;
--brand-accent: #f2f2f2;
--brand-warm: #ffe9b3;
--brand-deep: #111113;
--brand-muted: #6a6a6a;
--ink: #f2f2f2;
--surface-warm: #1c1c1e;
--naturegreen: #f2f2f2;
--naturegreen-foreground: #111113;
--duck-dark: #f2f2f2;
--duck-teal: #f2f2f2;
--duck-yellow: #ffdd80;
--duck-orange: #ffe9b3;
--duck-forest: #f2f2f2;
--duck-beige: #313133;
--logo-src: '/officer-logo.svg';
}
@@ -8,31 +8,31 @@
*/
[data-theme='last-horizon'] {
--background: #060606;
--foreground: #FAFCFB;
--foreground: #fafcfb;
--card: #0c0b0c;
--card-foreground: #FAFCFB;
--card-foreground: #fafcfb;
--popover: #0c0b0c;
--popover-foreground: #FAFCFB;
--popover-foreground: #fafcfb;
--muted: #0c0b0c;
--muted-foreground: #cfd3cd;
--accent: #0c0b0c;
--accent-foreground: #FAFCFB;
--accent-foreground: #fafcfb;
--primary: #b59790;
--primary-foreground: #060606;
--secondary: #0c0b0c;
--secondary-foreground: #FAFCFB;
--secondary-foreground: #fafcfb;
--cta: #b59790;
--cta-foreground: #060606;
--ctahover: #bea39d;
--success: #87a9b0;
--success-foreground: #060606;
--warning: #6B5E73;
--warning: #6b5e73;
--warning-foreground: #e3dedd;
--destructive: #c38b7b;
--destructive-foreground: #060606;
--info: #b59790;
--info-foreground: #060606;
--busy: #6B5E73;
--busy: #6b5e73;
--busy-foreground: #e3dedd;
--busy-ink: #817688;
--border: #434342;
@@ -42,7 +42,7 @@
--chart-primary: #b59790;
--chart-secondary: #c4d8e2;
--status-success: #87a9b0;
--status-warning: #6B5E73;
--status-warning: #6b5e73;
--status-in-progress: #b59790;
--page-bg: #060606;
--page-bg-src: '';
@@ -53,7 +53,7 @@
--panel-raised-border: rgb(67 67 66 / 1);
--panel-accent: #b59790;
--panel-header-bg: rgb(12 11 12 / 0.6);
--panel-header-fg: #FAFCFB;
--panel-header-fg: #fafcfb;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0c0b0c;
@@ -64,7 +64,7 @@
--dock-tooltip-bg: #0c0b0c;
--header-bg: rgb(12 11 12 / 0.8);
--header-border: rgb(67 67 66 / 0.9);
--header-fg: #FAFCFB;
--header-fg: #fafcfb;
--header-blur: 12px;
--pixel-grid-color: rgb(101 91 94 / 0.07);
--card-grid-color: rgb(101 91 94 / 0.05);
@@ -77,17 +77,17 @@
--brand-foreground: #060606;
--brand-primary: #b59790;
--brand-accent: #a5a0b6;
--brand-warm: #6B5E73;
--brand-warm: #6b5e73;
--brand-deep: #060606;
--brand-muted: #584e51;
--ink: #FAFCFB;
--ink: #fafcfb;
--surface-warm: #0c0b0c;
--naturegreen: #87a9b0;
--naturegreen-foreground: #060606;
--duck-dark: #FAFCFB;
--duck-dark: #fafcfb;
--duck-teal: #a5a0b6;
--duck-yellow: #6B5E73;
--duck-orange: #6B5E73;
--duck-yellow: #6b5e73;
--duck-orange: #6b5e73;
--duck-forest: #87a9b0;
--duck-beige: #242324;
--logo-src: '/officer-logo.svg';
@@ -24,11 +24,11 @@
--cta: #e68e0d;
--cta-foreground: #090909;
--ctahover: #e99c2a;
--success: #FFC107;
--success: #ffc107;
--success-foreground: #090909;
--warning: #b91c1c;
--warning-foreground: #d8d8d8;
--destructive: #D35F5F;
--destructive: #d35f5f;
--destructive-foreground: #090909;
--info: #e68e0d;
--info-foreground: #090909;
@@ -40,8 +40,8 @@
--ring: #e68e0d;
--radius: 0.625rem;
--chart-primary: #e68e0d;
--chart-secondary: #D35F5F;
--status-success: #FFC107;
--chart-secondary: #d35f5f;
--status-success: #ffc107;
--status-warning: #b91c1c;
--status-in-progress: #e68e0d;
--page-bg: #090909;
@@ -82,13 +82,13 @@
--brand-muted: #333333;
--ink: #bebebe;
--surface-warm: #121212;
--naturegreen: #FFC107;
--naturegreen: #ffc107;
--naturegreen-foreground: #090909;
--duck-dark: #bebebe;
--duck-teal: #bebebe;
--duck-yellow: #b91c1c;
--duck-orange: #c63d3d;
--duck-forest: #FFC107;
--duck-forest: #ffc107;
--duck-beige: #232323;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Monolith 2 — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/grvsnh/omarchy-monolith-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='monolith-2'] {
--background: #151718;
--foreground: #eaeaea;
--card: #262a2c;
--card-foreground: #eaeaea;
--popover: #262a2c;
--popover-foreground: #eaeaea;
--muted: #35393b;
--muted-foreground: #afb0b1;
--accent: #35393b;
--accent-foreground: #eaeaea;
--primary: #f5f5f5;
--primary-foreground: #151718;
--secondary: #35393b;
--secondary-foreground: #eaeaea;
--cta: #f5f5f5;
--cta-foreground: #151718;
--ctahover: #f6f6f6;
--success: #bebebe;
--success-foreground: #151718;
--warning: #e0e0e0;
--warning-foreground: #151718;
--destructive: #6b6c6d;
--destructive-foreground: #eeeeee;
--info: #cfcfcf;
--info-foreground: #151718;
--busy: #a6a6a7;
--busy-foreground: #151718;
--busy-ink: #a6a6a7;
--border: #4c5051;
--input: #4c5051;
--ring: #f5f5f5;
--radius: 0.625rem;
--chart-primary: #f5f5f5;
--chart-secondary: #d6d6d6;
--status-success: #bebebe;
--status-warning: #e0e0e0;
--status-in-progress: #cfcfcf;
--page-bg: #151718;
--page-bg-src: '';
--panel-bg: rgb(38 42 44 / 0.72);
--panel-border: rgb(76 80 81 / 0.9);
--panel-border-bare: rgb(76 80 81 / 0.55);
--panel-raised-bg: rgb(38 42 44 / 0.95);
--panel-raised-border: rgb(76 80 81 / 1);
--panel-accent: #f5f5f5;
--panel-header-bg: rgb(53 57 59 / 0.6);
--panel-header-fg: #eaeaea;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #262a2c;
--glass-bg: rgb(38 42 44 / 0.55);
--glass-border: rgb(76 80 81 / 0.7);
--dock-bg: rgb(38 42 44 / 0.7);
--dock-border: rgb(76 80 81 / 0.8);
--dock-tooltip-bg: #35393b;
--header-bg: rgb(38 42 44 / 0.8);
--header-border: rgb(76 80 81 / 0.9);
--header-fg: #eaeaea;
--header-blur: 12px;
--pixel-grid-color: rgb(126 128 130 / 0.07);
--card-grid-color: rgb(126 128 130 / 0.05);
--panel-grid-color: rgb(126 128 130 / 0.06);
--scrollbar-thumb: rgb(116 119 120 / 0.6);
--scrollbar-thumb-hover: rgb(116 119 120 / 0.85);
--scrollbar-thin-thumb: rgb(116 119 120 / 0.45);
--scrollbar-thin-thumb-hover: rgb(116 119 120 / 0.7);
--brand: #f5f5f5;
--brand-foreground: #151718;
--brand-primary: #f5f5f5;
--brand-accent: #e0e0e0;
--brand-warm: #a6a6a7;
--brand-deep: #151718;
--brand-muted: #747778;
--ink: #eaeaea;
--surface-warm: #262a2c;
--naturegreen: #bebebe;
--naturegreen-foreground: #151718;
--duck-dark: #eaeaea;
--duck-teal: #e0e0e0;
--duck-yellow: #e0e0e0;
--duck-orange: #a6a6a7;
--duck-forest: #bebebe;
--duck-beige: #3a3d3f;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Moodpeak — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-moodpeak-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='moodpeak'] {
--background: #0d0f13;
--foreground: #e0e6ed;
--card: #181c22;
--card-foreground: #e0e6ed;
--popover: #181c22;
--popover-foreground: #e0e6ed;
--muted: #282c31;
--muted-foreground: #a4a9b0;
--accent: #282c31;
--accent-foreground: #e0e6ed;
--primary: #a5f5ff;
--primary-foreground: #0d0f13;
--secondary: #282c31;
--secondary-foreground: #e0e6ed;
--cta: #a5f5ff;
--cta-foreground: #0d0f13;
--ctahover: #b0f6ff;
--success: #4ecdc4;
--success-foreground: #0d0f13;
--warning: #82eeff;
--warning-foreground: #0d0f13;
--destructive: #ff7b92;
--destructive-foreground: #0d0f13;
--info: #6a85ff;
--info-foreground: #0d0f13;
--busy: #c1b5c9;
--busy-foreground: #0d0f13;
--busy-ink: #c1b5c9;
--border: #3f434a;
--input: #3f434a;
--ring: #a5f5ff;
--radius: 0.625rem;
--chart-primary: #a5f5ff;
--chart-secondary: #b388eb;
--status-success: #4ecdc4;
--status-warning: #82eeff;
--status-in-progress: #6a85ff;
--page-bg: #0d0f13;
--page-bg-src: '';
--panel-bg: rgb(24 28 34 / 0.72);
--panel-border: rgb(63 67 74 / 0.9);
--panel-border-bare: rgb(63 67 74 / 0.55);
--panel-raised-bg: rgb(24 28 34 / 0.95);
--panel-raised-border: rgb(63 67 74 / 1);
--panel-accent: #a5f5ff;
--panel-header-bg: rgb(40 44 49 / 0.6);
--panel-header-fg: #e0e6ed;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #181c22;
--glass-bg: rgb(24 28 34 / 0.55);
--glass-border: rgb(63 67 74 / 0.7);
--dock-bg: rgb(24 28 34 / 0.7);
--dock-border: rgb(63 67 74 / 0.8);
--dock-tooltip-bg: #282c31;
--header-bg: rgb(24 28 34 / 0.8);
--header-border: rgb(63 67 74 / 0.9);
--header-fg: #e0e6ed;
--header-blur: 12px;
--pixel-grid-color: rgb(114 119 125 / 0.07);
--card-grid-color: rgb(114 119 125 / 0.05);
--panel-grid-color: rgb(114 119 125 / 0.06);
--scrollbar-thumb: rgb(61 68 85 / 0.6);
--scrollbar-thumb-hover: rgb(61 68 85 / 0.85);
--scrollbar-thin-thumb: rgb(61 68 85 / 0.45);
--scrollbar-thin-thumb-hover: rgb(61 68 85 / 0.7);
--brand: #a5f5ff;
--brand-foreground: #0d0f13;
--brand-primary: #a5f5ff;
--brand-accent: #c9aff0;
--brand-warm: #c1b5c9;
--brand-deep: #0d0f13;
--brand-muted: #3d4455;
--ink: #e0e6ed;
--surface-warm: #181c22;
--naturegreen: #4ecdc4;
--naturegreen-foreground: #0d0f13;
--duck-dark: #e0e6ed;
--duck-teal: #c9aff0;
--duck-yellow: #82eeff;
--duck-orange: #c1b5c9;
--duck-forest: #4ecdc4;
--duck-beige: #2c3036;
--logo-src: '/officer-logo.svg';
}
+97
View File
@@ -0,0 +1,97 @@
/*
Nes — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-nes-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='nes'] {
--background: #090909;
--foreground: #cecfc9;
--card: #101010;
--card-foreground: #cecfc9;
--popover: #101010;
--popover-foreground: #cecfc9;
--muted: #212121;
--muted-foreground: #959692;
--accent: #212121;
--accent-foreground: #cecfc9;
--primary: #cecfc9;
--primary-foreground: #090909;
--secondary: #212121;
--secondary-foreground: #cecfc9;
--cta: #cecfc9;
--cta-foreground: #090909;
--ctahover: #d4d5cf;
--success: #9a9d9a;
--success-foreground: #090909;
--warning: #9a9d9a;
--warning-foreground: #090909;
--destructive: #d93f37;
--destructive-foreground: #070707;
--info: #9a9d9a;
--info-foreground: #090909;
--busy: #ba6e69;
--busy-foreground: #090909;
--busy-ink: #ba6e69;
--border: #353634;
--input: #353634;
--ring: #cecfc9;
--radius: 0.625rem;
--chart-primary: #cecfc9;
--chart-secondary: #d93f37;
--status-success: #9a9d9a;
--status-warning: #9a9d9a;
--status-in-progress: #9a9d9a;
--page-bg: #090909;
--page-bg-src: '';
--panel-bg: rgb(16 16 16 / 0.72);
--panel-border: rgb(53 54 52 / 0.9);
--panel-border-bare: rgb(53 54 52 / 0.55);
--panel-raised-bg: rgb(16 16 16 / 0.95);
--panel-raised-border: rgb(53 54 52 / 1);
--panel-accent: #cecfc9;
--panel-header-bg: rgb(33 33 33 / 0.6);
--panel-header-fg: #cecfc9;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #101010;
--glass-bg: rgb(16 16 16 / 0.55);
--glass-border: rgb(53 54 52 / 0.7);
--dock-bg: rgb(16 16 16 / 0.7);
--dock-border: rgb(53 54 52 / 0.8);
--dock-tooltip-bg: #212121;
--header-bg: rgb(16 16 16 / 0.8);
--header-border: rgb(53 54 52 / 0.9);
--header-fg: #cecfc9;
--header-blur: 12px;
--pixel-grid-color: rgb(101 102 99 / 0.07);
--card-grid-color: rgb(101 102 99 / 0.05);
--panel-grid-color: rgb(101 102 99 / 0.06);
--scrollbar-thumb: rgb(154 157 154 / 0.6);
--scrollbar-thumb-hover: rgb(154 157 154 / 0.85);
--scrollbar-thin-thumb: rgb(154 157 154 / 0.45);
--scrollbar-thin-thumb-hover: rgb(154 157 154 / 0.7);
--brand: #cecfc9;
--brand-foreground: #090909;
--brand-primary: #cecfc9;
--brand-accent: #9a9d9a;
--brand-warm: #ba6e69;
--brand-deep: #090909;
--brand-muted: #9a9d9a;
--ink: #cecfc9;
--surface-warm: #101010;
--naturegreen: #9a9d9a;
--naturegreen-foreground: #090909;
--duck-dark: #cecfc9;
--duck-teal: #9a9d9a;
--duck-yellow: #9a9d9a;
--duck-orange: #ba6e69;
--duck-forest: #9a9d9a;
--duck-beige: #232323;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
One Dark Pro — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark) — the source repo's own colors.toml says so directly.
Source: https://github.com/sc0ttman/omarchy-one-dark-pro (colors.toml (Omarchy schema)), read by scripts/port-community-themes.ts. Values
came straight from the repo's own colors.toml — the same schema and reader the official 22 themes
use, so nothing here is reconstructed. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='one-dark-pro'] {
--background: #181a1f;
--foreground: #abb2bf;
--card: #282c34;
--card-foreground: #abb2bf;
--popover: #282c34;
--popover-foreground: #abb2bf;
--muted: #3e4451;
--muted-foreground: #acb2bb;
--accent: #3e4451;
--accent-foreground: #abb2bf;
--primary: #61afef;
--primary-foreground: #181a1f;
--secondary: #3e4451;
--secondary-foreground: #abb2bf;
--cta: #61afef;
--cta-foreground: #181a1f;
--ctahover: #74b9f1;
--success: #98c379;
--success-foreground: #181a1f;
--warning: #e5c07b;
--warning-foreground: #181a1f;
--destructive: #e06c75;
--destructive-foreground: #181a1f;
--info: #61afef;
--info-foreground: #181a1f;
--busy: #d19a66;
--busy-foreground: #181a1f;
--busy-ink: #d19a66;
--border: #484d56;
--input: #484d56;
--ring: #61afef;
--radius: 0.625rem;
--chart-primary: #61afef;
--chart-secondary: #c678dd;
--status-success: #98c379;
--status-warning: #e5c07b;
--status-in-progress: #61afef;
--page-bg: #181a1f;
--page-bg-src: '';
--panel-bg: rgb(40 44 52 / 0.72);
--panel-border: rgb(72 77 86 / 0.9);
--panel-border-bare: rgb(72 77 86 / 0.55);
--panel-raised-bg: rgb(40 44 52 / 0.95);
--panel-raised-border: rgb(72 77 86 / 1);
--panel-accent: #61afef;
--panel-header-bg: rgb(62 68 81 / 0.6);
--panel-header-fg: #abb2bf;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #282c34;
--glass-bg: rgb(40 44 52 / 0.55);
--glass-border: rgb(72 77 86 / 0.7);
--dock-bg: rgb(40 44 52 / 0.7);
--dock-border: rgb(72 77 86 / 0.8);
--dock-tooltip-bg: #3e4451;
--header-bg: rgb(40 44 52 / 0.8);
--header-border: rgb(72 77 86 / 0.9);
--header-fg: #abb2bf;
--header-blur: 12px;
--pixel-grid-color: rgb(112 119 130 / 0.07);
--card-grid-color: rgb(112 119 130 / 0.05);
--panel-grid-color: rgb(112 119 130 / 0.06);
--scrollbar-thumb: rgb(92 99 112 / 0.6);
--scrollbar-thumb-hover: rgb(92 99 112 / 0.85);
--scrollbar-thin-thumb: rgb(92 99 112 / 0.45);
--scrollbar-thin-thumb-hover: rgb(92 99 112 / 0.7);
--brand: #61afef;
--brand-foreground: #181a1f;
--brand-primary: #61afef;
--brand-accent: #56b6c2;
--brand-warm: #d19a66;
--brand-deep: #181a1f;
--brand-muted: #5c6370;
--ink: #abb2bf;
--surface-warm: #282c34;
--naturegreen: #98c379;
--naturegreen-foreground: #181a1f;
--duck-dark: #abb2bf;
--duck-teal: #56b6c2;
--duck-yellow: #e5c07b;
--duck-orange: #d19a66;
--duck-forest: #98c379;
--duck-beige: #353942;
--logo-src: '/officer-logo.svg';
}
+19 -19
View File
@@ -8,19 +8,19 @@
*/
[data-theme='osaka-jade'] {
--background: #090f0d;
--foreground: #C1C497;
--foreground: #c1c497;
--card: #111c18;
--card-foreground: #C1C497;
--card-foreground: #c1c497;
--popover: #111c18;
--popover-foreground: #C1C497;
--muted: #23372B;
--muted-foreground: #D6D5BC;
--accent: #23372B;
--accent-foreground: #C1C497;
--popover-foreground: #c1c497;
--muted: #23372b;
--muted-foreground: #d6d5bc;
--accent: #23372b;
--accent-foreground: #c1c497;
--primary: #509475;
--primary-foreground: #090f0d;
--secondary: #23372B;
--secondary-foreground: #C1C497;
--secondary: #23372b;
--secondary-foreground: #c1c497;
--cta: #509475;
--cta-foreground: #090f0d;
--ctahover: #65a186;
@@ -28,7 +28,7 @@
--success-foreground: #090f0d;
--warning: #459451;
--warning-foreground: #090f0d;
--destructive: #FF5345;
--destructive: #ff5345;
--destructive-foreground: #090f0d;
--info: #509475;
--info-foreground: #090f0d;
@@ -40,7 +40,7 @@
--ring: #509475;
--radius: 0.625rem;
--chart-primary: #509475;
--chart-secondary: #D2689C;
--chart-secondary: #d2689c;
--status-success: #549e6a;
--status-warning: #459451;
--status-in-progress: #509475;
@@ -53,7 +53,7 @@
--panel-raised-border: rgb(72 80 70 / 1);
--panel-accent: #509475;
--panel-header-bg: rgb(35 55 43 / 0.6);
--panel-header-fg: #C1C497;
--panel-header-fg: #c1c497;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #111c18;
@@ -61,10 +61,10 @@
--glass-border: rgb(72 80 70 / 0.7);
--dock-bg: rgb(17 28 24 / 0.7);
--dock-border: rgb(72 80 70 / 0.8);
--dock-tooltip-bg: #23372B;
--dock-tooltip-bg: #23372b;
--header-bg: rgb(17 28 24 / 0.8);
--header-border: rgb(72 80 70 / 0.9);
--header-fg: #C1C497;
--header-fg: #c1c497;
--header-blur: 12px;
--pixel-grid-color: rgb(129 184 168 / 0.07);
--card-grid-color: rgb(129 184 168 / 0.05);
@@ -76,16 +76,16 @@
--brand: #509475;
--brand-foreground: #090f0d;
--brand-primary: #509475;
--brand-accent: #2DD5B7;
--brand-accent: #2dd5b7;
--brand-warm: #a2734b;
--brand-deep: #090f0d;
--brand-muted: #53685B;
--ink: #C1C497;
--brand-muted: #53685b;
--ink: #c1c497;
--surface-warm: #111c18;
--naturegreen: #549e6a;
--naturegreen-foreground: #090f0d;
--duck-dark: #C1C497;
--duck-teal: #2DD5B7;
--duck-dark: #c1c497;
--duck-teal: #2dd5b7;
--duck-yellow: #459451;
--duck-orange: #a2734b;
--duck-forest: #549e6a;
+97
View File
@@ -0,0 +1,97 @@
/*
Pina — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-pina-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='pina'] {
--background: #0d0e0d;
--foreground: #d4d5d5;
--card: #171a18;
--card-foreground: #d4d5d5;
--popover: #171a18;
--popover-foreground: #d4d5d5;
--muted: #272a28;
--muted-foreground: #9b9d9c;
--accent: #272a28;
--accent-foreground: #d4d5d5;
--primary: #d8f5d8;
--primary-foreground: #0d0e0d;
--secondary: #272a28;
--secondary-foreground: #d4d5d5;
--cta: #d8f5d8;
--cta-foreground: #0d0e0d;
--ctahover: #ddf6dd;
--success: #b8c082;
--success-foreground: #0d0e0d;
--warning: #e0d480;
--warning-foreground: #0d0e0d;
--destructive: #7db085;
--destructive-foreground: #0d0e0d;
--info: #7dd2b8;
--info-foreground: #0d0e0d;
--busy: #afc283;
--busy-foreground: #0d0e0d;
--busy-ink: #afc283;
--border: #3c3f3d;
--input: #3c3f3d;
--ring: #d8f5d8;
--radius: 0.625rem;
--chart-primary: #d8f5d8;
--chart-secondary: #b5c9a4;
--status-success: #b8c082;
--status-warning: #e0d480;
--status-in-progress: #7dd2b8;
--page-bg: #0d0e0d;
--page-bg-src: '';
--panel-bg: rgb(23 26 24 / 0.72);
--panel-border: rgb(60 63 61 / 0.9);
--panel-border-bare: rgb(60 63 61 / 0.55);
--panel-raised-bg: rgb(23 26 24 / 0.95);
--panel-raised-border: rgb(60 63 61 / 1);
--panel-accent: #d8f5d8;
--panel-header-bg: rgb(39 42 40 / 0.6);
--panel-header-fg: #d4d5d5;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #171a18;
--glass-bg: rgb(23 26 24 / 0.55);
--glass-border: rgb(60 63 61 / 0.7);
--dock-bg: rgb(23 26 24 / 0.7);
--dock-border: rgb(60 63 61 / 0.8);
--dock-tooltip-bg: #272a28;
--header-bg: rgb(23 26 24 / 0.8);
--header-border: rgb(60 63 61 / 0.9);
--header-fg: #d4d5d5;
--header-blur: 12px;
--pixel-grid-color: rgb(108 110 109 / 0.07);
--card-grid-color: rgb(108 110 109 / 0.05);
--panel-grid-color: rgb(108 110 109 / 0.06);
--scrollbar-thumb: rgb(107 128 113 / 0.6);
--scrollbar-thumb-hover: rgb(107 128 113 / 0.85);
--scrollbar-thin-thumb: rgb(107 128 113 / 0.45);
--scrollbar-thin-thumb-hover: rgb(107 128 113 / 0.7);
--brand: #d8f5d8;
--brand-foreground: #0d0e0d;
--brand-primary: #d8f5d8;
--brand-accent: #c5e8c5;
--brand-warm: #afc283;
--brand-deep: #0d0e0d;
--brand-muted: #6b8071;
--ink: #d4d5d5;
--surface-warm: #171a18;
--naturegreen: #b8c082;
--naturegreen-foreground: #0d0e0d;
--duck-dark: #d4d5d5;
--duck-teal: #c5e8c5;
--duck-yellow: #e0d480;
--duck-orange: #afc283;
--duck-forest: #b8c082;
--duck-beige: #2a2d2b;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Pmndrs — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/leweyse/omarchy-pmndrs-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='pmndrs'] {
--background: #0f1116;
--foreground: #a6accd;
--card: #1b1e28;
--card-foreground: #a6accd;
--popover: #1b1e28;
--popover-foreground: #a6accd;
--muted: #2b2e37;
--muted-foreground: #9094ab;
--accent: #2b2e37;
--accent-foreground: #a6accd;
--primary: #add7ff;
--primary-foreground: #0f1116;
--secondary: #2b2e37;
--secondary-foreground: #a6accd;
--cta: #add7ff;
--cta-foreground: #0f1116;
--ctahover: #b7dcff;
--success: #5de4c7;
--success-foreground: #0f1116;
--warning: #fffac2;
--warning-foreground: #0f1116;
--destructive: #d0679d;
--destructive-foreground: #0f1116;
--info: #89ddff;
--info-foreground: #0f1116;
--busy: #e8b1b0;
--busy-foreground: #0f1116;
--busy-ink: #e8b1b0;
--border: #363a48;
--input: #363a48;
--ring: #add7ff;
--radius: 0.625rem;
--chart-primary: #add7ff;
--chart-secondary: #d2a6ff;
--status-success: #5de4c7;
--status-warning: #fffac2;
--status-in-progress: #89ddff;
--page-bg: #0f1116;
--page-bg-src: '';
--panel-bg: rgb(27 30 40 / 0.72);
--panel-border: rgb(54 58 72 / 0.9);
--panel-border-bare: rgb(54 58 72 / 0.55);
--panel-raised-bg: rgb(27 30 40 / 0.95);
--panel-raised-border: rgb(54 58 72 / 1);
--panel-accent: #add7ff;
--panel-header-bg: rgb(43 46 55 / 0.6);
--panel-header-fg: #a6accd;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #1b1e28;
--glass-bg: rgb(27 30 40 / 0.55);
--glass-border: rgb(54 58 72 / 0.7);
--dock-bg: rgb(27 30 40 / 0.7);
--dock-border: rgb(54 58 72 / 0.8);
--dock-tooltip-bg: #2b2e37;
--header-bg: rgb(27 30 40 / 0.8);
--header-border: rgb(54 58 72 / 0.9);
--header-fg: #a6accd;
--header-blur: 12px;
--pixel-grid-color: rgb(102 106 125 / 0.07);
--card-grid-color: rgb(102 106 125 / 0.05);
--panel-grid-color: rgb(102 106 125 / 0.06);
--scrollbar-thumb: rgb(108 111 147 / 0.6);
--scrollbar-thumb-hover: rgb(108 111 147 / 0.85);
--scrollbar-thin-thumb: rgb(108 111 147 / 0.45);
--scrollbar-thin-thumb-hover: rgb(108 111 147 / 0.7);
--brand: #add7ff;
--brand-foreground: #0f1116;
--brand-primary: #add7ff;
--brand-accent: #add7ff;
--brand-warm: #e8b1b0;
--brand-deep: #0f1116;
--brand-muted: #6c6f93;
--ink: #a6accd;
--surface-warm: #1b1e28;
--naturegreen: #5de4c7;
--naturegreen-foreground: #0f1116;
--duck-dark: #a6accd;
--duck-teal: #add7ff;
--duck-yellow: #fffac2;
--duck-orange: #e8b1b0;
--duck-forest: #5de4c7;
--duck-beige: #292c39;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Reverie — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-reverie-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='reverie'] {
--background: #090f1f;
--foreground: #d8e0f2;
--card: #101c38;
--card-foreground: #d8e0f2;
--popover: #101c38;
--popover-foreground: #d8e0f2;
--muted: #212c46;
--muted-foreground: #9ca5ba;
--accent: #212c46;
--accent-foreground: #d8e0f2;
--primary: #85d8da;
--primary-foreground: #090f1f;
--secondary: #212c46;
--secondary-foreground: #d8e0f2;
--cta: #85d8da;
--cta-foreground: #090f1f;
--ctahover: #94ddde;
--success: #6ca994;
--success-foreground: #090f1f;
--warning: #f4a261;
--warning-foreground: #090f1f;
--destructive: #e56b6f;
--destructive-foreground: #090f1f;
--info: #587ea8;
--info-foreground: #090f1f;
--busy: #ed8768;
--busy-foreground: #090f1f;
--busy-ink: #ed8768;
--border: #37425c;
--input: #37425c;
--ring: #85d8da;
--radius: 0.625rem;
--chart-primary: #85d8da;
--chart-secondary: #b479a3;
--status-success: #6ca994;
--status-warning: #f4a261;
--status-in-progress: #587ea8;
--page-bg: #090f1f;
--page-bg-src: '';
--panel-bg: rgb(16 28 56 / 0.72);
--panel-border: rgb(55 66 92 / 0.9);
--panel-border-bare: rgb(55 66 92 / 0.55);
--panel-raised-bg: rgb(16 28 56 / 0.95);
--panel-raised-border: rgb(55 66 92 / 1);
--panel-accent: #85d8da;
--panel-header-bg: rgb(33 44 70 / 0.6);
--panel-header-fg: #d8e0f2;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #101c38;
--glass-bg: rgb(16 28 56 / 0.55);
--glass-border: rgb(55 66 92 / 0.7);
--dock-bg: rgb(16 28 56 / 0.7);
--dock-border: rgb(55 66 92 / 0.8);
--dock-tooltip-bg: #212c46;
--header-bg: rgb(16 28 56 / 0.8);
--header-border: rgb(55 66 92 / 0.9);
--header-fg: #d8e0f2;
--header-blur: 12px;
--pixel-grid-color: rgb(106 116 140 / 0.07);
--card-grid-color: rgb(106 116 140 / 0.05);
--panel-grid-color: rgb(106 116 140 / 0.06);
--scrollbar-thumb: rgb(75 90 128 / 0.6);
--scrollbar-thumb-hover: rgb(75 90 128 / 0.85);
--scrollbar-thin-thumb: rgb(75 90 128 / 0.45);
--scrollbar-thin-thumb-hover: rgb(75 90 128 / 0.7);
--brand: #85d8da;
--brand-foreground: #090f1f;
--brand-primary: #85d8da;
--brand-accent: #6dc2c5;
--brand-warm: #ed8768;
--brand-deep: #090f1f;
--brand-muted: #4b5a80;
--ink: #d8e0f2;
--surface-warm: #101c38;
--naturegreen: #6ca994;
--naturegreen-foreground: #090f1f;
--duck-dark: #d8e0f2;
--duck-teal: #6dc2c5;
--duck-yellow: #f4a261;
--duck-orange: #ed8768;
--duck-forest: #6ca994;
--duck-beige: #24304b;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Rose Pine Dark — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/guilhermetk/omarchy-rose-pine-dark (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='rose-pine-dark'] {
--background: #0e0d14;
--foreground: #e0def4;
--card: #191724;
--card-foreground: #e0def4;
--popover: #191724;
--popover-foreground: #e0def4;
--muted: #292733;
--muted-foreground: #a4a2b6;
--accent: #292733;
--accent-foreground: #e0def4;
--primary: #ebbcba;
--primary-foreground: #0e0d14;
--secondary: #292733;
--secondary-foreground: #e0def4;
--cta: #ebbcba;
--cta-foreground: #0e0d14;
--ctahover: #edc4c2;
--success: #31748f;
--success-foreground: #eeedf9;
--warning: #f6c177;
--warning-foreground: #0e0d14;
--destructive: #eb6f92;
--destructive-foreground: #0e0d14;
--info: #9ccfd8;
--info-foreground: #0e0d14;
--busy: #f19885;
--busy-foreground: #0e0d14;
--busy-ink: #f19885;
--border: #403e4d;
--input: #403e4d;
--ring: #ebbcba;
--radius: 0.625rem;
--chart-primary: #ebbcba;
--chart-secondary: #c4a7e7;
--status-success: #31748f;
--status-warning: #f6c177;
--status-in-progress: #9ccfd8;
--page-bg: #0e0d14;
--page-bg-src: '';
--panel-bg: rgb(25 23 36 / 0.72);
--panel-border: rgb(64 62 77 / 0.9);
--panel-border-bare: rgb(64 62 77 / 0.55);
--panel-raised-bg: rgb(25 23 36 / 0.95);
--panel-raised-border: rgb(64 62 77 / 1);
--panel-accent: #ebbcba;
--panel-header-bg: rgb(41 39 51 / 0.6);
--panel-header-fg: #e0def4;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #191724;
--glass-bg: rgb(25 23 36 / 0.55);
--glass-border: rgb(64 62 77 / 0.7);
--dock-bg: rgb(25 23 36 / 0.7);
--dock-border: rgb(64 62 77 / 0.8);
--dock-tooltip-bg: #292733;
--header-bg: rgb(25 23 36 / 0.8);
--header-border: rgb(64 62 77 / 0.9);
--header-fg: #e0def4;
--header-blur: 12px;
--pixel-grid-color: rgb(115 113 130 / 0.07);
--card-grid-color: rgb(115 113 130 / 0.05);
--panel-grid-color: rgb(115 113 130 / 0.06);
--scrollbar-thumb: rgb(110 106 134 / 0.6);
--scrollbar-thumb-hover: rgb(110 106 134 / 0.85);
--scrollbar-thin-thumb: rgb(110 106 134 / 0.45);
--scrollbar-thin-thumb-hover: rgb(110 106 134 / 0.7);
--brand: #ebbcba;
--brand-foreground: #0e0d14;
--brand-primary: #ebbcba;
--brand-accent: #ebbcba;
--brand-warm: #f19885;
--brand-deep: #0e0d14;
--brand-muted: #6e6a86;
--ink: #e0def4;
--surface-warm: #191724;
--naturegreen: #31748f;
--naturegreen-foreground: #eeedf9;
--duck-dark: #e0def4;
--duck-teal: #ebbcba;
--duck-yellow: #f6c177;
--duck-orange: #f19885;
--duck-forest: #31748f;
--duck-beige: #2d2b39;
--logo-src: '/officer-logo.svg';
}
+97
View File
@@ -0,0 +1,97 @@
/*
Saga — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-saga-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='saga'] {
--background: #030406;
--foreground: #fff6ff;
--card: #05080a;
--card-foreground: #fff6ff;
--popover: #05080a;
--popover-foreground: #fff6ff;
--muted: #17191b;
--muted-foreground: #b4afb6;
--accent: #17191b;
--accent-foreground: #fff6ff;
--primary: #b2fff3;
--primary-foreground: #030406;
--secondary: #17191b;
--secondary-foreground: #fff6ff;
--cta: #b2fff3;
--cta-foreground: #030406;
--ctahover: #bbfff4;
--success: #baf7b5;
--success-foreground: #030406;
--warning: #fff6c3;
--warning-foreground: #030406;
--destructive: #ff9fbc;
--destructive-foreground: #030406;
--info: #b2fff3;
--info-foreground: #030406;
--busy: #ffcbc0;
--busy-foreground: #030406;
--busy-ink: #ffcbc0;
--border: #36373a;
--input: #36373a;
--ring: #b2fff3;
--radius: 0.625rem;
--chart-primary: #b2fff3;
--chart-secondary: #dfbaff;
--status-success: #baf7b5;
--status-warning: #fff6c3;
--status-in-progress: #b2fff3;
--page-bg: #030406;
--page-bg-src: '';
--panel-bg: rgb(5 8 10 / 0.72);
--panel-border: rgb(54 55 58 / 0.9);
--panel-border-bare: rgb(54 55 58 / 0.55);
--panel-raised-bg: rgb(5 8 10 / 0.95);
--panel-raised-border: rgb(54 55 58 / 1);
--panel-accent: #b2fff3;
--panel-header-bg: rgb(23 25 27 / 0.6);
--panel-header-fg: #fff6ff;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #05080a;
--glass-bg: rgb(5 8 10 / 0.55);
--glass-border: rgb(54 55 58 / 0.7);
--dock-bg: rgb(5 8 10 / 0.7);
--dock-border: rgb(54 55 58 / 0.8);
--dock-tooltip-bg: #17191b;
--header-bg: rgb(5 8 10 / 0.8);
--header-border: rgb(54 55 58 / 0.9);
--header-fg: #fff6ff;
--header-blur: 12px;
--pixel-grid-color: rgb(118 115 120 / 0.07);
--card-grid-color: rgb(118 115 120 / 0.05);
--panel-grid-color: rgb(118 115 120 / 0.06);
--scrollbar-thumb: rgb(75 76 77 / 0.6);
--scrollbar-thumb-hover: rgb(75 76 77 / 0.85);
--scrollbar-thin-thumb: rgb(75 76 77 / 0.45);
--scrollbar-thin-thumb-hover: rgb(75 76 77 / 0.7);
--brand: #b2fff3;
--brand-foreground: #030406;
--brand-primary: #b2fff3;
--brand-accent: #ffc79b;
--brand-warm: #ffcbc0;
--brand-deep: #030406;
--brand-muted: #4b4c4d;
--ink: #fff6ff;
--surface-warm: #05080a;
--naturegreen: #baf7b5;
--naturegreen-foreground: #030406;
--duck-dark: #fff6ff;
--duck-teal: #ffc79b;
--duck-yellow: #fff6c3;
--duck-orange: #ffcbc0;
--duck-forest: #baf7b5;
--duck-beige: #1e2023;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Sakura — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-sakura-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='sakura'] {
--background: #070305;
--foreground: #f0eaed;
--card: #0d0509;
--card-foreground: #f0eaed;
--popover: #0d0509;
--popover-foreground: #f0eaed;
--muted: #1e171a;
--muted-foreground: #aca5a9;
--accent: #1e171a;
--accent-foreground: #f0eaed;
--primary: #fbd2ab;
--primary-foreground: #070305;
--secondary: #1e171a;
--secondary-foreground: #f0eaed;
--cta: #fbd2ab;
--cta-foreground: #070305;
--ctahover: #fbd7b5;
--success: #f29b9a;
--success-foreground: #070305;
--warning: #d4a882;
--warning-foreground: #070305;
--destructive: #e85f6f;
--destructive-foreground: #070305;
--info: #d9a56c;
--info-foreground: #070305;
--busy: #de8479;
--busy-foreground: #070305;
--busy-ink: #de8479;
--border: #3a3236;
--input: #3a3236;
--ring: #fbd2ab;
--radius: 0.625rem;
--chart-primary: #fbd2ab;
--chart-secondary: #d1b399;
--status-success: #f29b9a;
--status-warning: #d4a882;
--status-in-progress: #d9a56c;
--page-bg: #070305;
--page-bg-src: '';
--panel-bg: rgb(13 5 9 / 0.72);
--panel-border: rgb(58 50 54 / 0.9);
--panel-border-bare: rgb(58 50 54 / 0.55);
--panel-raised-bg: rgb(13 5 9 / 0.95);
--panel-raised-border: rgb(58 50 54 / 1);
--panel-accent: #fbd2ab;
--panel-header-bg: rgb(30 23 26 / 0.6);
--panel-header-fg: #f0eaed;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #0d0509;
--glass-bg: rgb(13 5 9 / 0.55);
--glass-border: rgb(58 50 54 / 0.7);
--dock-bg: rgb(13 5 9 / 0.7);
--dock-border: rgb(58 50 54 / 0.8);
--dock-tooltip-bg: #1e171a;
--header-bg: rgb(13 5 9 / 0.8);
--header-border: rgb(58 50 54 / 0.9);
--header-fg: #f0eaed;
--header-blur: 12px;
--pixel-grid-color: rgb(115 108 112 / 0.07);
--card-grid-color: rgb(115 108 112 / 0.05);
--panel-grid-color: rgb(115 108 112 / 0.06);
--scrollbar-thumb: rgb(74 60 69 / 0.6);
--scrollbar-thumb-hover: rgb(74 60 69 / 0.85);
--scrollbar-thin-thumb: rgb(74 60 69 / 0.45);
--scrollbar-thin-thumb-hover: rgb(74 60 69 / 0.7);
--brand: #fbd2ab;
--brand-foreground: #070305;
--brand-primary: #fbd2ab;
--brand-accent: #e8c099;
--brand-warm: #de8479;
--brand-deep: #070305;
--brand-muted: #4a3c45;
--ink: #f0eaed;
--surface-warm: #0d0509;
--naturegreen: #f29b9a;
--naturegreen-foreground: #070305;
--duck-dark: #f0eaed;
--duck-teal: #e8c099;
--duck-yellow: #d4a882;
--duck-orange: #de8479;
--duck-forest: #f29b9a;
--duck-beige: #241c20;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Sapphire — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-sapphire-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='sapphire'] {
--background: #030711;
--foreground: #e0f7fa;
--card: #060d1f;
--card-foreground: #e0f7fa;
--popover: #060d1f;
--popover-foreground: #e0f7fa;
--muted: #171e2f;
--muted-foreground: #9fb1b8;
--accent: #171e2f;
--accent-foreground: #e0f7fa;
--primary: #fff6d2;
--primary-foreground: #030711;
--secondary: #171e2f;
--secondary-foreground: #e0f7fa;
--cta: #fff6d2;
--cta-foreground: #030711;
--ctahover: #fff7d7;
--success: #6488ea;
--success-foreground: #030711;
--warning: #d5edeb;
--warning-foreground: #030711;
--destructive: #e95c4b;
--destructive-foreground: #030711;
--info: #f7c3c6;
--info-foreground: #030711;
--busy: #dfa59b;
--busy-foreground: #030711;
--busy-ink: #dfa59b;
--border: #313b4a;
--input: #313b4a;
--ring: #fff6d2;
--radius: 0.625rem;
--chart-primary: #fff6d2;
--chart-secondary: #85cec4;
--status-success: #6488ea;
--status-warning: #d5edeb;
--status-in-progress: #f7c3c6;
--page-bg: #030711;
--page-bg-src: '';
--panel-bg: rgb(6 13 31 / 0.72);
--panel-border: rgb(49 59 74 / 0.9);
--panel-border-bare: rgb(49 59 74 / 0.55);
--panel-raised-bg: rgb(6 13 31 / 0.95);
--panel-raised-border: rgb(49 59 74 / 1);
--panel-accent: #fff6d2;
--panel-header-bg: rgb(23 30 47 / 0.6);
--panel-header-fg: #e0f7fa;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #060d1f;
--glass-bg: rgb(6 13 31 / 0.55);
--glass-border: rgb(49 59 74 / 0.7);
--dock-bg: rgb(6 13 31 / 0.7);
--dock-border: rgb(49 59 74 / 0.8);
--dock-tooltip-bg: #171e2f;
--header-bg: rgb(6 13 31 / 0.8);
--header-border: rgb(49 59 74 / 0.9);
--header-fg: #e0f7fa;
--header-blur: 12px;
--pixel-grid-color: rgb(104 118 130 / 0.07);
--card-grid-color: rgb(104 118 130 / 0.05);
--panel-grid-color: rgb(104 118 130 / 0.06);
--scrollbar-thumb: rgb(81 104 142 / 0.6);
--scrollbar-thumb-hover: rgb(81 104 142 / 0.85);
--scrollbar-thin-thumb: rgb(81 104 142 / 0.45);
--scrollbar-thin-thumb-hover: rgb(81 104 142 / 0.7);
--brand: #fff6d2;
--brand-foreground: #030711;
--brand-primary: #fff6d2;
--brand-accent: #fff6d2;
--brand-warm: #dfa59b;
--brand-deep: #030711;
--brand-muted: #51688e;
--ink: #e0f7fa;
--surface-warm: #060d1f;
--naturegreen: #6488ea;
--naturegreen-foreground: #030711;
--duck-dark: #e0f7fa;
--duck-teal: #fff6d2;
--duck-yellow: #d5edeb;
--duck-orange: #dfa59b;
--duck-forest: #6488ea;
--duck-beige: #1c2435;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Serenity — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-serenity-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='serenity'] {
--background: #13191e;
--foreground: #f0ead6;
--card: #232e37;
--card-foreground: #f0ead6;
--popover: #232e37;
--popover-foreground: #f0ead6;
--muted: #323d45;
--muted-foreground: #b3b2a6;
--accent: #323d45;
--accent-foreground: #f0ead6;
--primary: #e0ffff;
--primary-foreground: #13191e;
--secondary: #323d45;
--secondary-foreground: #f0ead6;
--cta: #e0ffff;
--cta-foreground: #13191e;
--ctahover: #e4ffff;
--success: #7e8b56;
--success-foreground: #13191e;
--warning: #f0ead6;
--warning-foreground: #13191e;
--destructive: #e17f47;
--destructive-foreground: #13191e;
--info: #a69f96;
--info-foreground: #13191e;
--busy: #e9b58f;
--busy-foreground: #13191e;
--busy-ink: #e9b58f;
--border: #4b5356;
--input: #4b5356;
--ring: #e0ffff;
--radius: 0.625rem;
--chart-primary: #e0ffff;
--chart-secondary: #c080c0;
--status-success: #7e8b56;
--status-warning: #f0ead6;
--status-in-progress: #a69f96;
--page-bg: #13191e;
--page-bg-src: '';
--panel-bg: rgb(35 46 55 / 0.72);
--panel-border: rgb(75 83 86 / 0.9);
--panel-border-bare: rgb(75 83 86 / 0.55);
--panel-raised-bg: rgb(35 46 55 / 0.95);
--panel-raised-border: rgb(75 83 86 / 1);
--panel-accent: #e0ffff;
--panel-header-bg: rgb(50 61 69 / 0.6);
--panel-header-fg: #f0ead6;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #232e37;
--glass-bg: rgb(35 46 55 / 0.55);
--glass-border: rgb(75 83 86 / 0.7);
--dock-bg: rgb(35 46 55 / 0.7);
--dock-border: rgb(75 83 86 / 0.8);
--dock-tooltip-bg: #323d45;
--header-bg: rgb(35 46 55 / 0.8);
--header-border: rgb(75 83 86 / 0.9);
--header-fg: #f0ead6;
--header-blur: 12px;
--pixel-grid-color: rgb(127 131 127 / 0.07);
--card-grid-color: rgb(127 131 127 / 0.05);
--panel-grid-color: rgb(127 131 127 / 0.06);
--scrollbar-thumb: rgb(166 159 150 / 0.6);
--scrollbar-thumb-hover: rgb(166 159 150 / 0.85);
--scrollbar-thin-thumb: rgb(166 159 150 / 0.45);
--scrollbar-thin-thumb-hover: rgb(166 159 150 / 0.7);
--brand: #e0ffff;
--brand-foreground: #13191e;
--brand-primary: #e0ffff;
--brand-accent: #80c0c0;
--brand-warm: #e9b58f;
--brand-deep: #13191e;
--brand-muted: #a69f96;
--ink: #f0ead6;
--surface-warm: #232e37;
--naturegreen: #7e8b56;
--naturegreen-foreground: #13191e;
--duck-dark: #f0ead6;
--duck-teal: #80c0c0;
--duck-yellow: #f0ead6;
--duck-orange: #e9b58f;
--duck-forest: #7e8b56;
--duck-beige: #384147;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Shadesofjade — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/HANCORE-linux/omarchy-shadesofjade-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='shadesofjade'] {
--background: #000906;
--foreground: #e6f6f0;
--card: #00110b;
--card-foreground: #e6f6f0;
--popover: #00110b;
--popover-foreground: #e6f6f0;
--muted: #12221c;
--muted-foreground: #a1b1ab;
--accent: #12221c;
--accent-foreground: #e6f6f0;
--primary: #80d4b5;
--primary-foreground: #000906;
--secondary: #12221c;
--secondary-foreground: #e6f6f0;
--cta: #80d4b5;
--cta-foreground: #000906;
--ctahover: #8fd9be;
--success: #00a86b;
--success-foreground: #000906;
--warning: #d1ffb0;
--warning-foreground: #000906;
--destructive: #ff3370;
--destructive-foreground: #000906;
--info: #ff6600;
--info-foreground: #000906;
--busy: #e89990;
--busy-foreground: #000906;
--busy-ink: #e89990;
--border: #2d3e38;
--input: #2d3e38;
--ring: #80d4b5;
--radius: 0.625rem;
--chart-primary: #80d4b5;
--chart-secondary: #8fc85c;
--status-success: #00a86b;
--status-warning: #d1ffb0;
--status-in-progress: #ff6600;
--page-bg: #000906;
--page-bg-src: '';
--panel-bg: rgb(0 17 11 / 0.72);
--panel-border: rgb(45 62 56 / 0.9);
--panel-border-bare: rgb(45 62 56 / 0.55);
--panel-raised-bg: rgb(0 17 11 / 0.95);
--panel-raised-border: rgb(45 62 56 / 1);
--panel-accent: #80d4b5;
--panel-header-bg: rgb(18 34 28 / 0.6);
--panel-header-fg: #e6f6f0;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #00110b;
--glass-bg: rgb(0 17 11 / 0.55);
--glass-border: rgb(45 62 56 / 0.7);
--dock-bg: rgb(0 17 11 / 0.7);
--dock-border: rgb(45 62 56 / 0.8);
--dock-tooltip-bg: #12221c;
--header-bg: rgb(0 17 11 / 0.8);
--header-border: rgb(45 62 56 / 0.9);
--header-fg: #e6f6f0;
--header-blur: 12px;
--pixel-grid-color: rgb(103 120 114 / 0.07);
--card-grid-color: rgb(103 120 114 / 0.05);
--panel-grid-color: rgb(103 120 114 / 0.06);
--scrollbar-thumb: rgb(62 102 80 / 0.6);
--scrollbar-thumb-hover: rgb(62 102 80 / 0.85);
--scrollbar-thin-thumb: rgb(62 102 80 / 0.45);
--scrollbar-thin-thumb-hover: rgb(62 102 80 / 0.7);
--brand: #80d4b5;
--brand-foreground: #000906;
--brand-primary: #80d4b5;
--brand-accent: #80d4b5;
--brand-warm: #e89990;
--brand-deep: #000906;
--brand-muted: #3e6650;
--ink: #e6f6f0;
--surface-warm: #00110b;
--naturegreen: #00a86b;
--naturegreen-foreground: #000906;
--duck-dark: #e6f6f0;
--duck-teal: #80d4b5;
--duck-yellow: #d1ffb0;
--duck-orange: #e89990;
--duck-forest: #00a86b;
--duck-beige: #172822;
--logo-src: '/officer-logo.svg';
}
+97
View File
@@ -0,0 +1,97 @@
/*
Snow — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Light theme (light), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/bjarneo/omarchy-snow-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='snow'] {
--background: #ffffff;
--foreground: #0a0a0a;
--card: #f6f6f6;
--card-foreground: #0a0a0a;
--popover: #f6f6f6;
--popover-foreground: #0a0a0a;
--muted: #f0f0f0;
--muted-foreground: #545454;
--accent: #f0f0f0;
--accent-foreground: #0a0a0a;
--primary: #0a0a0a;
--primary-foreground: #e6e6e6;
--secondary: #f0f0f0;
--secondary-foreground: #0a0a0a;
--cta: #0a0a0a;
--cta-foreground: #e6e6e6;
--ctahover: #090909;
--success: #0a0a0a;
--success-foreground: #e6e6e6;
--warning: #0a0a0a;
--warning-foreground: #e6e6e6;
--destructive: #0a0a0a;
--destructive-foreground: #e6e6e6;
--info: #0a0a0a;
--info-foreground: #e6e6e6;
--busy: #0a0a0a;
--busy-foreground: #e6e6e6;
--busy-ink: #0a0a0a;
--border: #dadada;
--input: #dadada;
--ring: #0a0a0a;
--radius: 0.625rem;
--chart-primary: #0a0a0a;
--chart-secondary: #0a0a0a;
--status-success: #0a0a0a;
--status-warning: #0a0a0a;
--status-in-progress: #0a0a0a;
--page-bg: #ffffff;
--page-bg-src: '';
--panel-bg: rgb(246 246 246 / 0.72);
--panel-border: rgb(218 218 218 / 0.9);
--panel-border-bare: rgb(218 218 218 / 0.55);
--panel-raised-bg: rgb(246 246 246 / 0.95);
--panel-raised-border: rgb(218 218 218 / 1);
--panel-accent: #0a0a0a;
--panel-header-bg: rgb(240 240 240 / 0.6);
--panel-header-fg: #0a0a0a;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #f6f6f6;
--glass-bg: rgb(246 246 246 / 0.55);
--glass-border: rgb(218 218 218 / 0.7);
--dock-bg: rgb(246 246 246 / 0.7);
--dock-border: rgb(218 218 218 / 0.8);
--dock-tooltip-bg: #f0f0f0;
--header-bg: rgb(246 246 246 / 0.8);
--header-border: rgb(218 218 218 / 0.9);
--header-fg: #0a0a0a;
--header-blur: 12px;
--pixel-grid-color: rgb(141 141 141 / 0.07);
--card-grid-color: rgb(141 141 141 / 0.05);
--panel-grid-color: rgb(141 141 141 / 0.06);
--scrollbar-thumb: rgb(208 208 208 / 0.6);
--scrollbar-thumb-hover: rgb(208 208 208 / 0.85);
--scrollbar-thin-thumb: rgb(208 208 208 / 0.45);
--scrollbar-thin-thumb-hover: rgb(208 208 208 / 0.7);
--brand: #0a0a0a;
--brand-foreground: #e6e6e6;
--brand-primary: #0a0a0a;
--brand-accent: #0a0a0a;
--brand-warm: #0a0a0a;
--brand-deep: #f0f0f0;
--brand-muted: #d0d0d0;
--ink: #0a0a0a;
--surface-warm: #f6f6f6;
--naturegreen: #0a0a0a;
--naturegreen-foreground: #e6e6e6;
--duck-dark: #0a0a0a;
--duck-teal: #0a0a0a;
--duck-yellow: #0a0a0a;
--duck-orange: #0a0a0a;
--duck-forest: #0a0a0a;
--duck-beige: #dedede;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
Sunkissed — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/loeclos/omarchy-sunkissed-theme (alacritty.toml), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='sunkissed'] {
--background: #19120a;
--foreground: #f0d9b5;
--card: #2d2013;
--card-foreground: #f0d9b5;
--popover: #2d2013;
--popover-foreground: #f0d9b5;
--muted: #3c3024;
--muted-foreground: #b6a284;
--accent: #3c3024;
--accent-foreground: #f0d9b5;
--primary: #6ea76b;
--primary-foreground: #19120a;
--secondary: #3c3024;
--secondary-foreground: #f0d9b5;
--cta: #6ea76b;
--cta-foreground: #19120a;
--ctahover: #7fb27d;
--success: #a0a81f;
--success-foreground: #19120a;
--warning: #e8a327;
--warning-foreground: #19120a;
--destructive: #e02e1f;
--destructive-foreground: #ffffff;
--info: #4a8e8f;
--info-foreground: #19120a;
--busy: #e46923;
--busy-foreground: #19120a;
--busy-ink: #e46923;
--border: #534433;
--input: #534433;
--ring: #6ea76b;
--radius: 0.625rem;
--chart-primary: #6ea76b;
--chart-secondary: #c26e96;
--status-success: #a0a81f;
--status-warning: #e8a327;
--status-in-progress: #4a8e8f;
--page-bg: #19120a;
--page-bg-src: '';
--panel-bg: rgb(45 32 19 / 0.72);
--panel-border: rgb(83 68 51 / 0.9);
--panel-border-bare: rgb(83 68 51 / 0.55);
--panel-raised-bg: rgb(45 32 19 / 0.95);
--panel-raised-border: rgb(83 68 51 / 1);
--panel-accent: #6ea76b;
--panel-header-bg: rgb(60 48 36 / 0.6);
--panel-header-fg: #f0d9b5;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #2d2013;
--glass-bg: rgb(45 32 19 / 0.55);
--glass-border: rgb(83 68 51 / 0.7);
--dock-bg: rgb(45 32 19 / 0.7);
--dock-border: rgb(83 68 51 / 0.8);
--dock-tooltip-bg: #3c3024;
--header-bg: rgb(45 32 19 / 0.8);
--header-border: rgb(83 68 51 / 0.9);
--header-fg: #f0d9b5;
--header-blur: 12px;
--pixel-grid-color: rgb(133 115 92 / 0.07);
--card-grid-color: rgb(133 115 92 / 0.05);
--panel-grid-color: rgb(133 115 92 / 0.06);
--scrollbar-thumb: rgb(67 52 43 / 0.6);
--scrollbar-thumb-hover: rgb(67 52 43 / 0.85);
--scrollbar-thin-thumb: rgb(67 52 43 / 0.45);
--scrollbar-thin-thumb-hover: rgb(67 52 43 / 0.7);
--brand: #6ea76b;
--brand-foreground: #19120a;
--brand-primary: #6ea76b;
--brand-accent: #6ea76b;
--brand-warm: #e46923;
--brand-deep: #19120a;
--brand-muted: #43342b;
--ink: #f0d9b5;
--surface-warm: #2d2013;
--naturegreen: #a0a81f;
--naturegreen-foreground: #19120a;
--duck-dark: #f0d9b5;
--duck-teal: #6ea76b;
--duck-yellow: #e8a327;
--duck-orange: #e46923;
--duck-forest: #a0a81f;
--duck-beige: #413323;
--logo-src: '/officer-logo.svg';
}
@@ -0,0 +1,97 @@
/*
X 1632 — ported from a community Omarchy theme, not from basecamp/omarchy's own set.
Dark theme (dark), by luminance of its own background — the source repo carries no mode flag of its own to read.
Source: https://github.com/OldJobobo/omarchy-x-1632-theme (colors.toml (16-colour ANSI)), read by scripts/port-community-themes.ts. Values
went through deriveOmarchyPalette (scripts/themes/from-ansi.ts) because the source has no Omarchy 4
colors.toml — some tokens here are reconstructed, not authored. Every text/surface pair is contrast-checked the same way the official themes are.
DO NOT EDIT BY HAND. Re-run the script to refresh from the source repo.
*/
[data-theme='x-1632'] {
--background: #1a1b1f;
--foreground: #c7c6c1;
--card: #2f3138;
--card-foreground: #c7c6c1;
--popover: #2f3138;
--popover-foreground: #c7c6c1;
--muted: #3e3f46;
--muted-foreground: #ababaa;
--accent: #3e3f46;
--accent-foreground: #c7c6c1;
--primary: #92a9cd;
--primary-foreground: #1a1b1f;
--secondary: #3e3f46;
--secondary-foreground: #c7c6c1;
--cta: #92a9cd;
--cta-foreground: #1a1b1f;
--ctahover: #9fb3d3;
--success: #8b8e76;
--success-foreground: #1a1b1f;
--warning: #d6c8ba;
--warning-foreground: #1a1b1f;
--destructive: #a07d7d;
--destructive-foreground: #1a1b1f;
--info: #7f8da1;
--info-foreground: #1a1b1f;
--busy: #bba39c;
--busy-foreground: #1a1b1f;
--busy-ink: #bba39c;
--border: #4d4e53;
--input: #4d4e53;
--ring: #92a9cd;
--radius: 0.625rem;
--chart-primary: #92a9cd;
--chart-secondary: #8383c3;
--status-success: #8b8e76;
--status-warning: #d6c8ba;
--status-in-progress: #7f8da1;
--page-bg: #1a1b1f;
--page-bg-src: '';
--panel-bg: rgb(47 49 56 / 0.72);
--panel-border: rgb(77 78 83 / 0.9);
--panel-border-bare: rgb(77 78 83 / 0.55);
--panel-raised-bg: rgb(47 49 56 / 0.95);
--panel-raised-border: rgb(77 78 83 / 1);
--panel-accent: #92a9cd;
--panel-header-bg: rgb(62 63 70 / 0.6);
--panel-header-fg: #c7c6c1;
--panel-radius: 0.75rem;
--panel-blur: 12px;
--card-bg: #2f3138;
--glass-bg: rgb(47 49 56 / 0.55);
--glass-border: rgb(77 78 83 / 0.7);
--dock-bg: rgb(47 49 56 / 0.7);
--dock-border: rgb(77 78 83 / 0.8);
--dock-tooltip-bg: #3e3f46;
--header-bg: rgb(47 49 56 / 0.8);
--header-border: rgb(77 78 83 / 0.9);
--header-fg: #c7c6c1;
--header-blur: 12px;
--pixel-grid-color: rgb(122 123 125 / 0.07);
--card-grid-color: rgb(122 123 125 / 0.05);
--panel-grid-color: rgb(122 123 125 / 0.06);
--scrollbar-thumb: rgb(140 139 134 / 0.6);
--scrollbar-thumb-hover: rgb(140 139 134 / 0.85);
--scrollbar-thin-thumb: rgb(140 139 134 / 0.45);
--scrollbar-thin-thumb-hover: rgb(140 139 134 / 0.7);
--brand: #92a9cd;
--brand-foreground: #1a1b1f;
--brand-primary: #92a9cd;
--brand-accent: #7f99c1;
--brand-warm: #bba39c;
--brand-deep: #1a1b1f;
--brand-muted: #8c8b86;
--ink: #c7c6c1;
--surface-warm: #2f3138;
--naturegreen: #8b8e76;
--naturegreen-foreground: #1a1b1f;
--duck-dark: #c7c6c1;
--duck-teal: #7f99c1;
--duck-yellow: #d6c8ba;
--duck-orange: #bba39c;
--duck-forest: #8b8e76;
--duck-beige: #3e4046;
--logo-src: '/officer-logo.svg';
}
+44
View File
@@ -82,12 +82,15 @@ export const THEMES: readonly Theme[] = [
{ id: 'all-hallows-eve', name: 'All Hallows Eve', family: 'All Hallows Eve', applyDarkClass: true },
{ id: 'amberbyte', name: 'Amberbyte', family: 'Amberbyte', applyDarkClass: true },
{ id: 'amekoji', name: 'Amekoji', family: 'Amekoji', applyDarkClass: true },
{ id: 'andromeda', name: 'Andromeda', family: 'Andromeda', applyDarkClass: true },
{ id: 'anonymous', name: 'Anonymous', family: 'Anonymous', applyDarkClass: true },
{ id: 'apocalypse', name: 'Apocalypse', family: 'Apocalypse', applyDarkClass: true },
{ id: 'arc-blueberry', name: 'Arc Blueberry', family: 'Arc Blueberry', applyDarkClass: true },
{ id: 'archriot', name: 'Archriot', family: 'Archriot', applyDarkClass: true },
{ id: 'archwave', name: 'Archwave', family: 'Archwave', applyDarkClass: true },
{ id: 'artzen', name: 'Artzen', family: 'Artzen', applyDarkClass: true },
{ id: 'ash', name: 'Ash', family: 'Ash', applyDarkClass: true },
{ id: 'astrodark', name: 'Astrodark', family: 'Astrodark', applyDarkClass: true },
{ id: 'atari', name: 'Atari', family: 'Atari', applyDarkClass: true },
{ id: 'atelier', name: 'Atelier', family: 'Atelier', applyDarkClass: true },
{ id: 'aura', name: 'Aura', family: 'Aura', applyDarkClass: true },
@@ -102,15 +105,23 @@ export const THEMES: readonly Theme[] = [
{ id: 'bauhaus', name: 'Bauhaus', family: 'Bauhaus', applyDarkClass: true },
{ id: 'beachvan', name: 'Beachvan', family: 'Beachvan', applyDarkClass: true },
{ id: 'beta', name: 'Beta', family: 'Beta', applyDarkClass: true },
{ id: 'biscuit-de-mar-dark', name: 'Biscuit DE Mar Dark', family: 'Biscuit DE Mar Dark', applyDarkClass: true },
{ id: 'black-arch', name: 'Black Arch', family: 'Black Arch', applyDarkClass: true },
{ id: 'black-gold', name: 'Black Gold', family: 'Black Gold', applyDarkClass: true },
{ id: 'black-money', name: 'Black Money', family: 'Black Money', applyDarkClass: true },
{ id: 'blackturq', name: 'Blackturq', family: 'Blackturq', applyDarkClass: true },
{ id: 'blueridge', name: 'Blueridge', family: 'Blueridge', applyDarkClass: true },
{ id: 'brutalism', name: 'Brutalism', family: 'Brutalism', applyDarkClass: true },
{ id: 'caroline-skyline', name: 'Caroline Skyline', family: 'Caroline Skyline', applyDarkClass: true },
{ id: 'catppuccin-mocha', name: 'Catppuccin Mocha', family: 'Catppuccin Mocha', applyDarkClass: true },
{ id: 'cattpuccin-glass', name: 'Cattpuccin Glass', family: 'Cattpuccin Glass', applyDarkClass: true },
{ id: 'city-783', name: 'City 783', family: 'City 783', applyDarkClass: true },
{ id: 'copper-night', name: 'Copper Night', family: 'Copper Night', applyDarkClass: true },
{ id: 'corporate', name: 'Corporate', family: 'Corporate', applyDarkClass: false },
{ id: 'cpunk', name: 'Cpunk', family: 'Cpunk', applyDarkClass: true },
{ id: 'crimson', name: 'Crimson', family: 'Crimson', applyDarkClass: true },
{ id: 'crimson-gold', name: 'Crimson Gold', family: 'Crimson Gold', applyDarkClass: true },
{ id: 'cyberpunk-2', name: 'Cyberpunk 2', family: 'Cyberpunk 2', applyDarkClass: true },
{ id: 'dark-xp', name: 'Dark XP', family: 'Dark XP', applyDarkClass: true },
{ id: 'dayfox', name: 'Dayfox', family: 'Dayfox', applyDarkClass: false },
{ id: 'dead-space', name: 'Dead Space', family: 'Dead Space', applyDarkClass: true },
@@ -118,21 +129,32 @@ export const THEMES: readonly Theme[] = [
{ id: 'delete', name: 'Delete', family: 'Delete', applyDarkClass: true },
{ id: 'delorean', name: 'Delorean', family: 'Delorean', applyDarkClass: true },
{ id: 'demon', name: 'Demon', family: 'Demon', applyDarkClass: true },
{ id: 'desert-gleam', name: 'Desert Gleam', family: 'Desert Gleam', applyDarkClass: false },
{ id: 'desert-twilight', name: 'Desert Twilight', family: 'Desert Twilight', applyDarkClass: true },
{ id: 'dotrb', name: 'Dotrb', family: 'Dotrb', applyDarkClass: true },
{ id: 'drac', name: 'Drac', family: 'Drac', applyDarkClass: true },
{ id: 'dracula', name: 'Dracula', family: 'Dracula', applyDarkClass: true },
{ id: 'dragon', name: 'Dragon', family: 'Dragon', applyDarkClass: true },
{ id: 'dreamwave', name: 'Dreamwave', family: 'Dreamwave', applyDarkClass: true },
{ id: 'elysian', name: 'Elysian', family: 'Elysian', applyDarkClass: true },
{ id: 'ember-n-ash', name: 'Ember N Ash', family: 'Ember N Ash', applyDarkClass: true },
{ id: 'eva-unit-01', name: 'Eva Unit 01', family: 'Eva Unit 01', applyDarkClass: true },
{ id: 'event-horizon', name: 'Event Horizon', family: 'Event Horizon', applyDarkClass: true },
{ id: 'everblush', name: 'Everblush', family: 'Everblush', applyDarkClass: true },
{ id: 'evergarden', name: 'Evergarden', family: 'Evergarden', applyDarkClass: true },
{ id: 'farline', name: 'Farline', family: 'Farline', applyDarkClass: true },
{ id: 'felix', name: 'Felix', family: 'Felix', applyDarkClass: true },
{ id: 'fiery-ocean', name: 'Fiery Ocean', family: 'Fiery Ocean', applyDarkClass: true },
{ id: 'fireside', name: 'Fireside', family: 'Fireside', applyDarkClass: true },
{ id: 'firesky', name: 'Firesky', family: 'Firesky', applyDarkClass: true },
{ id: 'flat-dracula', name: 'Flat Dracula', family: 'Flat Dracula', applyDarkClass: true },
{ id: 'flexoki-dark', name: 'Flexoki Dark', family: 'Flexoki Dark', applyDarkClass: true },
{ id: 'florida-man', name: 'Florida Man', family: 'Florida Man', applyDarkClass: true },
{ id: 'fluid-glass', name: 'Fluid Glass', family: 'Fluid Glass', applyDarkClass: true },
{ id: 'forest-green', name: 'Forest Green', family: 'Forest Green', applyDarkClass: true },
{ id: 'frost', name: 'Frost', family: 'Frost', applyDarkClass: true },
{ id: 'futurism', name: 'Futurism', family: 'Futurism', applyDarkClass: true },
{ id: 'ghost-pastel', name: 'Ghost Pastel', family: 'Ghost Pastel', applyDarkClass: true },
{ id: 'glory-antic', name: 'Glory Antic', family: 'Glory Antic', applyDarkClass: true },
{ id: 'gold-rush', name: 'Gold Rush', family: 'Gold Rush', applyDarkClass: true },
{ id: 'gotham-city', name: 'Gotham City', family: 'Gotham City', applyDarkClass: true },
@@ -142,12 +164,18 @@ export const THEMES: readonly Theme[] = [
{ id: 'gruber-tsoding', name: 'Gruber Tsoding', family: 'Gruber Tsoding', applyDarkClass: true },
{ id: 'grudark', name: 'Grudark', family: 'Grudark', applyDarkClass: true },
{ id: 'harbor', name: 'Harbor', family: 'Harbor', applyDarkClass: false },
{ id: 'harbor-dark', name: 'Harbor Dark', family: 'Harbor Dark', applyDarkClass: true },
{ id: 'hex', name: 'Hex', family: 'Hex', applyDarkClass: true },
{ id: 'himalaya', name: 'Himalaya', family: 'Himalaya', applyDarkClass: true },
{ id: 'hinterlands', name: 'Hinterlands', family: 'Hinterlands', applyDarkClass: true },
{ id: 'hollow-knight', name: 'Hollow Knight', family: 'Hollow Knight', applyDarkClass: true },
{ id: 'infernium', name: 'Infernium', family: 'Infernium', applyDarkClass: false },
{ id: 'infernium-dark', name: 'Infernium Dark', family: 'Infernium Dark', applyDarkClass: true },
{ id: 'inkypinky', name: 'Inkypinky', family: 'Inkypinky', applyDarkClass: true },
{ id: 'kanso', name: 'Kanso', family: 'Kanso', applyDarkClass: true },
{ id: 'killer-klowns', name: 'Killer Klowns', family: 'Killer Klowns', applyDarkClass: true },
{ id: 'kimiko', name: 'Kimiko', family: 'Kimiko', applyDarkClass: true },
{ id: 'koyanagi', name: 'Koyanagi', family: 'Koyanagi', applyDarkClass: true },
{ id: 'kurayami', name: 'Kurayami', family: 'Kurayami', applyDarkClass: true },
{ id: 'lain', name: 'Lain', family: 'Lain', applyDarkClass: true },
{ id: 'lairetam', name: 'Lairetam', family: 'Lairetam', applyDarkClass: true },
@@ -167,17 +195,23 @@ export const THEMES: readonly Theme[] = [
{ id: 'monokai', name: 'Monokai', family: 'Monokai', applyDarkClass: true },
{ id: 'monokai-dark', name: 'Monokai Dark', family: 'Monokai Dark', applyDarkClass: true },
{ id: 'monolith', name: 'Monolith', family: 'Monolith', applyDarkClass: true },
{ id: 'monolith-2', name: 'Monolith 2', family: 'Monolith 2', applyDarkClass: true },
{ id: 'moodpeak', name: 'Moodpeak', family: 'Moodpeak', applyDarkClass: true },
{ id: 'nagai-poolside', name: 'Nagai Poolside', family: 'Nagai Poolside', applyDarkClass: true },
{ id: 'nagai-twilight', name: 'Nagai Twilight', family: 'Nagai Twilight', applyDarkClass: true },
{ id: 'nebulite', name: 'Nebulite', family: 'Nebulite', applyDarkClass: true },
{ id: 'neo-sploosh', name: 'Neo Sploosh', family: 'Neo Sploosh', applyDarkClass: true },
{ id: 'neon-street', name: 'Neon Street', family: 'Neon Street', applyDarkClass: true },
{ id: 'neovoid', name: 'Neovoid', family: 'Neovoid', applyDarkClass: true },
{ id: 'nes', name: 'Nes', family: 'Nes', applyDarkClass: true },
{ id: 'nyc', name: 'Nyc', family: 'Nyc', applyDarkClass: true },
{ id: 'one-dark-pro', name: 'One Dark Pro', family: 'One Dark Pro', applyDarkClass: true },
{ id: 'oxford', name: 'Oxford', family: 'Oxford', applyDarkClass: true },
{ id: 'oxocarbon-dark', name: 'Oxocarbon Dark', family: 'Oxocarbon Dark', applyDarkClass: true },
{ id: 'pandora', name: 'Pandora', family: 'Pandora', applyDarkClass: true },
{ id: 'pina', name: 'Pina', family: 'Pina', applyDarkClass: true },
{ id: 'pink-blood', name: 'Pink Blood', family: 'Pink Blood', applyDarkClass: true },
{ id: 'pmndrs', name: 'Pmndrs', family: 'Pmndrs', applyDarkClass: true },
{ id: 'pulsar', name: 'Pulsar', family: 'Pulsar', applyDarkClass: true },
{ id: 'purple-moon', name: 'Purple Moon', family: 'Purple Moon', applyDarkClass: true },
{ id: 'purplewave', name: 'Purplewave', family: 'Purplewave', applyDarkClass: true },
@@ -185,11 +219,19 @@ export const THEMES: readonly Theme[] = [
{ id: 'rdddcs', name: 'Rdddcs', family: 'Rdddcs', applyDarkClass: true },
{ id: 'red-monarch', name: 'Red Monarch', family: 'Red Monarch', applyDarkClass: true },
{ id: 'retropc', name: 'Retropc', family: 'Retropc', applyDarkClass: true },
{ id: 'reverie', name: 'Reverie', family: 'Reverie', applyDarkClass: true },
{ id: 'robco', name: 'Robco', family: 'Robco', applyDarkClass: true },
{ id: 'robco-mojave', name: 'Robco Mojave', family: 'Robco Mojave', applyDarkClass: true },
{ id: 'rose-pine-dark', name: 'Rose Pine Dark', family: 'Rose Pine Dark', applyDarkClass: true },
{ id: 'roseofdune', name: 'Roseofdune', family: 'Roseofdune', applyDarkClass: false },
{ id: 'royal', name: 'Royal', family: 'Royal', applyDarkClass: true },
{ id: 'rustleaf', name: 'Rustleaf', family: 'Rustleaf', applyDarkClass: true },
{ id: 'saga', name: 'Saga', family: 'Saga', applyDarkClass: true },
{ id: 'sakura', name: 'Sakura', family: 'Sakura', applyDarkClass: true },
{ id: 'sapphire', name: 'Sapphire', family: 'Sapphire', applyDarkClass: true },
{ id: 'serenity', name: 'Serenity', family: 'Serenity', applyDarkClass: true },
{ id: 'shadesofjade', name: 'Shadesofjade', family: 'Shadesofjade', applyDarkClass: true },
{ id: 'snow', name: 'Snow', family: 'Snow', applyDarkClass: false },
{ id: 'snow-black', name: 'Snow Black', family: 'Snow Black', applyDarkClass: true },
{ id: 'space-bound', name: 'Space Bound', family: 'Space Bound', applyDarkClass: true },
{ id: 'space-monkey', name: 'Space Monkey', family: 'Space Monkey', applyDarkClass: true },
@@ -197,6 +239,7 @@ export const THEMES: readonly Theme[] = [
{ id: 'spectra', name: 'Spectra', family: 'Spectra', applyDarkClass: true },
{ id: 'stellar', name: 'Stellar', family: 'Stellar', applyDarkClass: true },
{ id: 'stillmoon', name: 'Stillmoon', family: 'Stillmoon', applyDarkClass: true },
{ id: 'sunkissed', name: 'Sunkissed', family: 'Sunkissed', applyDarkClass: true },
{ id: 'sunset', name: 'Sunset', family: 'Sunset', applyDarkClass: true },
{ id: 'synthetica', name: 'Synthetica', family: 'Synthetica', applyDarkClass: true },
{ id: 'synthwave-84', name: 'Synthwave 84', family: 'Synthwave 84', applyDarkClass: true },
@@ -220,6 +263,7 @@ export const THEMES: readonly Theme[] = [
{ id: 'wasteland', name: 'Wasteland', family: 'Wasteland', applyDarkClass: true },
{ id: 'waveform-dark', name: 'Waveform Dark', family: 'Waveform Dark', applyDarkClass: true },
{ id: 'white-gold', name: 'White Gold', family: 'White Gold', applyDarkClass: false },
{ id: 'x-1632', name: 'X 1632', family: 'X 1632', applyDarkClass: true },
{ id: 'yuugure', name: 'Yuugure', family: 'Yuugure', applyDarkClass: true },
/* COMMUNITY THEMES — end */
] as const;