@import "gotham";

#stop7274-6-0-1-7-4-3 {
	stop-color: #80263a;
	stop-opacity: 1;
}

#stop7276-66-6-3-9-1-2 {
	stop-color: #cc3e5d;
	stop-opacity: 1;
}

#stop7274-6-0-1-7-4-3-3 {
	stop-color: #266c80;
	stop-opacity: 1;
}

#stop7276-66-6-3-9-1-2-4 {
	stop-color: #3eadcc;
	stop-opacity: 1;
}

#stop7274-6-0-1-7-4-3-3-2 {
	stop-color: #804526;
	stop-opacity: 1;
}

#stop7276-66-6-3-9-1-2-4-8 {
	stop-color: #cc6f3e;
	stop-opacity: 1;
}

#layer1 {
	display: inline;
}

#layer1-8 {
	display: inline;
}

#g7590-7 {
	display: inline;
}

#g7827-7 {
	display: inline;
}

#rect6501-7-1 {
	fill: #fed91c;
	fill-opacity: 1;
	stroke: none;
	display: inline;
}

#rect7280-61-6 {
	fill: #e66280;
	fill-opacity: 1;
	stroke: none;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7474-3-2-7-1);
}

#rect7280-8-7-8 {
	fill: #cc5772;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7486-6-6-5-4);
}

#rect7280-5-3-5 {
	fill: #b34c63;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7478-9-8-2-9);
}

#rect7280-6-0-7 {
	fill: #a6475c;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7482-8-1-5-8);
}

#rect6501-1-6-8 {
	fill: none;
	stroke: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#linearGradient5352);
	stroke-width: 0.56622314;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 4;
	stroke-opacity: 1;
	stroke-dasharray: none;
	display: inline;
}

#rect6501-7-1-1 {
	fill: #439ffe;
	fill-opacity: 1;
	stroke: none;
	display: inline;
}

#rect7280-61-6-3 {
	fill: #1ebbe6;
	fill-opacity: 1;
	stroke: none;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7474-3-2-7-1-9);
}

#rect7280-8-7-8-8 {
	fill: #1ba6cc;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7486-6-6-5-4-7);
}

#rect7280-5-3-5-7 {
	fill: #1791b3;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7478-9-8-2-9-5);
}

#rect7280-6-0-7-4 {
	fill: #1687a6;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7482-8-1-5-8-3);
}

#rect6501-1-6-8-2 {
	fill: none;
	stroke: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#linearGradient5344);
	stroke-width: 0.44757253;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 4;
	stroke-opacity: 1;
	stroke-dasharray: none;
	display: inline;
}

#rect6501-7-1-1-0 {
	fill: #feb8d;
	fill-opacity: 1;
	stroke: none;
	display: inline;
}

#rect7280-61-6-3-2 {
	fill: #e6536;
	fill-opacity: 1;
	stroke: none;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7474-3-2-7-1-9-7);
}

#rect7280-8-7-8-8-4 {
	fill: #cc4a5;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7486-6-6-5-4-7-9);
}

#rect7280-5-3-5-7-8 {
	fill: #b3405;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7478-9-8-2-9-5-1);
}

#rect7280-6-0-7-4-6 {
	fill: #a63c4;
	fill-opacity: 1;
	stroke: none;
	display: inline;
	filter: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#filter7482-8-1-5-8-3-8);
}

#rect6501-1-6-8-2-5 {
	fill: none;
	stroke: url(../../../../../../eclipse-svg/org.eclipse.e4.ui.model.workbench.edit/icons/full/ctool16//CreateToolItem_menu_OpaqueMenu.svg#linearGradient5336);
	stroke-width: 0.55309612;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-miterlimit: 4;
	stroke-opacity: 1;
	stroke-dasharray: none;
	display: inline;
}

