/* Lume Player 0.23.7 — palette from the shipped Roku 1.5.3 SceneGraph skins.
   Geometry, navigation, media transport and the native video aperture stay in app.css.
   Shade PNGs are byte-identical to the Roku assets. */
:root {
    --lume-background: #0d0d0d;
    --lume-white: #ffffff;
    --lume-muted: #b7b7b7;
    --lume-gold: #efbd50;
}
#app-shell, #app-shell.entry-shell { background: var(--lume-background); }
#movie-details { background: var(--lume-background); color: var(--lume-white); }
/* Preserve the alpha opening that exposes the native AVPlay plane. */
#app-shell.preview-active { background: url('../assets/roku-theme/live-shade.png') 0 0 / 100% 100% no-repeat; }
#app-shell.preview-active .live-preview.playing { background: transparent; }
#side-navigation, #side-navigation:focus-within {
    background: url('../assets/roku-theme/rail-shade.png') 0 0 / 100% 100% no-repeat;
    box-shadow: none;
}
#side-navigation .rail-button, #side-navigation .rail-button.selected { background: transparent; }
#side-navigation:focus-within .rail-button.selected,
#side-navigation:focus-within .rail-button:focus { background: rgba(54,54,54,.862745); }
#side-navigation .rail-label { color: #e0e0e0; }
#side-navigation .rail-button .nav-icon { color: #e6e6e6; }
#side-navigation .rail-button.selected .nav-icon,
#side-navigation .rail-button:focus .nav-icon { color: var(--lume-gold); }
#side-navigation .rail-button:focus .rail-label,
#side-navigation .rail-button.selected .rail-label { color: var(--lume-white); }

