mirror of
https://github.com/zen-browser/theme-store.git
synced 2025-07-07 08:55:31 +02:00
199 lines
5.7 KiB
CSS
199 lines
5.7 KiB
CSS
:root {
|
|
--bmb-sound-icon-scale: 1.5;
|
|
--bmb-sound-icon-scale-essentials: 1.26;
|
|
--bmb-sound-icon-scale-glance: 1.15;
|
|
}
|
|
|
|
/* ================== General ================== */
|
|
/* Hide firefox sound button */
|
|
.tab-audio-button {
|
|
display: none !important;
|
|
}
|
|
|
|
/* Tab icon overlay styles */
|
|
.tab-icon-overlay {
|
|
border: none !important;
|
|
transform: translate(130%, 44%) scale(var(--bmb-sound-icon-scale)) !important;
|
|
background-color: transparent !important;
|
|
transition: 0.2s;
|
|
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
display: block !important;
|
|
}
|
|
}
|
|
|
|
/* Ensure sound icon is still visible when tab not selected */
|
|
#navigator-toolbox:not([zen-sidebar-expanded])
|
|
#tabbrowser-tabs
|
|
.tab-icon-overlay:is([soundplaying], [muted], [activemedia-blocked]):not(
|
|
[selected]
|
|
) {
|
|
display: block !important;
|
|
}
|
|
|
|
/* Fill sound button on hover; ensure icon is displayed */
|
|
#navigator-toolbox #tabbrowser-tabs .tabbrowser-tab {
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay {
|
|
&:is([soundplaying], [muted]) {
|
|
&:hover {
|
|
fill: var(--zen-colors-primary) !important;
|
|
transition: 0.2s;
|
|
display: block !important;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Zen essentials (expanded tabs) ================== */
|
|
#navigator-toolbox[zen-sidebar-expanded] {
|
|
.tabbrowser-tab[zen-essential] {
|
|
/* Hide tab icon image for collapsed tabs and essentials */
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) .tab-icon-image {
|
|
display: none !important;
|
|
}
|
|
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay,
|
|
& .tab-icon-stack {
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
transform: translate(20%, 25%)
|
|
scale(var(--bmb-sound-icon-scale-essentials)) !important;
|
|
display: block !important;
|
|
/* Remove extra margin created for vanilla icons */
|
|
margin-inline-end: -2em !important;
|
|
margin-inline-start: -2em !important;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Zen glance tab (expanded tabs) ================== */
|
|
#navigator-toolbox[zen-sidebar-expanded] {
|
|
.tabbrowser-tab[zen-glance-tab] {
|
|
/* Hide tab icon image */
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) .tab-icon-image {
|
|
display: none !important;
|
|
}
|
|
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay,
|
|
& .tab-icon-stack {
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
transform: translate(-8%, 25%) scale(var(--bmb-sound-icon-scale-glance)) !important;
|
|
display: block !important;
|
|
margin: 0px !important;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Zen glance tab (pinned tabs) ================== */
|
|
#navigator-toolbox[zen-sidebar-expanded]
|
|
#tabbrowser-tabs
|
|
.tabbrowser-tab[zen-glance-tab] {
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay {
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
margin: 0px !important;
|
|
transform: translate(-35%, 25%) scale(var(--bmb-sound-icon-scale-glance)) !important;
|
|
display: block !important;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Pinned tab (tab page changed) ================== */
|
|
#navigator-toolbox[zen-sidebar-expanded] {
|
|
.tabbrowser-tab[zen-pinned-changed] {
|
|
/* Add extra space for sound button when reset tab button is active */
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
.tab-reset-pin-button {
|
|
margin-right: 2.8em !important;
|
|
}
|
|
}
|
|
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay {
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
transform: translate(180%, 45%) scale(var(--bmb-sound-icon-scale)) !important;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Expanded tabs ================== */
|
|
#navigator-toolbox[zen-sidebar-expanded] #tabbrowser-tabs .tabbrowser-tab {
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay {
|
|
&:is([soundplaying], [muted], [activemedia-blocked]) {
|
|
margin-right: 36px !important;
|
|
margin-left: 0px !important;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Split view (expanded tabs) ================== */
|
|
#navigator-toolbox[zen-sidebar-expanded]
|
|
#tabbrowser-tabs
|
|
.tabbrowser-tab[split-view] {
|
|
/* Sound icon takes place of tab icon if tab is not pinned */
|
|
&:is([soundplaying], [muted], [activemedia-blocked]):not([pinned])
|
|
.tab-icon-image {
|
|
display: none !important;
|
|
}
|
|
|
|
& .tab-throbber,
|
|
& .tab-icon-pending,
|
|
& .tab-icon-image,
|
|
& .tab-sharing-icon-overlay,
|
|
& .tab-icon-overlay {
|
|
/* Replace tab icon image with sound button; not needed if tab is pinned or essential */
|
|
&:is([soundplaying], [muted], [activemedia-blocked]):not(
|
|
[zen-essential],
|
|
[pinned]
|
|
) {
|
|
transform: translate(-40%, 46%) scale(var(--bmb-sound-icon-scale)) !important;
|
|
margin-right: 12px !important;
|
|
margin-left: 4px !important;
|
|
}
|
|
|
|
&:not([pinned]) {
|
|
margin-left: 0px !important;
|
|
}
|
|
}
|
|
}
|
|
|
|
/* ================== Collapsed tabs ================== */
|
|
#navigator-toolbox:not([zen-sidebar-expanded]) {
|
|
.tab-icon-overlay {
|
|
transform: translate(-40%, 46%) scale(var(--bmb-sound-icon-scale)) !important;
|
|
|
|
/* Prevent sound/media button from being toggled on click when collapsed tab out of focus */
|
|
&:is([soundplaying], [muted], [activemedia-blocked]):not([selected]) {
|
|
pointer-events: none !important;
|
|
}
|
|
}
|
|
|
|
.tabbrowser-tab:is([soundplaying], [muted], [activemedia-blocked])
|
|
.tab-icon-image {
|
|
display: none !important;
|
|
}
|
|
}
|