Dotfiles/desktopenvs/hyprdrive/supersonic-booster/style/style.css

228 lines
5.6 KiB
CSS

/* supersonic-booster — PipeWire mixer panel. Matches the astro-menu/beacon/
* transmitter-panel idiom: emitted-magenta text, violet holo-glass fills,
* glow-violet/accent frames, Agave Nerd Font Mono, rounded panels. The
* scanline/sweep/noise depth is Cairo-drawn on top by lib/hologram.py. */
@define-color text #EB00A6; /* emitted magenta, same override the rest of the suite uses */
* {
font-family: "Agave Nerd Font Mono", monospace;
font-size: 11pt;
}
/* Blank the structural nodes so the CyberQueer theme's `* { background-color:
* #1a1a1a }` doesn't fill the surface/gaps with an opaque slab — the panel
* asserts its own glass fill below (same trick as beacon/transmitter-panel). */
window,
window.background,
.sb-window,
.sb-scroll-row,
box,
overlay,
label,
image,
drawingarea {
background: transparent;
background-color: transparent;
}
/* the holo-glass panel */
.sb-panel {
background-color: alpha(@violet, 0.40);
border: 2px solid #8A5CFF;
border-radius: 16px;
padding: 14px 16px;
box-shadow: 0 0 16px 1px alpha(#8A5CFF, 0.35);
}
.sb-header { margin: 0 64px 4px 0; }
.sb-title {
color: @text;
font-weight: bold;
font-size: 14pt;
letter-spacing: 1px;
}
/* ---- tab switcher ------------------------------------------------------- */
.sb-tabbar {
margin-bottom: 4px;
}
.sb-tab {
color: @text;
background-color: alpha(@violet, 0.35);
border: 2px solid #8A5CFF;
border-radius: 18px;
padding: 4px 14px;
min-height: 26px;
transition: border-color 180ms ease, color 180ms ease, box-shadow 220ms ease, background 180ms ease;
}
.sb-tab:hover {
border-color: @accent;
color: @accent;
}
.sb-tab:checked {
background-color: alpha(@accent, 0.55);
border-color: @accent;
color: @bg;
box-shadow: 0 0 12px 1px alpha(@accent, 0.5);
}
.sb-tab-page {
min-height: 260px;
}
/* ---- horizontal scroll row of cards --------------------------------------- */
.sb-scroll-row { padding: 4px 2px 10px 2px; }
.sb-row { padding: 2px; }
.sb-empty {
color: @text;
opacity: 0.55;
padding: 40px 20px;
}
/* ---- cards -------------------------------------------------------------- */
.sb-card {
background-color: alpha(@violet, 0.30);
border: 2px solid #8A5CFF;
border-radius: 14px;
padding: 10px 12px;
min-width: 170px;
}
.sb-card-head { margin-bottom: 2px; }
.sb-card-title {
color: @text;
font-weight: bold;
font-size: 10.5pt;
}
.sb-field-label {
color: @text;
opacity: 0.65;
font-size: 8.5pt;
letter-spacing: 0.5px;
}
/* ---- live peak bar -------------------------------------------------------- */
.sb-peakbar { min-height: 6px; }
.sb-peakbar trough {
background-color: alpha(@bg, 0.6);
border-radius: 4px;
min-height: 6px;
}
.sb-peakbar block {
border-radius: 4px;
min-width: 2px;
}
.sb-peakbar block.filled {
background-color: #34E27A; /* signal present — distinct from the violet/accent UI chrome */
}
.sb-peakbar block.empty {
background-color: transparent;
}
/* ---- volume meter (Gtk.Scale) --------------------------------------------- */
.sb-meter-row { margin: 2px 0; }
.sb-meter-label {
color: @text;
opacity: 0.75;
font-size: 9pt;
min-width: 12px;
}
.sb-meter trough {
background-color: alpha(@bg, 0.55);
border-radius: 6px;
min-height: 10px;
}
.sb-meter highlight {
background-color: @accent;
border-radius: 6px;
}
.sb-meter slider {
background-color: @text;
border-radius: 50%;
min-width: 14px;
min-height: 14px;
}
.sb-meter.sb-meter-muted highlight { background-color: alpha(@text, 0.25); }
.sb-meter.sb-meter-muted slider { background-color: alpha(@text, 0.4); }
/* ---- controls (mute / L-R toggle / default) -------------------------------- */
.sb-card-controls { margin-top: 2px; }
.sb-mute-btn,
.sb-lr-toggle,
.sb-default-btn {
color: @text;
background-color: alpha(@violet, 0.4);
border: 2px solid #8A5CFF;
border-radius: 16px;
padding: 2px 10px;
min-height: 24px;
font-size: 9pt;
transition: border-color 180ms ease, color 180ms ease, box-shadow 220ms ease, background 180ms ease;
}
.sb-mute-btn:hover,
.sb-lr-toggle:hover,
.sb-default-btn:hover {
border-color: @accent;
color: @accent;
}
.sb-mute-btn:checked {
background-color: alpha(@danger, 0.55);
border-color: @danger;
color: @bg;
}
.sb-lr-toggle:checked {
background-color: alpha(@accent, 0.55);
border-color: @accent;
color: @bg;
}
.sb-default-btn:checked {
background-color: alpha(#34E27A, 0.4);
border-color: #34E27A;
color: @bg;
}
.sb-default-btn:disabled {
opacity: 0.85;
}
/* ---- dropdowns ------------------------------------------------------------ */
.sb-device-dropdown {
color: @text;
background-color: alpha(@bg, 0.5);
border: 2px solid #8A5CFF;
border-radius: 10px;
padding: 2px 6px;
min-height: 26px;
font-size: 9pt;
}
.sb-device-dropdown:hover { border-color: @accent; }
/* ---- general settings tab -------------------------------------------------- */
.sb-general { padding: 6px 4px; }
.sb-general-field { margin-bottom: 4px; }
.sb-server-info {
color: @text;
opacity: 0.6;
font-size: 9pt;
margin-top: 8px;
}
/* floating panel-level close button (top-right) — copied verbatim from
* astro-menu/style/style.css's .close-btn idiom. */
.close-btn {
color: @text; background: alpha(@violet, 0.4);
border: none; border-radius: 20px;
min-width: 34px; min-height: 34px;
margin: 16px 20px;
transition: background 180ms ease, color 180ms ease, box-shadow 220ms ease;
}
.close-btn:hover {
background: @accent;
color: @bg;
box-shadow: 0 0 14px 2px alpha(@accent, 0.55);
}
scrollbar slider { background: @violet; border-radius: 8px; min-width: 6px; min-height: 6px; }
scrollbar slider:hover { background: @accent; }
.sb-hologram { background: transparent; }