UNPKG

@samvera/ramp

Version:

Ramp (React Avalon Media Player), React component library for rendering a media player for a IIIF 3.0 spec manifest

1,744 lines (1,624 loc) 44 kB
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--error-message__alert { display: flex; justify-content: space-between; padding: 1rem; background-color: rgba(224, 16, 26, 0.2); border-radius: 0.25rem; } .ramp--error-message__message { padding: 12px 20px; } .ramp--error-message__reset-button { background-color: #2a5459; color: white !important; padding: 12px 20px; border: none; border-radius: 4px; cursor: pointer; font-size: medium; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); [class*=ramp--] { font-family: "Open Sans", sans-serif; color: #333333; font-size: 16px; } /** Begin - Overrides for VideoJS related styling **/ .vjs-marker { /* to ignore/pass-through click-, tap-, scroll- and hover events https://stackoverflow.com/questions/3680429/click-through-div-to-underlying-elements?answertab=active#tab-top */ pointer-events: none; } .vjs-marker:hover { transform: scale(1, 1) !important; } .vjs-menu li { font-size: 1em; } .vjs-menu li.vjs-selected { background-color: #80a590; } .vjs-menu li.vjs-selected:hover { background-color: #bbbbbb; } .video-js .vjs-control-bar { /* Increase the control-bar icons/text size */ font-size: 120%; } /* Control bar styling for mobile/tablet devices */ .vjs-mobile-visible { opacity: 1 !important; display: inline; z-index: 50; } /* Make VideoJS control bar buttons smaller */ .video-js .vjs-volume-panel .vjs-volume-panel-vertical, .video-js .vjs-control { width: 2.5rem !important; } .video-js .vjs-control-bar { /* Ensures text scales with zoom */ -webkit-text-size-adjust: 100%; } /* Center the CC button in mobile devices */ .vjs-subs-caps-button > button { padding: 0; } .video-js .vjs-progress-control:hover .vjs-play-progress:after { display: none; } /* Show poster image when playback ends */ .video-js.vjs-ended .vjs-poster { display: block; } .video-js .vjs-current-time { display: block; } /* Put playhead on top of markers */ .video-js .vjs-play-progress:before { z-index: 101; } /* time-control elements */ .video-js .vjs-time-control, .video-js .vjs-time-control .vjs-duration { min-width: 0.5rem; padding: 0 0.25rem; width: auto !important; } .vjs-time-divider { display: block; } .vjs-duration { display: block !important; } .vjs-playback-rate-value { line-height: 2.25 !important; font-size: 1.25em !important; } /* big-play button */ .video-js .vjs-big-play-button { border-radius: 50%; width: 50px; scale: 2; } .vjs-disabled { pointer-events: none; } /* Reduce media height to prevent media overlapping player boundaries */ .video-js .vjs-tech { height: 99.75% !important; } /* captions button selection */ .is-mobile .captions-on { border-bottom: 0.3rem ridge #80a590 !important; } .captions-on { border-bottom: 0.35rem ridge #80a590 !important; } /* display text track cues above the controls when controls are visible */ .video-js.vjs-user-active .vjs-text-track-display .vjs-text-track-cue, .video-js.vjs-user-inactive.vjs-has-started.vjs-paused .vjs-text-track-display .vjs-text-track-cue { inset: 18.75em 0 !important; transform: translateY(-100%); } /** End - Overrides for VideoJS related styling **/ ::-webkit-scrollbar { -webkit-appearance: none; width: 8px; } ::-webkit-scrollbar-thumb { border-radius: 5px; background-color: rgba(0, 0, 0, 0.5); -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5); } /* Loading spinner */ .lds-spinner { display: inline-block; position: relative; width: 80px; height: 30rem; left: 43%; top: 45%; } .lds-spinner div { transform-origin: 40px 40px; animation: lds-spinner 1.2s linear infinite; } .lds-spinner div:after { content: " "; display: block; position: absolute; top: 3px; left: 37px; width: 6px; height: 18px; border-radius: 20%; background: #2a5459; } .lds-spinner div:nth-child(1) { transform: rotate(0deg); animation-delay: -1.1s; } .lds-spinner div:nth-child(2) { transform: rotate(30deg); animation-delay: -1s; } .lds-spinner div:nth-child(3) { transform: rotate(60deg); animation-delay: -0.9s; } .lds-spinner div:nth-child(4) { transform: rotate(90deg); animation-delay: -0.8s; } .lds-spinner div:nth-child(5) { transform: rotate(120deg); animation-delay: -0.7s; } .lds-spinner div:nth-child(6) { transform: rotate(150deg); animation-delay: -0.6s; } .lds-spinner div:nth-child(7) { transform: rotate(180deg); animation-delay: -0.5s; } .lds-spinner div:nth-child(8) { transform: rotate(210deg); animation-delay: -0.4s; } .lds-spinner div:nth-child(9) { transform: rotate(240deg); animation-delay: -0.3s; } .lds-spinner div:nth-child(10) { transform: rotate(270deg); animation-delay: -0.2s; } .lds-spinner div:nth-child(11) { transform: rotate(300deg); animation-delay: -0.1s; } .lds-spinner div:nth-child(12) { transform: rotate(330deg); animation-delay: 0s; } @keyframes lds-spinner { 0% { opacity: 1; } 100% { opacity: 0; } } .vjs-marker { position: absolute; left: 0; bottom: 0em; opacity: 1; height: 100%; transition: opacity 0.2s ease; -webkit-transition: opacity 0.2s ease; -moz-transition: opacity 0.2s ease; z-index: 100; } .vjs-marker:hover { cursor: pointer; -webkit-transform: scale(1.3, 1.3); -moz-transform: scale(1.3, 1.3); -o-transform: scale(1.3, 1.3); -ms-transform: scale(1.3, 1.3); transform: scale(1.3, 1.3); } .vjs-tip { visibility: hidden; display: block; opacity: 0.8; padding: 5px; font-size: 10px; position: absolute; bottom: 14px; z-index: 100000; } .vjs-tip .vjs-tip-arrow { background: url(data:image/gif;base64,R0lGODlhCQAJAIABAAAAAAAAACH5BAEAAAEALAAAAAAJAAkAAAIRjAOnwIrcDJxvwkplPtchVQAAOw==) no-repeat top left; bottom: 0; left: 50%; margin-left: -4px; background-position: bottom left; position: absolute; width: 9px; height: 5px; } .vjs-tip .vjs-tip-inner { border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; padding: 5px 8px 4px 8px; background-color: black; color: white; max-width: 200px; text-align: center; } .vjs-break-overlay { visibility: hidden; position: absolute; z-index: 100000; top: 0; } .vjs-break-overlay .vjs-break-overlay-text { padding: 9px; text-align: center; } .vjs-quality-selector .vjs-menu-button{margin:0;padding:0;height:100%;width:100%}.vjs-quality-selector .vjs-icon-placeholder{font-family:"VideoJS";font-weight:normal;font-style:normal}.video-js:not(.vjs-v8) .vjs-quality-selector .vjs-icon-placeholder::before{content:""}.vjs-v8 .vjs-quality-selector .vjs-icon-placeholder::before{content:""}.vjs-quality-changing .vjs-big-play-button{display:none}.vjs-quality-changing .vjs-control-bar{display:flex;visibility:visible;opacity:1} @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--media-player_inaccessible-message-content { width: 50%; color: #f2f2f2; } .ramp--media-player_inaccessible-message-content a { color: #80a590; } .ramp--media-player_inaccessible-message-buttons { display: flex; gap: 0.5em; } .ramp--media-player_inaccessible-message-buttons button { border: 1px solid; color: white; background-color: #2a5459; padding: 0.5em; border-radius: 0.3em; cursor: pointer; font-size: medium; display: flex; align-items: center; gap: 0.25em; } .ramp--media-player_inaccessible-message-timer { color: inherit; margin: 1em 0; } .ramp--media-player_inaccessible-message-timer.hidden { visibility: hidden; } /* Adapted from: https://github.com/videojs/themes/blob/master/city/index.css */ /* Minimum height and width for audio player */ .vjs-theme-ramp.vjs-audio-only-mode { min-width: 490px; min-height: 40px; } .vjs-theme-ramp.vjs-audio-only-mode.vjs-device-iphone, .vjs-theme-ramp.vjs-audio-only-mode.vjs-device-android { min-width: 380px; min-height: 40px; } /* Minimum height and width for video player */ .vjs-theme-ramp { min-width: 490px; min-height: 270px; } .vjs-theme-ramp.vjs-device-iphone, .vjs-theme-ramp.vjs-device-android { min-width: 380px; min-height: 210px; } .vjs-theme-ramp .vjs-control-bar { height: 5em; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.75)); display: flex; padding-top: 2em; left: 1em; } .vjs-theme-ramp .vjs-control-bar::before { content: ""; width: 12px; height: 100%; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.75)), linear-gradient(to left, transparent, rgba(0, 0, 0, 0)); position: absolute; left: -12px; top: 0em; } .vjs-theme-ramp .vjs-control-bar::after { content: ""; width: 12px; height: 100%; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.75)), linear-gradient(to left, transparent, rgba(0, 0, 0, 0)); position: absolute; right: -12px; top: 0em; } .vjs-theme-ramp .vjs-custom-progress-bar { position: absolute; width: 100% !important; top: 1.25em; margin: 0; } .vjs-theme-ramp .vjs-progress-control .vjs-progress-holder { position: absolute; right: 0; left: 0; width: 100%; margin: 0; top: 0.01em; } /* Spacer to separate controls */ .vjs-theme-ramp .vjs-custom-control-spacer { display: block; -webkit-box-flex: 1; -ms-flex: 1 1 auto; flex: 1 1 auto; width: 0; visibility: hidden; } /* Time controls */ .vjs-theme-ramp .vjs-control-bar .vjs-time-control { line-height: 3em; } /* Remove padding around time-divider (/) */ .vjs-theme-ramp .vjs-time-divider { padding: 0; } .vjs-theme-ramp .vjs-duration { padding-left: 0; } /* Volume controls */ .vjs-theme-ramp .vjs-volume-panel .vjs-volume-control.vjs-volume-vertical { margin-top: -0.75em; } .vjs-theme-ramp .vjs-volume-panel.vjs-volume-panel-horizontal { transition: none !important; width: 8em !important; } .vjs-theme-ramp .vjs-volume-panel.vjs-volume-panel-horizontal .vjs-volume-horizontal span.vjs-icon-placeholder { margin-top: 0.1em; } .vjs-theme-ramp.vjs-audio-only-mode .vjs-volume-panel .vjs-volume-control { opacity: 1 !important; width: 4em !important; } /* Popup-menu button controls */ .vjs-theme-ramp .vjs-menu li.vjs-menu-title { text-transform: capitalize; } .vjs-theme-ramp.vjs-workinghover .vjs-menu-button-popup:hover .vjs-menu { display: none; } .vjs-theme-ramp .vjs-menu-button-popup .vjs-menu { bottom: 0.75em; z-index: 1; } .vjs-volume-panel-vertical .vjs-volume-control { z-index: 1; } .vjs-theme-ramp .vjs-subs-caps-button .vjs-menu { left: 0.01em; } .vjs-theme-ramp.vjs-audio-only-mode .vjs-file-download .vjs-menu { left: -6.65em; } .vjs-theme-ramp .vjs-file-download .vjs-menu { left: -3.5em; } .vjs-error-display.vjs-modal-dialog .vjs-modal-dialog-content { padding: 20px 25%; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .video-js .vjs-custom-progress-bar { cursor: pointer; display: flex; align-items: center; min-width: 4em; height: 0.5em; } .video-js .vjs-custom-progress-bar:focus { text-shadow: none; box-shadow: none; } .video-js .vjs-custom-progress-bar .vjs-play-progress span svg { font-size: 1.25em; } /* Increase progress-bar and its childrens' size and maintain it for pointer hover event */ .video-js .vjs-progress-control .vjs-progress-holder, .video-js .vjs-progress-control:hover .vjs-progress-holder { font-size: 1.5em; } .video-js .vjs-progress-control .vjs-progress-holder .vjs-time-tooltip, .video-js .vjs-progress-control:hover .vjs-progress-holder .vjs-time-tooltip { font-size: 0.75em !important; } .video-js .vjs-progress-control:hover .vjs-mouse-display { width: 0; } .vjs-custom-progress-bar .vjs-play-progress span svg { height: 1em; margin-top: -0.01em; } .vjs-custom-progress-bar .vjs-play-progress .vjs-time-tooltip { display: none !important; } .vjs-custom-progress-bar .vjs-mouse-display .vjs-time-tooltip { background-color: white; color: black; } .block-stripes { position: absolute; color: white; height: 0.5em; background: repeating-linear-gradient(45deg, #333333, #333333 8px, #7e7e7e 8px, #7e7e7e 16px); } #right-block { position: relative; } .video-js .vjs-play-progress { background-color: #2a5459; } .video-js .vjs-play-progress > span > svg { z-index: 2; } .video-js .vjs-progress-holder.played-range { background: linear-gradient(90deg, #2a5459 var(--range-progress), #cfd8d3 var(--range-progress)); } /* CSS for structure track highlight markers on progress bar */ .vjs-marker.ramp--track-marker--fragment { opacity: 0.5; height: 16px; top: -0.2em; z-index: 0; } .vjs-marker.ramp--track-marker--fragment[style] { background-color: #80A590 !important; border-radius: 0 !important; } /* CSS for playlist markers on progress bar */ .vjs-marker.ramp--track-marker--playlist { font-size: small; height: 0.5em; transform: rotate(-45deg); top: 0.75em; content: ""; border-color: #fff; border-style: solid; border-width: 0.25em 0.25em 0 0; } .vjs-marker.ramp--track-marker--playlist[style] { background-color: transparent !important; border-radius: 0 !important; width: 0.5em !important; } /* CSS for search markers on progress bar */ .vjs-marker.ramp--track-marker--search { top: 0.15em; height: 6px; opacity: 0.75; transition: opacity 200ms ease-out, transform 200ms ease-out, box-shadow 200ms ease-out; box-shadow: 0 0 0px 1px rgba(255, 255, 255, 0.95), 0 0 8px 0px rgba(0, 0, 0, 0.75); pointer-events: all; transform: translate(-25%, -25%) rotate(45deg) scale(1) !important; z-index: 0; } .vjs-marker.ramp--track-marker--search[style] { background-color: #2a5459 !important; border-radius: 0 !important; width: 6px !important; } .vjs-marker.ramp--track-marker--search:hover { opacity: 1; transform: translate(-25%, -25%) rotate(45deg) scale(1.75) !important; box-shadow: 0 0 0x 2px rgba(255, 255, 255, 0.95), 0 0 8px 1px rgba(0, 0, 0, 0.75); } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .vjs-file-download { background-size: 1.25rem; background-position: 0.75rem; } .vjs-file-download .vjs-menu-title { background-color: #7e7e7e; } .vjs-file-download .vjs-menu-title:hover { background-color: #7e7e7e; } .vjs-menu-content.file-download-menu { position: absolute; background-color: rgba(43, 51, 63, 0.7); min-width: max-content; box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); z-index: 1; right: -100%; bottom: 100%; } .vjs-menu-content.file-download-menu .menu-header { background-color: #7e7e7e; } .vjs-menu-content a { color: white; padding: 0 1.5rem 0 0.5rem; text-decoration: none; } .vjs-menu-item-text { vertical-align: top; display: inline-block; } .vjs-menu-content li:hover { background-color: rgba(115, 133, 159, 0.5); } .vjs-previous-button, .vjs-next-button { cursor: pointer; padding: 1.125em 0; } .video-js .vjs-title-bar { pointer-events: all; } .video-js .vjs-title-bar .vjs-title-link { color: white; font-size: 150%; text-decoration: none; } .video-js .vjs-title-bar .vjs-title-link:hover { text-decoration: underline; } .video-js.vjs-playing .vjs-title-bar { display: none; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .vjs-track-scrubber { cursor: pointer; } .vjs-track-scrubber .vjs-icon-zoom { height: 1.25em; width: 1.25em; scale: 1.15; } .vjs-track-scrubber .vjs-icon-zoom:hover { filter: drop-shadow(0 0 0.25em #fff); } .vjs-track-scrubber-container { background: #696667; color: white; padding: 0pt 10pt 10pt 10pt; border: 1pt solid #353536; list-style-type: none; margin: 0; padding: 0; bottom: 0; left: 0; height: 36px; width: 99.725%; display: flex; align-items: center; justify-content: space-between; } @media (max-width: 680px) { .vjs-track-scrubber-container { width: 99.55%; } } @media (min-width: 1081px) { .vjs-track-scrubber-container { width: 99.825%; } } .vjs-track-scrubber-container.hidden { display: none; } .vjs-track-scrubber-container .vjs-track-scrubber { cursor: pointer; height: 20px; width: 100%; background: linear-gradient(90deg, #80a590 var(--range-scrubber), #333333 var(--range-scrubber)); } .vjs-track-scrubber-container .vjs-time { color: #fff; width: 4rem; padding: 2px 5px; text-align: center; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; line-height: 1.5rem; font-size: 0.75rem; } .vjs-track-scrubber-container .vjs-time p { color: #fff; font-size: 11px; line-height: 12px; display: block; margin: 6px 2px 0 0px; width: auto; } .vjs-track-scrubber-container .tooltiptext { visibility: hidden; width: 5em; background-color: #7e7e7e; color: #fff; text-align: center; border-radius: 6px; padding: 5px 5px; bottom: 2.5em; position: relative; z-index: 1000; font-size: 0.75rem; } .vjs-track-scrubber-container:hover .tooltiptext { visibility: visible; } .vjs-track-scrubber-container .tooltiptext::after { content: ""; position: absolute; top: 100%; left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: #7e7e7e transparent transparent transparent; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--structured-nav.display { display: flow-root; } .ramp--structured-nav.display .ramp--structured-nav__sections { margin-top: 1em; display: flex; justify-content: space-between; padding: 0.5em; background-color: #f2f2f2; border: 1px solid #d3d3d3; border-radius: 0.25em 0.25em 0 0; border-bottom: none; } .ramp--structured-nav.display .ramp--structured-nav__sections .ramp--structured-nav__sections-text { font-weight: bold; font-size: 20px; } .ramp--structured-nav.display .ramp--structured-nav__sections .ramp--structured-nav__sections-text.hidden { visibility: hidden; } .ramp--structured-nav.display .ramp--structured-nav__sections .ramp--structured-nav__collapse-all-btn { background-color: #2a5459; color: #f2f2f2; padding: 0.5em 0.75em; border: none; border-radius: 0.3em; cursor: pointer; align-items: flex-end; font-size: 13px; } .ramp--structured-nav.display .ramp--structured-nav__sections .ramp--structured-nav__collapse-all-btn .arrow { border: solid #f2f2f2; border-width: 0 0.1em 0.1em 0; display: inline-block; padding: 0.25em; margin-left: 0.5em; } .ramp--structured-nav.display .ramp--structured-nav__sections .ramp--structured-nav__collapse-all-btn .up { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); transition: transform 0.35s ease-in-out; } .ramp--structured-nav.display .ramp--structured-nav__sections .ramp--structured-nav__collapse-all-btn .down { transform: rotate(45deg); -webkit-transform: rotate(45deg); transition: transform 0.35s ease-in-out; } .ramp--structured-nav.display .ramp--structured-nav__border { margin-top: 0 !important; border-radius: 0 0 0.25em 0.25em; width: 100%; } .ramp--structured-nav__sr-only { position: absolute; left: -9999px; } .ramp--structured-nav__content { margin-top: 0; overflow-y: auto; } .ramp--structured-nav__content a { color: #2a5459; transition: 0.25s; text-decoration: none; display: inline-flex; gap: 0.1em; } .ramp--structured-nav__content a:hover, .ramp--structured-nav__content a:focus { color: #333333; } .ramp--structured-nav__content p { padding-top: 1em; color: #333333; } .ramp--structured-nav__content span { overflow-wrap: anywhere; } .ramp--structured-nav__content .ramp--structured-nav__section { border-top: 1px solid #d3d3d3; } .ramp--structured-nav__content .ramp--structured-nav__section:first-child { border-top: none; } .ramp--structured-nav__content-with_root > ul.ramp--structured-nav__tree > li > ul { padding: 0; } .ramp--structured-nav__content-with_root > ul.ramp--structured-nav__tree > li > ul > li { padding: 0 0 0.5rem 0; } .ramp--structured-nav__content-with_root > ul.ramp--structured-nav__tree > li > ul > li:last-child { padding: 0 0 0 0; } .ramp--structured-nav__content.playlist-items { border-top: 1px solid #ddd; border-radius: 0.25rem; padding: 1em 1.5em; } .ramp--structured-nav__content.playlist-items a { display: inline-block; } .ramp--structured-nav__border { margin-top: 20px; box-sizing: border-box; border: 1px solid #ddd; border-top: none; border-radius: 0.25rem; display: flex; flex-direction: column; max-height: 40vh; position: relative; } .ramp--structured-nav__border > span { display: none; } .ramp--structured-nav__border > span.scrollable { background: #bbbbbb; text-align: center; display: block; position: absolute; color: black; font-size: 13px; width: fit-content; bottom: 0; left: 35%; border: 1px solid #ddd; border-radius: 0.25rem 0.25rem 0 0; border-bottom: none; padding: 0.25em; } @media (min-width: 585px) and (max-width: 768px) { .ramp--structured-nav__border > span.scrollable { left: 25%; } } ul.ramp--structured-nav__tree { list-style: none; padding: 0 0 0 0; margin: 0px; font-size: medium; } ul.ramp--structured-nav__tree li.section-tree-item { padding: 0; border-top: 1px solid #d3d3d3; } ul.ramp--structured-nav__tree li:has(.ramp--structured-nav__item-link) { padding-bottom: 0; } ul.ramp--structured-nav__tree li { display: block; padding: 0 0 0.5rem 1em; font-weight: normal; } ul.ramp--structured-nav__tree li .structure-item-locked { vertical-align: middle; } ul.ramp--structured-nav__tree li .ramp--structured-nav__item-link { line-height: 1.65em; } ul.ramp--structured-nav__tree li .ramp--structured-nav__item-link .structured-nav__item-label { margin-left: 0.2em; } ul.ramp--structured-nav__tree li ul { padding-left: 0.5em; } ul.ramp--structured-nav__tree li ul > li { padding: 0 0 0.5rem 1rem; } ul.ramp--structured-nav__tree li ul > li:last-child { padding: 0 0 0 1rem; } ul.ramp--structured-nav__tree li.active > a { color: #000; } ul.ramp--structured-nav__tree li.active { font-weight: bold !important; } ul.ramp--structured-nav__tree li.active > .tracker { width: 0; height: 0; border-top: 3px solid transparent; border-left: 7px solid #333333; border-bottom: 3px solid transparent; display: inline-block; margin-left: -1rem; margin-right: 0.5rem; margin-top: -0.5rem; } ul.ramp--structured-nav__tree svg.structure-item-locked { margin-right: 0.5rem; } .ramp--structured-nav__section.active button { font-weight: bold; } .ramp--structured-nav__section { background-color: transparent; border-top: 1px solid #d3d3d3; font-size: 20px; font-weight: 400; } .ramp--structured-nav__section.ramp--structured-nav__section-head-buttons { display: grid; grid-template-columns: 1fr auto; } .ramp--structured-nav__section.ramp--structured-nav__section-head-buttons span.ramp--structured-nav__section-title { background: #f2f2f2; } .ramp--structured-nav__section .not-clickable { pointer-events: none; } .ramp--structured-nav__section button { border: none; cursor: pointer; text-align: left; width: 100%; padding: 1rem; font-weight: inherit; background: #f2f2f2; } .ramp--structured-nav__section button:hover, .ramp--structured-nav__section button:not(.not-clickable):focus { background-color: #cfd8d3; } .ramp--structured-nav__section button span { padding-left: 0; font-size: 20px; } .ramp--structured-nav__section span.collapse-expand-button { padding: 1em; background: #f2f2f2; cursor: pointer; } .ramp--structured-nav__section span.collapse-expand-button .arrow { border: solid black; border-width: 0 0.1em 0.1em 0; display: inline-block; padding: 0.215em; } .ramp--structured-nav__section span.collapse-expand-button .up { transform: rotate(-135deg); -webkit-transform: rotate(-135deg); transition: transform 0.35s ease-in-out; } .ramp--structured-nav__section span.collapse-expand-button .down { transform: rotate(45deg); -webkit-transform: rotate(45deg); transition: transform 0.35s ease-in-out; } .ramp--structured-nav__section span.collapse-expand-button:hover { background-color: #f2f2f2; } .ramp--structured-nav__section .ramp--structured-nav__section-title { display: flex; gap: 0.2em; } .ramp--structured-nav__section .ramp--structured-nav__section-title span.ramp--structured-nav__section-label { overflow-wrap: anywhere; margin-left: 0.2em; } .ramp--structured-nav__section .ramp--structured-nav__section-title span.ramp--structured-nav__section-duration { border: 1px solid #7e7e7e; border-radius: 999px; color: #000; font-size: 12px; letter-spacing: 0.02rem; line-height: 1.6; padding: 0 0.5rem; margin-left: 0.5rem; text-wrap: nowrap; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--transcript_nav { container: transcript_nav/inline-size; } .ramp--transcript_menu { position: sticky; top: 0; margin-bottom: 20px; background-color: #f2f2f2; border: 1px solid #d3d3d3; padding: 0.5rem; border-color: #d3d3d3; border-radius: 3px; row-gap: 0.5em; display: flex; flex-direction: column; } .ramp--transcript_selector { display: flex; gap: 0.5rem; } .ramp--transcript_menu-info { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: space-between; } .ramp--transcript_search_input input, .ramp--transcript_selector select { box-sizing: border-box; width: 100%; font-family: "Open Sans", sans-serif; max-height: 2rem; min-height: 2rem; } .ramp--transcript_selector select { padding: 0.25rem; } .ramp--transcript_search_input { display: flex; flex-direction: row; gap: 0.5rem; } .ramp--transcript_search_input input { padding: 0.25rem 0.4rem; flex: 1 1 auto; } .ramp--transcript_search_clear { flex: 0 1 50%; } .ramp--transcript_search_clear[disabled], .ramp--transcript_search_clear:disabled { display: none; } .ramp--transcript_search_clear span::after { content: "Clear"; } .ramp--transcript_search_icon { flex: 0 1 50%; } .ramp--transcript_search_icon[disabled], .ramp--transcript_search_icon:disabled { display: none; } .ramp--transcript_machine_generated { margin: 0; line-height: 1.25em; } .ramp--transcript_auto_scroll_check { display: flex; align-items: center; justify-content: flex-end; line-height: 1.25em; } .ramp--transcript_auto_scroll_check input { accent-color: #2a5459; } .ramp--transcript_auto_scroll_check label { margin-left: 0.25em; line-height: 1.25em; } .ramp--transcript_auto_scroll_check label { margin-left: 0.25em; line-height: 1.25em; } .ramp--transcript_auto_scroll_check:has(input:disabled), .ramp--transcript_auto_scroll_check:has(input:disabled) input { cursor: not-allowed; } .ramp--transcript_auto_scroll_check:has(input:disabled) label { cursor: not-allowed; color: #bbbbbb; } .ramp--transcript_menu_button { margin: 0; flex: 1 1 auto; max-height: 2rem; min-height: 2rem; color: #f2f2f2; border-radius: 0.15rem; text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.3); border: 1px solid #2a5459; background-color: #4d7b7b; cursor: pointer; transition: background-color 0.2s ease-in; } .ramp--transcript_menu_button span { padding: 0.5rem 0.25rem; } .ramp--transcript_menu_button:hover:not(:disabled):not([disabled]) { background-color: #2a5459; border: 1px solid #1a3a3f; } .ramp--transcript_menu_button:active:not(:disabled):not([disabled]) { background-color: #1a3a3f; } .ramp--transcript_menu_button[disabled], .ramp--transcript_menu_button:disabled { cursor: default; opacity: 0.6; } .ramp--transcript_search_prev, .ramp--transcript_search_next { flex: none; } .ramp--transcript_search_count { white-space: nowrap; flex: 0 0 auto; text-align: center; } .ramp--transcript_search_navigator { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 0.5em; } .ramp--transcript_downloader { margin: 0; flex: 1 1 auto; } @container transcript_nav (max-width: 500px) { .ramp--transcript_menu { grid-template-columns: 1fr minmax(max-content, 1fr); } } @container transcript_nav (max-width: 480px) { .ramp--transcript_menu { grid-template-columns: 1fr minmax(min-content, 1fr); } .ramp--transcript_search_input, .ramp--transcript_search_navigator { grid-column: 1/3; } .ramp--transcript_machine_generated, .ramp--transcript_auto_scroll_check { grid-column: 1/3; } .ramp--transcript_auto_scroll_check { justify-content: flex-start; } } @container transcript_nav (max-width: 420px) { .ramp--transcript_selector, .ramp--transcript_downloader { grid-column: 1/3; } } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--transcript_nav { max-height: 30em; padding: 10px; } .ramp--transcript_nav div.transcript_content { height: 19em; overflow-y: auto; } .ramp--transcript_nav div.transcript_content p { color: #333333; } .ramp--transcript_nav div.transcript_content #no-transcript { padding: 2em; } .ramp--transcript_nav div.transcript_content.static { overflow-y: unset; } .ramp--transcript_nav iframe.transcript_viewer { width: 100%; width: -moz-available; /* WebKit-based browsers will ignore this. */ width: -webkit-fill-available; /* Mozilla-based browsers will ignore this. */ width: fill-available; height: 25em; /* Parent div's height - 5*/ } p.ramp--transcript_untimed_item { margin: 0; } span.ramp--transcript_item { display: flex; margin: 10px 10px 10px 10px; text-decoration: none; transition: background-color 0.2s ease-in; align-items: baseline; } span.ramp--transcript_item.untimed { cursor: pointer; } span.ramp--transcript_item.untimed:focus, span.ramp--transcript_item.untimed:hover { background-color: #cfd8d3; } span.ramp--transcript_item.metadata-block { background: #ebebeb; padding: 0.5em; border: 0.01em solid #bbbbbb; border-radius: 0.25em; } span.ramp--transcript_item.active { background-color: #ebebeb; } span.ramp--transcript_item.disabled { cursor: default; } span.ramp--transcript_item.focused, span.ramp--transcript_item.focused:hover, span.ramp--transcript_item.focused:focus { background-color: #d0dcdc; } span.ramp--transcript_item.focused .ramp--transcript_highlight.current-hit { border: 1px solid; text-decoration: none; } span.ramp--transcript_item .ramp--transcript_time { cursor: pointer; margin-right: 1em; color: #2a5459; } span.ramp--transcript_item .ramp--transcript_time:hover { text-decoration: underline; } span.ramp--transcript_item .ramp--transcript_text { color: black; } span.ramp--transcript_item > span::after { display: block; content: attr(title); font-weight: bold; height: 1px; color: transparent; overflow: hidden; visibility: hidden; } .ramp--transcript_highlight { font-weight: bold; color: #3b5e5e; text-decoration: underline; text-underline-offset: 3px; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--metadata-display { min-width: inherit; } .ramp--metadata-display p { padding-left: 1rem; } .ramp--metadata-display .ramp--metadata-display-title { border: 0.05rem solid #d3d3d3; border-radius: 0.25rem 0.25rem 0 0; margin-bottom: 1rem; background: #f2f2f2; } .ramp--metadata-display .ramp--metadata-display-title h4 { font-weight: normal; padding: 0.5rem 1.5rem; margin: 0; color: #333333; } .ramp--metadata-display .ramp--metadata-display-content { padding: 0 1.5rem 1.5rem; color: #333333; max-height: 30rem; overflow-y: auto; } .ramp--metadata-display .ramp--metadata-display-content > span { font-weight: bold; font-style: italic; padding: 0.5rem 0 0.5rem 1.5rem; margin: 0 0 0.75rem; color: #333333; border-bottom: 0.1rem solid #7e7e7e; display: block; margin: 0 -1.5rem 0.5rem -1.5rem; } .ramp--metadata-display .ramp--metadata-display-content .ramp--metadata-rights-heading { border-bottom: 0.1rem solid #bbbbbb; margin: 0; padding: 0.5rem 0; } .ramp--metadata-display .ramp--metadata-display-content dt { font-weight: bold; } .ramp--metadata-display .ramp--metadata-display-content dd { padding-bottom: 1rem; word-break: break-word; } .ramp--metadata-display .ramp--metadata-display-content a { color: #2a5459; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--supplemental-files dd { padding-bottom: 1rem; } .ramp--supplemental-files dd a { color: #2a5459; } .ramp--supplemental-files .ramp--supplemental-files-heading { border: 0.05rem solid #d3d3d3; border-radius: 0.25rem 0.25rem 0 0; margin-bottom: 1rem; background: #f2f2f2; } .ramp--supplemental-files .ramp--supplemental-files-heading h4 { font-weight: normal; padding: 0.5rem 1.5rem; margin: 0; color: #333333; } .ramp--supplemental-files .ramp--supplemental-files-display-content { padding: 0 0 1.5rem 1.5rem; color: #333333; max-height: 30rem; } .ramp--supplemental-files .ramp--supplemental-files-display-content dt { font-weight: bold; padding-left: 1.5rem; } .ramp--supplemental-files .ramp--supplemental-files-display-content dt ~ dd { padding-left: 1.5rem; } .ramp--supplemental-files .ramp--supplemental-files-display-content dd { padding-bottom: 0; margin-left: 1.5rem; } .ramp--supplemental-files .ramp--supplemental-files-display-content a { color: #2a5459; } .ramp--supplemental-files .ramp--supplemental-files-empty { padding: 2em; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--auto-advance { user-select: none; display: flex; align-content: center; border: 0.05rem solid #d3d3d3; border-radius: 0.25rem; background: #f2f2f2; width: fit-content; padding: 0.5rem 1.5rem; max-height: 2rem; gap: 1rem; } .ramp--auto-advance .ramp--auto-advance-label { margin-bottom: 1rem; font-weight: normal; margin: 0; color: #333333; padding: 0.25rem; } .ramp--auto-advance .slider { position: relative; display: inline-block; border-radius: 34px; height: 34px; width: 60px; background-color: #ccc; -webkit-transition: 0.4s; transition: 0.4s; } .ramp--auto-advance .slider span { position: absolute; top: 2px; left: 2px; display: inline-block; border: 2px solid white; border-radius: 34px; height: 26px; width: 26px; background-color: white; -webkit-transition: 0.4s; transition: 0.4s; } .ramp--auto-advance[aria-checked=true] .slider { background: #2a5459; } .ramp--auto-advance[aria-checked=true] .slider span { left: 28px; } @import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap"); .ramp--annotations-display { min-width: inherit; padding: 10px; } .ramp--annotations-display .ramp--annotations__title { border: 0.05rem solid #d3d3d3; border-radius: 0.25rem 0.25rem 0 0; margin-bottom: 1rem; background: #f2f2f2; } .ramp--annotations-display .ramp--annotations__title h4 { font-weight: normal; padding: 0.5rem 1.5rem; margin: 0; color: #333333; } .ramp--annotations-display table { font-family: arial, sans-serif; width: 100%; border-collapse: collapse; } .ramp--annotations-display table *:disabled { cursor: not-allowed; opacity: 0.8; } .ramp--annotations-display table td:nth-child(3) { width: 40%; } .ramp--annotations-display table th { border: 1px solid #f2f2f2; padding: 0.5rem; } .ramp--annotations-display table td { border: 1px solid #f2f2f2; text-align: left; padding: 0.5rem; font-weight: normal; } .ramp--annotations-display table input.ramp--markers-display__edit-marker { width: 100%; padding: 0.5rem 0.25rem; display: inline-block; border: 1px solid #ccc; border-radius: 0.2rem; box-sizing: border-box; font-size: inherit; } .ramp--annotations-display .marker-actions { display: flex; justify-content: flex-end; } .ramp--annotations-display .marker-actions svg { vertical-align: sub; } .ramp--annotations-display .marker-actions p { margin: 0; margin-top: 0.25rem; } .ramp--annotations-display .time-invalid { outline: none; border-color: #e0101a; box-shadow: 0 0 10px #e0101a; } .ramp--annotations-display .ramp--markers-display__edit-button { background-color: #2a5459; color: white; padding: 5px 10px; border: none; border-radius: 4px; cursor: pointer; margin-left: 0.5rem; } .ramp--annotations-display .ramp--markers-display__edit-button-danger { background-color: #e0101a; color: white; padding: 5px 10px; border: none; border-radius: 4px; cursor: pointer; margin-left: 0.5rem; } .ramp--annotations-display .ramp--markers-display__error-message { color: #e0101a; font-size: small; margin: auto; } .ramp-markers-display__new-marker { margin-bottom: 1rem; } .ramp--markers-display__new-marker-form { border: 1px solid #d3d3d3; padding: 0.5rem; border-radius: 0.25rem; margin: 1rem 0; font-size: 12px; font-weight: bold; } .ramp--markers-display__new-marker-form table.create-marker-form-table { border: none; } .ramp--markers-display__new-marker-form input.ramp--markers-display__create-marker { width: 80%; vertical-align: middle; padding: 0.5rem 0.25rem; background-color: #fff; border: 1px solid #ccc; border-radius: 0.2rem; box-sizing: border-box; margin-left: 0.5rem; font-size: inherit; } /* Annotations styling */ .ramp--annotations__list .ramp--annotations__select { padding: 0.5em; margin-bottom: 1em; border: 1px solid #d3d3d3; border-radius: 3px; display: flex; row-gap: 0.5em; flex-direction: column; background-color: #f2f2f2; } .ramp--annotations__list .ramp--annotations__select .ramp--annotations__multi-select { position: relative; font-family: Arial, sans-serif; } .ramp--annotations__list .ramp--annotations__select .ramp--annotations__multi-select .ramp--annotations__scroll input { accent-color: #2a5459; } .ramp--annotations__list .ramp--annotations__select .ramp--annotations__multi-select-header { display: flex; justify-content: space-between; align-items: center; padding: 10px; border: 1px solid #ccc; border-radius: 4px; background-color: #fff; cursor: pointer; user-select: none; } .ramp--annotations__list .ramp--annotations__select .ramp--annotations__multi-select-header:hover { border-color: #888; } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-arrow { font-size: 12px; transition: transform 0.3s ease; } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-arrow.open { transform: rotate(180deg); } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-menu { margin: 0; padding: 0; list-style-type: none; position: absolute; top: auto; left: 0; width: 100%; border: 1px solid #ccc; border-radius: 4px; background-color: #fff; max-height: 200px; overflow-y: auto; z-index: 1000; box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-item { padding: 8px 10px; } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-item:hover { background-color: #f0f0f0; } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-item input[type=checkbox] { margin-right: 8px; accent-color: #2a5459; } .ramp--annotations__list .ramp--annotations__select .annotations-dropdown-menu li:focus { outline: none !important; background-color: #ebebeb; border: 2px solid #2a5459; } .ramp--annotations__list .ramp--annotations__content { height: 19em; overflow-y: auto; } .ramp--annotations__list .ramp--annotations__content > div { padding: 0; margin-top: 0; } .ramp--annotations__list .ramp--annotations__annotation-row.active { background-color: #ebebeb; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags { cursor: pointer; display: grid; grid-template-columns: repeat(2, 1fr); border-bottom: 1px dotted #333333; padding: 0.5em; padding-bottom: 0.25em; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags:hover, .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags:focus { background-color: #cfd8d3; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags .ramp--annotations__annotation-tags { display: flex; column-gap: 0.1em; flex-wrap: wrap; justify-content: end; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags p.ramp--annotations__annotation-tag { margin: 0; font-size: small; border: 1px solid #333333; border-radius: 3px; padding: 0 0.2em; align-self: flex-end; text-wrap: nowrap; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags p.ramp--annotations__annotation-tag.hidden { display: none; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags button.ramp--annotations__show-more-tags { background-color: white; border: 1px solid; border-radius: 3px; cursor: pointer; align-self: flex-end; padding: 0.36em 0.3em 0.36em 0.2em; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags button.ramp--annotations__show-more-tags:has(i.left) { padding: 0.36em 0.2em 0.36em 0.3em; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags button.ramp--annotations__show-more-tags .arrow { border: solid black; border-width: 0 0.1em 0.1em 0; display: inline-block; padding: 0.15em; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags button.ramp--annotations__show-more-tags .right { transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transition: transform 0.35s ease-in-out; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-row-time-tags button.ramp--annotations__show-more-tags .left { transform: rotate(135deg); -webkit-transform: rotate(135deg); transition: transform 0.35s ease-in-out; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-times { text-wrap: nowrap; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts { display: flex; flex-direction: column; line-height: 1.5em; padding: 0.5em; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts :last-child { margin-left: auto; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts p.ramp--annotations__annotation-text { margin: 0; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts p.ramp--annotations__annotation-text.hidden { display: none; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts p.ramp--annotations__annotation-text a { color: #2a5459; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts p.ramp--annotations__annotation-text a:hover { color: #333333; } .ramp--annotations__list .ramp--annotations__annotation-row .ramp--annotations__annotation-texts .ramp--annotations__show-more-less { font-size: small; cursor: pointer; background: none; border: 1px solid #333333; border-radius: 3px; }