feat: Dan Mode (third theme), Pico CSS notes, cycle theme toggle
Dan Mode: pure white backgrounds, electric blue text (#0000ff), nuclear yellow accents (#ffff00), hot magenta borders (#ff00ff), red labels, glowing box-shadows. Maximum saturation. Hostile to human vision by design. Theme toggle now cycles light → dark → dan → light (icons: 🌙 😎 ☀️). PICO_CSS.md: documents [role=button] color clobber, palette scoping rules, and theme toggling pattern for future reference.
This commit is contained in:
101
src/app.css
101
src/app.css
@@ -54,6 +54,107 @@
|
||||
}
|
||||
[data-theme=dark] { --color-label: #a0a09a; }
|
||||
|
||||
/* ── DAN MODE ──────────────────────────────────────────────────────────────── */
|
||||
/* Screaming bright colors. Offensive to the eyes by design. */
|
||||
[data-theme=dan] {
|
||||
color-scheme: light;
|
||||
|
||||
/* Base */
|
||||
--pico-background-color: #ffffff;
|
||||
--pico-color: #0000ff; /* pure electric blue body text */
|
||||
--pico-muted-color: #ff6600; /* screaming orange for muted text */
|
||||
--pico-muted-border-color: #ff00ff;
|
||||
|
||||
/* Cards */
|
||||
--pico-card-background-color: #ffffff;
|
||||
--pico-card-border-color: #ff00ff; /* magenta borders */
|
||||
--pico-card-box-shadow: 0 0 12px 2px #ffff00, 0 0 4px 1px #ff00ff;
|
||||
|
||||
/* Primary — nuclear yellow */
|
||||
--pico-primary: #cccc00;
|
||||
--pico-primary-background: #ffff00;
|
||||
--pico-primary-border: #cccc00;
|
||||
--pico-primary-hover: #aaaa00;
|
||||
--pico-primary-hover-background: #eeee00;
|
||||
--pico-primary-hover-border: #aaaa00;
|
||||
--pico-primary-focus: rgba(255, 255, 0, 0.6);
|
||||
--pico-primary-inverse: #000000; /* black text on yellow buttons */
|
||||
|
||||
/* Secondary — hot magenta */
|
||||
--pico-secondary: #ff00ff;
|
||||
--pico-secondary-background: #dd00dd;
|
||||
--pico-secondary-border: #ff00ff;
|
||||
--pico-secondary-hover: #ff44ff;
|
||||
--pico-secondary-hover-background: #ff00ff;
|
||||
--pico-secondary-inverse: #ffffff;
|
||||
|
||||
/* Contrast */
|
||||
--pico-contrast: #000000;
|
||||
--pico-contrast-background: #000000;
|
||||
--pico-contrast-inverse: #ffff00;
|
||||
|
||||
/* Form elements */
|
||||
--pico-form-element-background-color: #ffffcc;
|
||||
--pico-form-element-border-color: #ff00ff;
|
||||
--pico-form-element-color: #0000ff;
|
||||
--pico-form-element-active-border-color: #ff0000;
|
||||
--pico-form-element-focus-color: rgba(255, 0, 255, 0.5);
|
||||
|
||||
/* App-specific */
|
||||
--color-label: #ff0000; /* red labels */
|
||||
}
|
||||
|
||||
/* Dan Mode: result tile text — override the [role=button] white-text reset */
|
||||
[data-theme=dan] .result-tile {
|
||||
--pico-color: initial;
|
||||
color: #0000ff;
|
||||
background-color: #ffffff;
|
||||
border-color: #ff00ff;
|
||||
box-shadow: 0 0 8px 1px #ffff00;
|
||||
}
|
||||
|
||||
[data-theme=dan] .result-tile:hover,
|
||||
[data-theme=dan] .result-tile.highlighted {
|
||||
background-color: #ffff00;
|
||||
border-color: #ff0000;
|
||||
color: #000000;
|
||||
box-shadow: 0 0 16px 4px #ff00ff;
|
||||
}
|
||||
|
||||
[data-theme=dan] .result-label {
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
/* Dan Mode: highlight bar */
|
||||
[data-theme=dan] .highlighted-result {
|
||||
background-color: #ffff00;
|
||||
border-color: #ff0000 !important;
|
||||
box-shadow: 0 0 20px 4px #ff00ff;
|
||||
}
|
||||
|
||||
[data-theme=dan] .highlighted-eq-from,
|
||||
[data-theme=dan] .highlighted-eq-to {
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
[data-theme=dan] .highlighted-eq-sep {
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
/* Dan Mode: nav / header */
|
||||
[data-theme=dan] header {
|
||||
background-color: #ffff00;
|
||||
border-bottom: 3px solid #ff00ff;
|
||||
}
|
||||
|
||||
[data-theme=dan] header strong {
|
||||
color: #ff0000;
|
||||
}
|
||||
|
||||
[data-theme=dan] header nav a {
|
||||
color: #0000ff !important;
|
||||
}
|
||||
|
||||
/* ── Results grid ──────────────────────────────────────────────────────────── */
|
||||
.results-grid {
|
||||
display: grid;
|
||||
|
||||
Reference in New Issue
Block a user