/* Exact hero/detail fades from Roku, with black rather than gray tint. */
.home-shade, .series-shade {
    height: 100vh;
    background: url('../assets/roku-theme/home-bottom-shade.png') left bottom / 100% 66.666667% no-repeat,
                url('../assets/roku-theme/hero-shade.png') left top / 100% 100% no-repeat;
}
.home-backdrop, .series-backdrop { height: 100vh; }
.detail-shade { background: url('../assets/roku-theme/detail-shade.png') 0 0 / 100% 100% no-repeat; }
#detail-backdrop { opacity: 1; }
.home-expiry { background: #161616dd; border-color: transparent; }
.home-expiry .home-list-expiry > span,
.home-expiry .home-app-expiry > span { color: #dddddd; }
.home-expiry strong { color: #dddddd; }
.home-meta { color: #e1d3ad; }
.home-plot, .series-meta, .series-synopsis { color: #dddddd; }
.content-hero { background: var(--lume-background); }
.media-loading { background: var(--lume-background); }
.media-loading p { color: var(--lume-white); }
.media-loading-track { background: #555555; }

/* Skins: button-secondary, button-selected, button-focus, card/poster-focus. */
button { background: rgba(34,34,34,.862745); color: var(--lume-white); }
button.selected { background: rgba(54,54,54,.862745); color: var(--lume-white); }
button:focus { background: #323232; border-color: var(--lume-gold); box-shadow: none; }
button.primary, button.primary:focus { background: var(--lume-gold); color: #252525; }
button.primary:focus { background: #ffd779; border-color: #fff0c6; color: #17130a; }
.card, .home-card, .media-card, .collection-card, .episode-card { background: transparent; }
.card:focus, .home-card:focus, .media-card:focus, .collection-card:focus, .episode-card:focus {
    background: transparent; border-color: var(--lume-gold); box-shadow: none;
}
.poster, .poster-tone-1, .poster-tone-2, .poster-tone-3, .poster-tone-4,
.home-poster, .episode-art { background: transparent; }
.collection-poster { background: #222222; }
.poster img { background: transparent; }
.poster::before { border-color: transparent; }
.catalog-search, .catalog-search:focus { background: #1c1c1c; color: var(--lume-white); }
.catalog-search:focus { border-color: var(--lume-gold); }
.live-group, .favorite-category, .series-tab, .series-favorite { background: transparent; }
.live-group.selected { background: rgba(54,54,54,.470588); color: var(--lume-white); }
.live-group:focus, .live-group.selected:focus, .favorite-category:focus {
    background: rgba(50,50,50,.901961); color: var(--lume-white); border-color: var(--lume-gold);
}
.live-channel-row.current { background: transparent; color: var(--lume-white); }
.live-channel-row:focus, .live-channel-row.current:focus {
    background: rgba(55,55,55,.431373); border-color: var(--lume-gold); color: var(--lume-white);
}
.live-info .epg-entry { background: rgba(17,17,17,.686275); }
.live-info .epg-entry.current { background: rgba(190,190,190,.294118); }
.live-info .epg-entry:focus { background: rgba(190,190,190,.294118); border-color: var(--lume-gold); }
.epg-time, .live-info .epg-empty { color: var(--lume-muted); }
.epg-now, .channel-heart, .episode-play { color: var(--lume-gold); }
.series-season { background: rgba(34,34,34,.431373); color: var(--lume-white); }
.series-season.selected, .series-season:focus { background: var(--lume-gold); color: #252525; border-color: var(--lume-gold); }
.episode-plot, .episode-duration, .series-information, .resume-time { color: var(--lume-muted); }
.resume-track { background: #454545; }
.resume-track span, .episode-progress > span { background: var(--lume-gold); }

/* login-frame, login-field, login-field-focus, login-submit, category skins. */
.entry-card { background: rgba(17,17,17,.745098); border-color: rgba(46,46,46,.588235); }
.entry-layout, .entry-form, .entry-mac { background: transparent; }
.entry-tab { background: transparent; border-color: transparent; color: var(--lume-white); }
.entry-tab.selected { background: rgba(54,54,54,.470588); border-color: transparent; color: var(--lume-white); }
.entry-tab:focus { background: rgba(50,50,50,.901961); border-color: var(--lume-gold); color: var(--lume-white); }
.entry-form .field { background: #1a1a1a; border-color: #3d3d3d; }
.entry-form .field span { color: #a6a6a6; }
.entry-form .field strong { color: #c2c2c2; background: transparent; }
.entry-form .field:focus, .entry-form .field.editing { background: #21201c; border-color: #c9ac67; }
.entry-form .field:focus > span, .entry-form .field.editing > span { color: #d0b779; }
.entry-form .field:focus strong, .entry-form .field.editing strong { background: transparent; }
.entry-help { color: #a9a9a9; }
.entry-mac .entry-identity { color: var(--lume-white); }
.entry-disclaimer { color: #aaaaaa; }
button.entry-connect { background: #cda758; color: #211b10; border-color: transparent; }
button.entry-connect:focus { background: #e1be71; border-color: #efd7a2; color: #211b10; box-shadow: none; }

/* Full-page settings/playlists keep the same base as the Roku scene. */
#modal { background: #0d0d0dfa; }
#modal.settings-overlay, #modal.playlists-screen { background: var(--lume-background); }
#modal.settings-overlay .setting-tile { background: #111111; border-color: #282828; color: var(--lume-white); }
#modal.settings-overlay .setting-tile:focus { background: #27231b; border-color: #e9c779; }
#modal.settings-overlay .setting-tile > .nav-icon { color: #e6e6e6; }
#modal.settings-overlay .setting-tile:focus > .nav-icon { color: var(--lume-gold); }
.setting-copy small, .settings-footer, .settings-description,
#modal.settings-overlay .settings-description, .image-settings h2,
.image-settings > .hint { color: var(--lume-muted); }
#modal.settings-overlay .parental-settings, .pin-dialog, .epg-dialog-card,
.resume-dialog, .exit-dialog, .favorites-empty {
    background: #191919f5; border-color: #3c3c3caa;
}
#modal.settings-overlay .pin-field { background: #1c1c1c; border-color: #4b4b4bc8; }
#modal.settings-overlay .pin-field:focus { background: #363636be; border-color: var(--lume-gold); }
.hidden-category[aria-pressed="true"] { background: #303030; color: var(--lume-gold); }
.image-start-option, .image-info-option { border-bottom-color: #282828; }
.image-start-option.selected strong, .image-option-check { color: var(--lume-gold); }
.image-start-option:focus, .image-info-option:focus { background: #27231b; border-color: #e9c779; }
.playlist-choice { background: #111111f0; border-color: #46464696; }
.playlist-choice:focus { background: #363636f5; border-color: var(--lume-gold); }
.playlist-current .playlist-choice-status { background: var(--lume-gold); color: #111111; }
#modal.playlists-screen h1 { color: var(--lume-white); }
.playlist-choice small, .playlists-footer, .playlists-access .hint, .playlist-choice-status { color: var(--lume-muted); }
.playlists-url, .playlists-license { color: var(--lume-gold); }
.playlists-access { border-left-color: #b7b7b738; }
#modal.resume-overlay, #modal.exit-overlay, #modal.pin-overlay, #modal.epg-dialog { background: #000000a0; }
.pin-slot { background: #111111; border-color: #282828; }
.pin-slot.next, .pin-slot.filled { border-color: var(--lume-gold); }
.pin-slot.filled { background: #27231b; }
.pin-subtitle, .pin-cancel, .pin-keypad .pin-utility, .epg-dialog-time { color: var(--lume-muted); }
.pin-confirm { background: var(--lume-gold); color: #17130a; }
.pin-dialog button:focus { background: var(--lume-gold); border-color: #f3d590; color: #1c1c1c; box-shadow: none; }

/* credentialKeyboard and keyboard-idle/focus from Roku. */
#modal.keyboard-overlay, #modal.keyboard-overlay:not(.search-keyboard) { background: #171717; border-color: #4b4434; }
.keyboard-overlay .keyboard-grid button, .keyboard-overlay:not(.search-keyboard) .keyboard-grid button,
.keyboard-overlay .actions button, .keyboard-overlay:not(.search-keyboard) .actions button {
    background: #1e1e1e; border-color: #343434; color: var(--lume-white);
}
.keyboard-overlay .actions .primary, .keyboard-overlay:not(.search-keyboard) .actions .primary { background: #cda758; color: #211b10; }
.keyboard-overlay button:focus, .keyboard-overlay:not(.search-keyboard) button:focus {
    background: var(--lume-gold); border-color: #f3d590; color: #1c1c1c; box-shadow: none;
}
.keyboard-display { background: #1d1d1d; border-color: #393939; color: #eeeeee; }
.search-keyboard .hint { color: var(--lume-muted); }

/* The player uses the same shipped Roku HUD shades, including alpha values. */
.playback-top { background: url('../assets/roku-theme/player-top-shade.png') 0 0 / 100% 100% no-repeat; }
.playback-bottom { background: url('../assets/roku-theme/player-bottom-shade.png') 0 0 / 100% 100% no-repeat; }
#playback.live-playback .playback-bottom { background: url('../assets/roku-theme/live-hud-shade.png') 0 0 / 100% 100% no-repeat; }
#quick-channels, #playback.episodes-open #quick-channels { background: linear-gradient(90deg, #000000b8, #000000f7 12%); }
.quick-channel-row.current, .quick-episode-row.current { background: rgba(54,54,54,.470588); color: var(--lume-white); }
.quick-channel-row:focus, .quick-episode-row:focus { background: rgba(55,55,55,.431373); border-color: var(--lume-gold); }
.quick-episode-copy small, .quick-channel-number { color: var(--lume-muted); }
#live-exit, #stop-playback { background: #2222226e; color: var(--lume-white); }
#live-exit:focus, #stop-playback:focus { background: var(--lume-gold); border-color: var(--lume-gold); color: #252525; box-shadow: none; }
#seek-feedback { background: #111111dc; color: var(--lume-gold); }

html, body { color: var(--lume-white); }
.field-secret > .password-eye { color: #e6e6e6; background: transparent; }
.field-secret > .password-eye:focus { color: var(--lume-gold); background: transparent; }
/* Roku's keyboard is a full-width rectangle with no exposed native-plane corners. */
#modal.keyboard-overlay, #modal.keyboard-overlay:not(.search-keyboard) { border-radius: 0; box-shadow: none; }
