diff --git a/apps/web/src/styles.scss b/apps/web/src/styles.scss index 5c9724c0a..f6c6cd73a 100644 --- a/apps/web/src/styles.scss +++ b/apps/web/src/styles.scss @@ -27,6 +27,40 @@ // ─── Shared Components ──────────────────────────────────────────────────────── +// Always-visible themed scrollbar. Apply to scroll containers that should +// reserve gutter and not rely on macOS overlay scrollbars (which auto-fade). +.app-scrollbar { + scrollbar-gutter: stable; + scrollbar-width: thin; + scrollbar-color: color-mix(in srgb, var(--app-muted-color) 55%, transparent) + transparent; + + &::-webkit-scrollbar { + width: 8px; + height: 8px; + } + + &::-webkit-scrollbar-track { + background: transparent; + } + + &::-webkit-scrollbar-thumb { + background-color: color-mix( + in srgb, + var(--app-muted-color) 55%, + transparent + ); + border-radius: 999px; + border: 2px solid transparent; + background-clip: content-box; + + &:hover { + background-color: var(--app-muted-color); + background-clip: content-box; + } + } +} + app-root.macos-platform .current-playlist { padding-top: 30px; } diff --git a/libs/ui/components/src/lib/channel-list-container/all-channels-view/all-channels-view.component.html b/libs/ui/components/src/lib/channel-list-container/all-channels-view/all-channels-view.component.html index 91c49a695..71820f84e 100644 --- a/libs/ui/components/src/lib/channel-list-container/all-channels-view/all-channels-view.component.html +++ b/libs/ui/components/src/lib/channel-list-container/all-channels-view/all-channels-view.component.html @@ -12,7 +12,7 @@ } @else { +
@if (items.length > 0) { @for (program of items; track $index) { @if (!canActivateProgram(program)) { diff --git a/libs/ui/epg/src/lib/epg-list/epg-list.component.scss b/libs/ui/epg/src/lib/epg-list/epg-list.component.scss index 25a9efde1..35ed5805c 100644 --- a/libs/ui/epg/src/lib/epg-list/epg-list.component.scss +++ b/libs/ui/epg/src/lib/epg-list/epg-list.component.scss @@ -53,35 +53,6 @@ display: flex; flex-direction: column; gap: 0; - scrollbar-gutter: stable; - scrollbar-width: thin; - scrollbar-color: color-mix(in srgb, var(--app-muted-color) 55%, transparent) - transparent; - - &::-webkit-scrollbar { - width: 8px; - height: 8px; - } - - &::-webkit-scrollbar-track { - background: transparent; - } - - &::-webkit-scrollbar-thumb { - background-color: color-mix( - in srgb, - var(--app-muted-color) 55%, - transparent - ); - border-radius: 999px; - border: 2px solid transparent; - background-clip: content-box; - - &:hover { - background-color: var(--app-muted-color); - background-clip: content-box; - } - } } .program-item {