/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

@namespace url(http://www.w3.org/2000/svg);

style, script, symbol {
 display: none;
}

switch {
 -moz-binding: none !important;
}

svg:not(:root), symbol, image, marker, pattern, foreignObject {
 overflow: hidden;
}

@media all and (-moz-is-glyph) {
 :root {
   fill: -moz-objectfill;
   fill-opacity: -moz-objectfillopacity;
   stroke: -moz-objectstroke;
   stroke-opacity: -moz-objectstrokeopacity;
   stroke-width: -moz-objectValue;
   stroke-dasharray: -moz-objectValue;
   stroke-dashoffset: -moz-objectValue;
 }
}

foreignObject {
  margin: 0 ! important;
  padding: 0 ! important;
  border-width: 0 ! important;
}

@media all and (-moz-is-resource-document) {
 foreignObject *|* {
   -moz-appearance: none !important;
 }
}

*|*::-moz-svg-foreign-content {
  display: block !important;
  /* We need to be an absolute and fixed container */
  -moz-transform: translate(0) !important;
  text-indent: 0;
}

/* Set |transform-origin:0% 0%;| for all SVG elements except outer-<svg>,
   noting that 'svg' as a child of 'foreignObject' counts as outer-<svg>.
*/
*:not(svg),
*:not(foreignObject) > svg {
  -moz-transform-origin:0 0;
}

*|*::-moz-svg-text {
  unicode-bidi: inherit;
}
