1 @namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
2 @namespace html url("http://www.w3.org/1999/xhtml");
6 background-color: rgba(156,156,255,0.75);
12 background-color: transparent;
13 background-repeat: no-repeat;
14 background-position: center;
24 .fullscreenButton:hover {
25 background-color: rgba(255,207,0,0.75);
28 .playButton:hover:active,
29 .muteButton:hover:active,
30 .fullscreenButton:hover:active {
31 background-color: rgba(255,159,0,0.75);
34 .playButton:-moz-focusring > .button-box,
35 .muteButton:-moz-focusring > .button-box,
36 .fullscreenButton:-moz-focusring > .button-box {
37 border: 1px dotted rgba(0,0,0,0.75);
41 background-image: url("chrome://global/skin/media/pauseButton.png");
42 margin-right: -22px; /* 1/2 of scrubber thumb width, for overhang. */
43 position: relative; /* Trick to work around negative margin interfering with clicking on the button. */
47 background-image: url("chrome://global/skin/media/pauseButton-hover.png");
51 background-image: url("chrome://global/skin/media/playButton.png");
54 .playButton[paused]:hover {
55 background-image: url("chrome://global/skin/media/playButton-hover.png");
59 background-image: url("chrome://global/skin/media/muteButton.png");
64 background-image: url("chrome://global/skin/media/muteButton-hover.png");
68 background-image: url("chrome://global/skin/media/unmuteButton.png");
71 .muteButton[muted]:hover {
72 background-image: url("chrome://global/skin/media/unmuteButton-hover.png");
75 .muteButton[noAudio] {
76 background-image: url("chrome://global/skin/media/noAudio.png");
79 .muteButton[noAudio] + .volumeStack {
84 background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton.png"), 0, 16, 16, 0);
87 .fullscreenButton:hover {
88 background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton.png"), 16, 16, 32, 0);
91 .fullscreenButton[fullscreened] {
92 background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton.png"), 0, 32, 16, 16);
95 .fullscreenButton[fullscreened]:hover {
96 background-image: -moz-image-rect(url("chrome://global/skin/media/fullscreenButton.png"), 16, 32, 32, 16);
106 background-repeat: no-repeat;
107 background-position: center;
112 background-image: url("chrome://global/skin/media/volume-empty.png");
116 background-image: url("chrome://global/skin/media/volume-full.png");
117 background-clip: content-box;
120 .controlBar[fullscreen-unavailable] > .volumeStack {
121 /* This value is duplicated in the videocontrols.xml adjustControlSize function. */
122 -moz-margin-end: 8px;
125 .volumeControl .scale-thumb {
131 -moz-box-pack: center;
135 margin-left: -22px; /* 1/2 of scrubber thumb width, for overhang. */
136 padding-left: 8px; /* don't bump into the scrubber bar */
137 padding-top: 0px; /* center vertically with scrubber bar */
138 color: rgba(0,0,0,0.75);
140 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
148 /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */
149 /* margin left/right: 1/2 of scrubber thumb width, for overhang. */
151 background-color: rgba(0,0,0,0.75);
152 border-radius: 2.5px;
155 .bufferBar, .progressBar {
156 /* margin top/bottom: make bar 8px tall (control height = 28, minus 2 * 10 margin) */
157 /* margin left/right: 1/2 of scrubber thumb width, for overhang. */
160 background-color: transparent;
165 /* .progress-bar is an element inside the <progressmeter> implementation. */
166 .bufferBar .progress-bar {
168 * Note that this is drawn on top of the .backgroundBar. So although this
169 * has the same background-color specified, the semitransparent
170 * compositing gives it a different visual appearance.
172 background-color: rgba(255,159,0,0.75);
173 border-radius: 2.5px;
174 -moz-appearance: none;
177 .progressBar .progress-bar {
178 background-color: #008484;
179 border-radius: 2.5px;
180 -moz-appearance: none;
183 /* .scale-slider is an element inside the <scale> implementation. */
184 .scrubber .scale-slider, .volumeControl .scale-slider {
185 /* Hide the default horizontal bar. */
190 .scrubber .scale-slider {
191 /* abs(margin-top) + margin-bottom + bar height == timeThumb height */
196 /* .scale-thumb is an element inside the <scale> implementation. */
197 .scrubber .scale-thumb,
198 .volumeControl .scale-thumb {
199 /* Override the default thumb appearance with a custom image. */
200 background: transparent;
201 border: none !important;
205 background: url("chrome://global/skin/media/scrubberThumb.png") no-repeat center;
208 -moz-box-pack: center;
211 .timeThumb[showhours="true"] {
212 background-image: url("chrome://global/skin/media/scrubberThumbWide.png");
216 .timeThumb:hover, .timeThumb:active {
217 background-image: url("chrome://global/skin/media/scrubberThumb-hover.png");
222 color: rgba(0,0,0,0.75);
224 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
225 text-shadow: rgba(255,259,0, 0.3) 0 1px;
230 -moz-box-align: center;
231 -moz-box-pack: center;
232 background-color: rgba(0,0,0,0.55);
236 margin-bottom: 28px; /* same height as .controlBar, to keep icon centered above it */
241 .statusIcon[type="throbber"] {
242 background: url("chrome://communicator/skin/brand/throbber-anim.png") no-repeat center;
245 .statusIcon[type="throbber"][stalled] {
246 background: url("chrome://global/skin/media/stalled.png") no-repeat center;
249 .statusIcon[type="error"] {
250 background: url("chrome://global/skin/icons/alert-error.gif") no-repeat center;
253 /* Overlay Play button */
257 -moz-box-pack: center;
258 -moz-box-align: center;
260 background-image: url("chrome://global/skin/media/clicktoplay-bgtexture.png"),
261 url("chrome://global/skin/media/videoClickToPlayButton.svg");
262 background-repeat: repeat, no-repeat;
263 background-position: center, center;
264 background-size: auto, 64px 64px;
265 background-color: hsla(0,0%,10%,.5);
271 /* Statistics formatting */
281 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
290 background: rgba(68,68,111,.7);
292 border-collapse: collapse;
296 /* CSS Transitions */
298 transition-property: opacity, background-size;
299 transition-duration: 400ms, 400ms;
301 .clickToPlay[fadeout] {
302 background-size: auto, 192px 192px;
305 .clickToPlay[fadeout][immediate] {
306 transition-property: opacity, background-size;
307 transition-duration: 0s, 0s;
309 .controlBar:not([immediate]) {
310 transition-property: opacity;
311 transition-duration: 200ms;
313 .controlBar[fadeout] {
316 .volumeStack:not([immediate]) {
317 transition-property: opacity, margin-top;
318 transition-duration: 200ms, 200ms;
320 .volumeStack[fadeout] {
324 .statusOverlay:not([immediate]) {
325 transition-property: opacity;
326 transition-duration: 300ms;
327 transition-delay: 750ms;
329 .statusOverlay[fadeout] {
333 /* Error description formatting */
335 font-family: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;