Files
iptvnator/libs/ui/playback/src/lib/web-player-view/web-player-view.component.scss
T
4gray 6305dcf00e Add browser playback diagnostics and MPV/VLC fallback (#921)
* feat(playback): add codec diagnostics fallback
Entire-Checkpoint: f957cd9849e0

* fix(playback): address diagnostics review feedback
Entire-Checkpoint: f957cd9849e0

* fix(playback): ignore recoverable hls diagnostics
Entire-Checkpoint: f957cd9849e0

* fix(playback): polish diagnostic fallback banner
Entire-Checkpoint: f957cd9849e0

* fix(xtream): preserve live category search scope
Entire-Checkpoint: f957cd9849e0
2026-05-10 17:27:54 +02:00

95 lines
1.9 KiB
SCSS

:host {
display: block;
height: 100%;
position: relative;
}
app-art-player,
app-embedded-mpv-player,
app-vjs-player,
app-html-video-player {
display: block;
height: 100%;
}
.web-player-diagnostic {
position: absolute;
inset-inline: 16px;
bottom: var(--web-player-diagnostic-bottom, 16px);
z-index: 5;
display: grid;
grid-template-areas:
'icon body'
'icon actions';
grid-template-columns: auto minmax(0, 1fr);
gap: 8px 12px;
align-items: start;
padding: 14px 16px;
border: 1px solid color-mix(in srgb, var(--mat-sys-error) 36%, transparent);
border-radius: 8px;
background: color-mix(
in srgb,
var(--mat-sys-error-container) 92%,
transparent
);
color: var(--mat-sys-on-error-container);
box-shadow: 0 16px 42px rgb(0 0 0 / 28%);
}
.web-player-diagnostic__icon {
grid-area: icon;
display: inline-flex;
align-items: center;
justify-content: center;
padding-top: 2px;
}
.web-player-diagnostic__body {
grid-area: body;
max-width: 640px;
}
.web-player-diagnostic__title {
font-size: 0.92rem;
font-weight: 650;
line-height: 1.2;
}
.web-player-diagnostic__description,
.web-player-diagnostic__meta {
margin-top: 3px;
font-size: 0.82rem;
line-height: 1.3;
}
.web-player-diagnostic__meta {
opacity: 0.78;
overflow-wrap: anywhere;
}
.web-player-diagnostic__actions {
grid-area: actions;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
gap: 8px;
}
.web-player-diagnostic__actions button {
white-space: nowrap;
}
@media (max-width: 760px) {
.web-player-diagnostic {
inset-inline: 8px;
bottom: var(--web-player-diagnostic-bottom, 8px);
grid-template-areas:
'icon body'
'actions actions';
}
.web-player-diagnostic__actions {
justify-content: flex-start;
}
}