blob: 6a7cb9c08d3b482b9e15471646e03e73dcabed83 [file]
/* =============================================================================
Glass material on macOS. The reference
layout's `light-glass` / `dark-glass` themes that paint the sidebar against
native vibrancy material. We do the same:
- Main process sets BrowserWindow({ vibrancy: 'sidebar' }) on darwin.
- Renderer tags <html> with `data-os="darwin"` via window.maka.app.info().
- The CSS below makes the window background + sidebar surface translucent
so the macOS vibrancy material shows through, then re-tints with a
subtle warm overlay (matches reference's 172° linear-gradient on
--agents-layout-bg). Non-macOS platforms (Windows / Linux) keep their
opaque chrome since vibrancy is a no-op there.
============================================================================= */
html[data-os="darwin"],
html[data-os="darwin"] body {
background: transparent;
}
/* PR-SIDEBAR-GLASS-VIBRANCY-0 (WAWQAQ msg `6c0b8a7c` 2026-06-27):
`vibrancy: 'sidebar'` was being set on the BrowserWindow and the
shell-level `background: transparent` rule was already here, BUT
the parent `.appFrame` was still painting solid `--surface-canvas`
(see PR-CHAT-CHROME-FIX-1) — so the vibrancy material was rendered
behind an opaque cover. Force the appFrame transparent on darwin so
the native blur substrate actually shows through. This is the
reference-atlas `light-glass` / `dark-glass` mode that we documented
but never wired all the way through. */
html[data-os="darwin"] .maka-session-panel {
/* PR-CHAT-CHROME-FIX-1 (WAWQAQ msg `4a1b8c13`): flat base only —
no gradient, no 1px border. The 4px gap around the floating
detail panel is the only visible boundary.
Maintainer 2026-07-18: the rail is transparent BY DESIGN (the
shared .agents-sidebar reset) — its color comes from the shell
backplate below. The old 50%-alpha tint + blur here fought that
architecture and washed the rail to ~0.988 while Settings read
0.976; both now inherit the same opaque backplate (see the
appFrame note below), so this rule keeps only the flat base. */
background: transparent;
}
/* =============================================================================
PR-QODERWORK-GLASS-RESHIP-L3-L6-L7 (WAWQAQ msg `c71b4dcb` thread,
2026-06-30): re-shipped the QoderWork light-glass / dark-glass look on
darwin vibrancy. L3 + L7 — the material + list-label rules — live below.
L6 — the neutral-glass color TOKENS this file used to override on darwin
(--color-bg-container / --color-text-quaternary, light + dark) — moved to
maka-tokens.css (Round C) so every token definition has one home. The
html[data-os="darwin"] override there stays unlayered on purpose so it still
outranks the :root aliases (0,1,1 > 0,1,0). Only glass-MATERIAL rules and
the darwin text/label overrides remain in this file.
============================================================================= */
/* Product content inherits one foreground while Astryx owns the navigation
item chrome and its state colors. Section title size is pinned in
sidebar.css (.maka-session-list .astryx-side-nav-section …). */
html[data-os="darwin"] .maka-session-list {
color: var(--foreground);
}
html[data-os="darwin"] .maka-session-panel-footer {
/* Hairline + equal padding live on the sticky shell (sidebar.css).
Footer section stays transparent so Settings is the same SideNavItem. */
border-top: 0;
background: transparent;
}
/* =============================================================================
Compact glass details
Pure CSS, no JSX surgery, all gated on theme/attribute selectors.
============================================================================= */
/* §14.4 — chrome surfaces opt out of text selection. Selectable text is
restricted to actual content (Markdown body, composer textarea, readonly
pre/code). This prevents accidental "click-drag on nav row starts text
selection" footgun and makes click+drag-to-resize feel native. */
.maka-session-panel,
.maka-session-panel-footer,
.maka-plan-heading,
.maka-titlebar-action {
-webkit-user-select: none;
user-select: none;
}
/* PR-FE-BUG-HUNT-8 (kenji aesthetic-audit reminder 9, finding #3):
`[data-gradual-blur-layer]` block removed. Originally ported from
a generic linear-gradient mask + `backdrop-filter:
blur(6px)` overlay + raw `z-index: 5` that any element could opt
into via the data attribute. Kenji called it out as an escape
hatch — future surfaces could re-introduce blur and a non-token
z-index just by wearing the attr, sidestepping the design system.
`grep -rn data-gradual-blur-layer --include=*.tsx` confirmed zero
consumers in the renderer JSX. The CSS was dead. Removing it
eliminates the escape hatch + the raw z-index. If a future scroll
edge needs a fade we'll add a named class with an explicit
contract instead. */