/*
 * gotham.scss test theme for experimenting with icon themes
 */
/** Cross theme styles */
/*
 * Global.scss provides styles and configuration
 * all themes.
 *
 */
/** Global styles and values */
/** styles and values */
#stop4885-5 {
  stop-color: #e1eaf8;
  stop-opacity: 1; }

#stop4887-5 {
  stop-color: #e8edf4;
  stop-opacity: 1; }

#stop4847 {
  stop-color: #c6bc7d;
  stop-opacity: 1; }

#stop4849 {
  stop-color: #778b9c;
  stop-opacity: 1; }

#stop4912-8-8 {
  stop-color: #ffffff;
  stop-opacity: 0; }

#stop4914-8-8 {
  stop-color: #b7e4f9;
  stop-opacity: 1; }

#stop4996-5-4 {
  stop-color: #b7e4f9;
  stop-opacity: 1; }

#stop4998-5-0 {
  stop-color: #ffffff;
  stop-opacity: 0; }

#rect4115 {
  fill: #4b6ea2;
  fill-opacity: 1;
  stroke: none;
  display: inline; }

#rect4115-1 {
  fill: #4b6ea2;
  fill-opacity: 1;
  stroke: none;
  display: inline; }

#rect4115-7 {
  fill: #4b6ea2;
  fill-opacity: 1;
  stroke: none;
  display: inline; }

#rect4115-1-4 {
  fill: #4b6ea2;
  fill-opacity: 1;
  stroke: none;
  display: inline; }

#layer1-2 {
  display: inline; }

#rect3997-9-1-1 {
  font-size: medium;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  font-stretch: normal;
  text-indent: 0;
  text-align: start;
  text-decoration: none;
  line-height: normal;
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
  direction: ltr;
  block-progression: tb;
  writing-mode: lr-tb;
  text-anchor: start;
  baseline-shift: baseline;
  color: #000000;
  fill: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/obj16//Input.svg#linearGradient4889-2);
  fill-opacity: 1;
  fill-rule: nonzero;
  stroke: none;
  stroke-width: 1;
  marker: none;
  visibility: visible;
  display: inline;
  overflow: visible;
  enable-background: accumulate;
  font-family: Sans;
  inkscape-font-specification: Sans; }

#rect3997-9-1 {
  font-size: medium;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  font-stretch: normal;
  text-indent: 0;
  text-align: start;
  text-decoration: none;
  line-height: normal;
  letter-spacing: normal;
  word-spacing: normal;
  text-transform: none;
  direction: ltr;
  block-progression: tb;
  writing-mode: lr-tb;
  text-anchor: start;
  baseline-shift: baseline;
  color: #000000;
  fill: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/obj16//Input.svg#linearGradient4852);
  fill-opacity: 1;
  fill-rule: nonzero;
  stroke: none;
  stroke-width: 1;
  marker: none;
  visibility: visible;
  display: inline;
  overflow: visible;
  enable-background: accumulate;
  font-family: Sans;
  inkscape-font-specification: Sans; }

#rect4853-82-7 {
  fill: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/obj16//Input.svg#linearGradient5062-9);
  fill-opacity: 1;
  stroke: none;
  display: inline; }

#rect4853-82-0 {
  fill: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/obj16//Input.svg#linearGradient4975-2-1);
  fill-opacity: 1;
  stroke: none;
  display: inline; }

#rect4115-1-4-0 {
  fill: #4b6ea2;
  fill-opacity: 1;
  stroke: none;
  display: inline; }
