- Created complete documentation in docs/ directory - Added PROJECT_OVERVIEW.md with feature highlights and getting started guide - Added ARCHITECTURE.md with system design and technical details - Added SECURITY.md with comprehensive security implementation guide - Added DEVELOPMENT.md with development workflows and best practices - Added DEPLOYMENT.md with production deployment instructions - Added API.md with complete REST API documentation - Added CONTRIBUTING.md with contribution guidelines - Added CHANGELOG.md with version history and migration notes - Reorganized all documentation files into docs/ directory for better organization - Updated README.md with proper documentation links and quick navigation - Enhanced project structure with professional documentation standards
129 lines
10 KiB
CSS
129 lines
10 KiB
CSS
.vjs-label-hidden {
|
|
display: none !important; }
|
|
|
|
.vjs-default-skin div.vjs-ads-label {
|
|
font-size: 13px;
|
|
line-height: 30px;
|
|
font-weight: normal;
|
|
text-align: center;
|
|
color: white;
|
|
display: none;
|
|
width: auto;
|
|
padding-left: 10px; }
|
|
|
|
.vjs-ad-playing .vjs-control.vjs-ads-label {
|
|
display: block; }
|
|
|
|
.vjs-black-poster {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
margin: 0;
|
|
padding: 0;
|
|
background-repeat: no-repeat;
|
|
background-position: 50% 50%;
|
|
background-size: contain;
|
|
cursor: pointer;
|
|
background-color: #000; }
|
|
|
|
.vjs-has-started .vjs-black-poster.vjs-hidden {
|
|
display: none; }
|
|
|
|
.vjs-using-native-controls .vjs-black-poster {
|
|
display: none; }
|
|
|
|
div.VPAID-container {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%; }
|
|
|
|
div.vjs-vpaid-ad div.vjs-progress-control,
|
|
div.vjs-vpaid-ad div.vjs-time-controls,
|
|
div.vjs-vpaid-ad div.vjs-time-divider {
|
|
display: none; }
|
|
|
|
div.vjs-vpaid-ad.vjs-vpaid-flash-ad div.VPAID-container {
|
|
background-color: #000000; }
|
|
|
|
div.vjs-vpaid-ad .vjs-tech {
|
|
z-index: 0; }
|
|
|
|
/**
|
|
* videojs.ads.css
|
|
*/
|
|
/* Ad playback */
|
|
.vjs-ad-playing .vjs-progress-control {
|
|
pointer-events: none; }
|
|
|
|
.vjs-ad-playing .vjs-play-control.vjs-paused,
|
|
.vjs-ad-playing .vjs-volume-level,
|
|
.vjs-ad-playing .vjs-play-progress {
|
|
background-color: #ffe400 !important; }
|
|
|
|
div.vast-skip-button {
|
|
display: block;
|
|
position: absolute;
|
|
bottom: 20%;
|
|
right: 0;
|
|
background-color: #000;
|
|
color: white;
|
|
font-size: 15px;
|
|
font-weight: bold;
|
|
width: auto;
|
|
padding: 8px;
|
|
z-index: 2;
|
|
border: 1px solid white;
|
|
border-right: none; }
|
|
|
|
.vast-skip-button.enabled {
|
|
cursor: pointer;
|
|
color: #fff; }
|
|
|
|
.vast-skip-button.enabled:hover {
|
|
cursor: pointer;
|
|
background: #333; }
|
|
|
|
.vast-blocker {
|
|
display: block;
|
|
position: absolute;
|
|
margin: 0;
|
|
padding: 0;
|
|
height: 100%;
|
|
width: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0; }
|
|
|
|
.vast-skip-button.enabled:after {
|
|
content: ">>";
|
|
position: relative;
|
|
top: 1px;
|
|
margin-left: 8px; }
|
|
|
|
/* Ad loading */
|
|
.vjs-ad-playing.vjs-vast-ad-loading .vjs-loading-spinner {
|
|
display: block;
|
|
z-index: 10;
|
|
/* only animate when showing because it can be processor heavy */
|
|
/* animation */
|
|
-webkit-animation: spin 1.5s infinite linear;
|
|
-moz-animation: spin 1.5s infinite linear;
|
|
-o-animation: spin 1.5s infinite linear;
|
|
animation: spin 1.5s infinite linear; }
|
|
|
|
.vjs-vast-ad-loading div.vjs-big-play-button {
|
|
display: none !important; }
|
|
|
|
.vjs-ad-playing .vjs-slider-handle:before {
|
|
display: none; }
|
|
|
|
.vjs-ad-playing .vjs-live-controls {
|
|
display: none; }
|
|
|
|
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlkZW9qcy52YXN0LnZwYWlkLmNzcyIsInNvdXJjZXMiOlsidmlkZW9qcy52YXN0LnZwYWlkLnNjc3MiLCJhZHMtbGFiZWwuc2NzcyIsImJsYWNrLXBvc3Rlci5zY3NzIiwidmlkZW9qcy52cGFpZC5zY3NzIiwidmlkZW9qcy52YXN0LnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcImFkcy1sYWJlbFwiO1xuQGltcG9ydCBcImJsYWNrLXBvc3RlclwiO1xuQGltcG9ydCBcInZpZGVvanMudnBhaWRcIjtcbkBpbXBvcnQgXCJ2aWRlb2pzLnZhc3RcIjsiLCIudmpzLWxhYmVsLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xufVxuXG4udmpzLWRlZmF1bHQtc2tpbiBkaXYudmpzLWFkcy1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuXG4udmpzLWFkLXBsYXlpbmcgLnZqcy1jb250cm9sLnZqcy1hZHMtbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiIsIi52anMtYmxhY2stcG9zdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG59XG5cbi52anMtaGFzLXN0YXJ0ZWQgLnZqcy1ibGFjay1wb3N0ZXIudmpzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8vIGlmIHdlIHVzZSBuYXRpdmUgY29udHJvbHMgd2UgZG9uJ3QgbmVlZCBibGFjayBwb3N0ZXJcbi52anMtdXNpbmctbmF0aXZlLWNvbnRyb2xzIC52anMtYmxhY2stcG9zdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiZGl2LlZQQUlELWNvbnRhaW5lcntcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbmRpdi52anMtdnBhaWQtYWQgZGl2LnZqcy1wcm9ncmVzcy1jb250cm9sLFxuZGl2LnZqcy12cGFpZC1hZCBkaXYudmpzLXRpbWUtY29udHJvbHMsXG5kaXYudmpzLXZwYWlkLWFkIGRpdi52anMtdGltZS1kaXZpZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuZGl2LnZqcy12cGFpZC1hZC52anMtdnBhaWQtZmxhc2gtYWQgZGl2LlZQQUlELWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbmRpdi52anMtdnBhaWQtYWQgLnZqcy10ZWNoIHtcbiAgei1pbmRleDogMDtcbn1cbiIsIi8qKlxuICogdmlkZW9qcy5hZHMuY3NzXG4gKi9cblxuLyogQWQgcGxheWJhY2sgKi9cbi52anMtYWQtcGxheWluZyAudmpzLXByb2dyZXNzLWNvbnRyb2wge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnZqcy1hZC1wbGF5aW5nIC52anMtcGxheS1jb250cm9sLnZqcy1wYXVzZWQsXG4udmpzLWFkLXBsYXlpbmcgLnZqcy12b2x1bWUtbGV2ZWwsXG4udmpzLWFkLXBsYXlpbmcgLnZqcy1wbGF5LXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZTQwMCAhaW1wb3J0YW50O1xufVxuXG5kaXYudmFzdC1za2lwLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMjAlO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDE1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogOHB4O1xuICB6LWluZGV4OiAyO1xuICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4udmFzdC1za2lwLWJ1dHRvbi5lbmFibGVkIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLnZhc3Qtc2tpcC1idXR0b24uZW5hYmxlZDpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogIzMzMztcbn1cblxuLnZhc3QtYmxvY2tlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG4udmFzdC1za2lwLWJ1dHRvbi5lbmFibGVkOmFmdGVyIHtcbiAgY29udGVudDogXCI+PlwiO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBtYXJnaW4tbGVmdDogOHB4O1xufVxuLyogQWQgbG9hZGluZyAqL1xuLnZqcy1hZC1wbGF5aW5nLnZqcy12YXN0LWFkLWxvYWRpbmcgLnZqcy1sb2FkaW5nLXNwaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgei1pbmRleDogMTA7XG5cbiAgLyogb25seSBhbmltYXRlIHdoZW4gc2hvd2luZyBiZWNhdXNlIGl0IGNhbiBiZSBwcm9jZXNzb3IgaGVhdnkgKi9cbiAgLyogYW5pbWF0aW9uICovXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDEuNXMgaW5maW5pdGUgbGluZWFyO1xuICAtbW96LWFuaW1hdGlvbjogc3BpbiAxLjVzIGluZmluaXRlIGxpbmVhcjtcbiAgLW8tYW5pbWF0aW9uOiBzcGluIDEuNXMgaW5maW5pdGUgbGluZWFyO1xuICBhbmltYXRpb246IHNwaW4gMS41cyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cbi52anMtdmFzdC1hZC1sb2FkaW5nIGRpdi52anMtYmlnLXBsYXktYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG59XG5cbi52anMtYWQtcGxheWluZyAudmpzLXNsaWRlci1oYW5kbGU6YmVmb3Jle1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udmpzLWFkLXBsYXlpbmcgIC52anMtbGl2ZS1jb250cm9sc3tcbiAgZGlzcGxheTogbm9uZTtcbn0iXSwibWFwcGluZ3MiOiJBQ0FBLGlCQUFpQixDQUFDO0VBQ2hCLE9BQU8sRUFBRSxJQUFJLENBQUEsVUFBVSxHQUN4Qjs7QUFFRCxpQkFBaUIsQ0FBQyxHQUFHLEFBQUEsY0FBYyxDQUFDO0VBQ2xDLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLFdBQVcsRUFBRSxNQUFPO0VBQ3BCLFVBQVUsRUFBRSxNQUFPO0VBQ25CLEtBQUssRUFBRSxLQUFNO0VBQ2IsT0FBTyxFQUFFLElBQUs7RUFDZCxLQUFLLEVBQUUsSUFBSztFQUNaLFlBQVksRUFBRSxJQUFLLEdBQ3BCOztBQUVELGVBQWUsQ0FBQyxZQUFZLEFBQUEsY0FBYyxDQUFDO0VBQ3pDLE9BQU8sRUFBRSxLQUFNLEdBQ2hCOztBQ2pCRCxpQkFBaUIsQ0FBQztFQUNoQixRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsQ0FBRTtFQUNQLEtBQUssRUFBRSxDQUFFO0VBQ1QsTUFBTSxFQUFFLENBQUU7RUFDVixJQUFJLEVBQUUsQ0FBRTtFQUNSLE1BQU0sRUFBRSxDQUFFO0VBQ1YsT0FBTyxFQUFFLENBQUU7RUFDWCxpQkFBaUIsRUFBRSxTQUFVO0VBQzdCLG1CQUFtQixFQUFFLE9BQVE7RUFDN0IsZUFBZSxFQUFFLE9BQVE7RUFDekIsTUFBTSxFQUFFLE9BQVE7RUFDaEIsZ0JBQWdCLEVBQUUsSUFBSyxHQUN4Qjs7QUFFRCxnQkFBZ0IsQ0FBQyxpQkFBaUIsQUFBQSxXQUFXLENBQUM7RUFDNUMsT0FBTyxFQUFFLElBQUssR0FDZjs7QUFHRCwwQkFBMEIsQ0FBQyxpQkFBaUIsQ0FBQztFQUN6QyxPQUFPLEVBQUUsSUFBSyxHQUNqQjs7QUN0QkQsR0FBRyxBQUFBLGdCQUFnQixDQUFBO0VBQ2pCLFFBQVEsRUFBRSxRQUFTO0VBQ25CLEdBQUcsRUFBRSxDQUFFO0VBQ1AsSUFBSSxFQUFFLENBQUU7RUFDUixLQUFLLEVBQUUsSUFBSztFQUNaLE1BQU0sRUFBRSxJQUFLLEdBQ2Q7O0FBRUQsR0FBRyxBQUFBLGFBQWEsQ0FBQyxHQUFHLEFBQUEscUJBQXFCO0FBQ3pDLEdBQUcsQUFBQSxhQUFhLENBQUMsR0FBRyxBQUFBLGtCQUFrQjtBQUN0QyxHQUFHLEFBQUEsYUFBYSxDQUFDLEdBQUcsQUFBQSxpQkFBaUIsQ0FBQztFQUNwQyxPQUFPLEVBQUUsSUFBSyxHQUNmOztBQUVELEdBQUcsQUFBQSxhQUFhLEFBQUEsbUJBQW1CLENBQUMsR0FBRyxBQUFBLGdCQUFnQixDQUFDO0VBQ3RELGdCQUFnQixFQUFFLE9BQVEsR0FDM0I7O0FBRUQsR0FBRyxBQUFBLGFBQWEsQ0FBQyxTQUFTLENBQUM7RUFDekIsT0FBTyxFQUFFLENBQUUsR0FDWjs7QUNwQkQ7O0dBRUc7QUFFSCxpQkFBaUI7QUFDakIsZUFBZSxDQUFDLHFCQUFxQixDQUFDO0VBQ3BDLGNBQWMsRUFBRSxJQUFLLEdBQ3RCOztBQUVELGVBQWUsQ0FBQyxpQkFBaUIsQUFBQSxXQUFXO0FBQzVDLGVBQWUsQ0FBQyxpQkFBaUI7QUFDakMsZUFBZSxDQUFDLGtCQUFrQixDQUFDO0VBQ2pDLGdCQUFnQixFQUFFLGtCQUFtQixHQUN0Qzs7QUFFRCxHQUFHLEFBQUEsaUJBQWlCLENBQUM7RUFDbkIsT0FBTyxFQUFFLEtBQU07RUFDZixRQUFRLEVBQUUsUUFBUztFQUNuQixNQUFNLEVBQUUsR0FBSTtFQUNaLEtBQUssRUFBRSxDQUFFO0VBQ1QsZ0JBQWdCLEVBQUUsSUFBSztFQUN2QixLQUFLLEVBQUUsS0FBTTtFQUNiLFNBQVMsRUFBRSxJQUFLO0VBQ2hCLFdBQVcsRUFBRSxJQUFLO0VBQ2xCLEtBQUssRUFBRSxJQUFLO0VBQ1osT0FBTyxFQUFFLEdBQUk7RUFDYixPQUFPLEVBQUUsQ0FBRTtFQUNYLE1BQU0sRUFBRSxlQUFnQjtFQUN4QixZQUFZLEVBQUUsSUFBSyxHQUNwQjs7QUFFRCxpQkFBaUIsQUFBQSxRQUFRLENBQUM7RUFDeEIsTUFBTSxFQUFFLE9BQVE7RUFDaEIsS0FBSyxFQUFFLElBQUssR0FDYjs7QUFFRCxpQkFBaUIsQUFBQSxRQUFRLEFBQUEsTUFBTSxDQUFDO0VBQzlCLE1BQU0sRUFBRSxPQUFRO0VBQ2hCLFVBQVUsRUFBRSxJQUFLLEdBQ2xCOztBQUVELGFBQWEsQ0FBQztFQUNaLE9BQU8sRUFBRSxLQUFNO0VBQ2YsUUFBUSxFQUFFLFFBQVM7RUFDbkIsTUFBTSxFQUFFLENBQUU7RUFDVixPQUFPLEVBQUUsQ0FBRTtFQUNYLE1BQU0sRUFBRSxJQUFLO0VBQ2IsS0FBSyxFQUFFLElBQUs7RUFDWixHQUFHLEVBQUUsQ0FBRTtFQUNQLElBQUksRUFBRSxDQUFFO0VBQ1IsS0FBSyxFQUFFLENBQUU7RUFDVCxNQUFNLEVBQUUsQ0FBRSxHQUNYOztBQUVELGlCQUFpQixBQUFBLFFBQVEsQUFBQSxNQUFNLENBQUM7RUFDOUIsT0FBTyxFQUFFLElBQUs7RUFDZCxRQUFRLEVBQUUsUUFBUztFQUNuQixHQUFHLEVBQUUsR0FBSTtFQUNULFdBQVcsRUFBRSxHQUFJLEdBQ2xCOztBQUNELGdCQUFnQjtBQUNoQixlQUFlLEFBQUEsb0JBQW9CLENBQUMsb0JBQW9CLENBQUM7RUFDdkQsT0FBTyxFQUFFLEtBQU07RUFDZixPQUFPLEVBQUUsRUFBRztFQUVaLGlFQUFpRTtFQUNqRSxlQUFlO0VBQ2YsaUJBQWlCLEVBQUUseUJBQTBCO0VBQzdDLGNBQWMsRUFBRSx5QkFBMEI7RUFDMUMsWUFBWSxFQUFFLHlCQUEwQjtFQUN4QyxTQUFTLEVBQUUseUJBQTBCLEdBQ3RDOztBQUVELG9CQUFvQixDQUFDLEdBQUcsQUFBQSxvQkFBb0IsQ0FBQztFQUMzQyxPQUFPLEVBQUUsSUFBSSxDQUFBLFVBQVUsR0FDeEI7O0FBRUQsZUFBZSxDQUFDLGtCQUFrQixBQUFBLE9BQU8sQ0FBQTtFQUN2QyxPQUFPLEVBQUUsSUFBSyxHQUNmOztBQUVELGVBQWUsQ0FBRSxrQkFBa0IsQ0FBQTtFQUNqQyxPQUFPLEVBQUUsSUFBSyxHQUNmIiwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ== */
|