diff --git a/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.html b/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.html index 2bad5d234..2b87c2bc2 100644 --- a/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.html +++ b/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.html @@ -1,18 +1,18 @@ - - + + diff --git a/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.scss b/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.scss index 46a2eacd7..370c01529 100644 --- a/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.scss +++ b/projects/ketcher-wrapper/src/lib/ketcher-wrapper.component.scss @@ -18,4 +18,4 @@ } div#root:focus-within { border: 0.001em solid blue !important; - } \ No newline at end of file + } diff --git a/src/app/core/app-dynamic-component-manifests.ts b/src/app/core/app-dynamic-component-manifests.ts index c4d5b13bf..542acd5db 100644 --- a/src/app/core/app-dynamic-component-manifests.ts +++ b/src/app/core/app-dynamic-component-manifests.ts @@ -1,434 +1,452 @@ import { - LazyLoadedComponentManifest + LazyLoadedComponentManifest } from './dynamic-component-loader/dynamic-component-manifest'; export const dynamicComponentManifests: LazyLoadedComponentManifest[] = [ - { - componentId: 'structure-details', - path: 'structure-details', - loadChildren: () => import('./substance-details/structure-details/structure-details.module') - .then(m => m.StructureDetailsModule), - }, - { - componentId: 'substance-audit-info', - path: 'substance-audit-info', - loadChildren: () => import('./substance-details/substance-audit-info/substance-audit-info.module') - .then(m => m.SubstanceAuditInfoModule), - }, - { - componentId: 'substance-codes', - path: 'substance-codes', - loadChildren: () => import('./substance-details/substance-codes/substance-codes.module') - .then(m => m.SubstanceCodesModule), - }, - { - componentId: 'substance-subunits', - path: 'substance-subunits', - loadChildren: () => import('./substance-details/substance-subunits/substance-subunits.module') - .then(m => m.SubstanceSubunitsModule), - }, - { - componentId: 'substance-moieties', - path: 'substance-moieties', - loadChildren: () => import('./substance-details/substance-moieties/substance-moieties.module') - .then(m => m.SubstanceMoietiesModule), - }, - { - componentId: 'substance-names', - path: 'substance-names', - loadChildren: () => import('./substance-details/substance-names/substance-names.module') - .then(m => m.SubstanceNamesModule), - }, - { - componentId: 'substance-notes', - path: 'substance-notes', - loadChildren: () => import('./substance-details/substance-notes/substance-notes.module') - .then(m => m.SubstanceNotesModule), - }, - { - componentId: 'substance-overview', - path: 'substance-overview', - loadChildren: () => import('./substance-details/substance-overview/substance-overview.module') - .then(m => m.SubstanceOverviewModule), - }, - { - componentId: 'substance-references', - path: 'substance-references', - loadChildren: () => import('./substance-details/substance-references/substance-references.module') - .then(m => m.SubstanceReferencesModule), - }, - { - componentId: 'substance-relationships-visualization', - path: 'substance-relationships-visualization', - loadChildren: () => import('./substance-details/substance-relationships-visualization/substance-relationships-visualization.module') - .then(m => m.SubstanceRelationshipsVisualizationModule), - }, - { - componentId: 'substance-relationships', - path: 'substance-relationships', - loadChildren: () => import('./substance-details/substance-relationships/substance-relationships.module') - .then(m => m.SubstanceRelationshipsModule), - }, - { - componentId: 'substance-concept-definition', - path: 'substance-concept-definition', - loadChildren: () => import('./substance-details/substance-concept-definition/substance-concept-definition.module') - .then(m => m.SubstanceConceptDefinitionModule), - }, - { - componentId: 'substance-polymer-structure', - path: 'substance-polymer-structure', - loadChildren: () => import('./substance-details/substance-polymer-structure/substance-polymer-structure.module') - .then(m => m.SubstancePolymerStructureModule), - }, - { - componentId: 'substance-monomers', - path: 'substance-monomers', - loadChildren: () => import('./substance-details/substance-monomers/substance-monomers.module') - .then(m => m.SubstanceMonomersModule), - }, - { - componentId: 'substance-structural-units', - path: 'substance-structural-units', - loadChildren: () => import('./substance-details/substance-structural-units/substance-structural-units.module') - .then(m => m.SubstanceStructuralUnitsModule), - }, - { - componentId: 'substance-mixture-components', - path: 'substance-mixture-components', - loadChildren: () => import('./substance-details/substance-mixture-components/substance-mixture-components.module') - .then(m => m.SubstanceMixtureComponentsModule), - }, - { - componentId: 'substance-modifications', - path: 'substance-modifications', - loadChildren: () => import('./substance-details/substance-modifications/substance-modifications.module') - .then(m => m.SubstanceModificationsModule), - }, - { - componentId: 'substance-disulfide-links', - path: 'substance-disulfide-links', - loadChildren: () => import('./substance-details/substance-disulfide-links/substance-disulfide-links.module') - .then(m => m.SubstanceDisulfideLinksModule), - }, - { - componentId: 'substance-other-links', - path: 'substance-other-links', - loadChildren: () => import('./substance-details/substance-other-links/substance-other-links.module') - .then(m => m.SubstanceOtherLinksModule), - }, - { - componentId: 'substance-glycosylation', - path: 'substance-glycosylation', - loadChildren: () => import('./substance-details/substance-glycosylation/substance-glycosylation.module') - .then(m => m.SubstanceGlycosylationModule), - }, - { - componentId: 'substance-na-sugars', - path: 'substance-na-sugars', - loadChildren: () => import('./substance-details/substance-na-sugars/substance-na-sugars.module') - .then(m => m.SubstanceNaSugarsModule), - }, - { - componentId: 'substance-na-linkages', - path: 'substance-na-linkages', - loadChildren: () => import('./substance-details/substance-na-linkages/substance-na-linkages.module') - .then(m => m.SubstanceNaLinkagesModule), - }, - { - componentId: 'substance-properties', - path: 'substance-properties', - loadChildren: () => import('./substance-details/substance-properties/substance-properties.module') - .then(m => m.SubstancePropertiesModule), - }, - { - componentId: 'substance-constituents', - path: 'substance-constituents', - loadChildren: () => import('./substance-details/substance-constituents/substance-constituents.module') - .then(m => m.SubstanceConstituentsModule), - }, - { - componentId: 'substance-primary-definition', - path: 'substance-primary-definition', - loadChildren: () => import('./substance-details/substance-primary-definition/substance-primary-definition.module') - .then(m => m.SubstancePrimaryDefinitionModule), - }, - { - componentId: 'substance-alternative-definition', - path: 'substance-alternative-definition', - loadChildren: () => import('./substance-details/substance-alternative-definition/substance-alternative-definition.module') - .then(m => m.SubstanceAlternativeDefinitionModule), - }, - { - componentId: 'substance-variant-concepts', - path: 'substance-variant-concepts', - loadChildren: () => import('./substance-details/substance-variant-concepts/substance-variant-concepts.module') - .then(m => m.SubstanceVariantConceptsModule), - }, - { - componentId: 'substance-mixture-source', - path: 'substance-mixture-source', - loadChildren: () => import('./substance-details/substance-mixture-source/substance-mixture-source.module') - .then(m => m.SubstanceMixtureSourceModule), - }, - { - componentId: 'substance-mixture-parent', - path: 'substance-mixture-parent', - loadChildren: () => import('./substance-details/substance-mixture-parent/substance-mixture-parent.module') - .then(m => m.SubstanceMixtureParentModule), - }, - { - componentId: 'substance-hierarchy', - path: 'substance-hierarchy', - loadChildren: () => import('./substance-details/substance-hierarchy/substance-hierarchy.module') - .then(m => m.SubstanceHierarchyModule), - }, - { - componentId: 'substance-history', - path: 'substance-history', - loadChildren: () => import('./substance-details/substance-history/substance-history.module') - .then(m => m.SubstanceHistoryModule), - }, - { - componentId: 'substance-ssg-parent-substance', - path: 'substance-ssg-parent-substance', - loadChildren: () => import('./substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.module') - .then(m => m.SubstanceSsgParentSubstanceModule), - }, - { - componentId: 'substance-ssg1-parent', - path: 'substance-ssg1-parent', - loadChildren: () => import('./substance-details/substance-ssg1-parent/substance-ssg1-parent.module') - .then(m => m.SubstanceSsg1ParentModule), - }, - { - componentId: 'substance-ssg-grade', - path: 'substance-ssg-grade', - loadChildren: () => import('./substance-details/substance-ssg-grade/substance-ssg-grade.module') - .then(m => m.SubstanceSsgGradeModule), - }, - { - componentId: 'substance-ssg-definition', - path: 'substance-ssg-definition', - loadChildren: () => import('./substance-details/substance-ssg-definition/substance-ssg-definition.module') - .then(m => m.SubstanceSsgDefinitionModule), - }, - { - componentId: 'substance-dependencies-image', - path: 'substance-dependencies-image', - loadChildren: () => import('./substance-details/substance-dependencies-image/substance-dependencies-image.module') - .then(m => m.SubstanceDependenciesImageModule), - }, - { - componentId: 'substance-form-definition', - path: 'substance-form-definition', - loadChildren: () => import('./substance-form/substance-form-definition/substance-form-definition.module') - .then(m => m.SubstanceFormDefinitionModule), - }, - { - componentId: 'substance-form-references', - path: 'substance-form-references', - loadChildren: () => import('./substance-form/references/substance-form-references.module') - .then(m => m.SubstanceFormReferencesModule), - }, - { - componentId: 'substance-form-names', - path: 'substance-form-names', - loadChildren: () => import('./substance-form/names/substance-form-names.module') - .then(m => m.SubstanceFormNamesModule), - }, - { - componentId: 'substance-form-structure', - path: 'substance-form-structure', - loadChildren: () => import('./substance-form/structure/substance-form-structure.module') - .then(m => m.SubstanceFormStructureModule), - }, - { - componentId: 'substance-form-moieties', - path: 'substance-form-moieties', - loadChildren: () => import('./substance-form/moieties/substance-form-moieties.module') - .then(m => m.SubstanceFormMoietiesModule), - }, - { - componentId: 'substance-form-codes-card', - path: 'substance-form-codes-card', - loadChildren: () => import('./substance-form/codes/substance-form-codes.module') - .then(m => m.SubstanceFormCodesModule), - }, - { - componentId: 'substance-form-relationships', - path: 'substance-form-relationships', - loadChildren: () => import('./substance-form/relationships/substance-form-relationships.module') - .then(m => m.SubstanceFormRelationshipsModule), - }, - { - componentId: 'substance-form-notes', - path: 'substance-form-notes', - loadChildren: () => import('./substance-form/notes/substance-form-notes.module') - .then(m => m.SubstanceFormNotesModule), - }, - { - componentId: 'substance-form-properties', - path: 'substance-form-properties', - loadChildren: () => import('./substance-form/properties/substance-form-properties.module') - .then(m => m.SubstanceFormPropertiesModule) - }, - { - componentId: 'substance-form-subunits', - path: 'substance-form-subunits', - loadChildren: () => import('./substance-form/substance-form-subunits/substance-form-subunits.module') - .then(m => m.SubstanceFormSubunitsModule) - }, - { - componentId: 'substance-form-other-links', - path: 'substance-form-other-links', - loadChildren: () => import('./substance-form/other-links/substance-form-other-links.module') - .then(m => m.SubstanceFormOtherLinksModule) - }, - { - componentId: 'substance-form-disulfide-links', - path: 'substance-form-disulfide-links', - loadChildren: () => import('./substance-form/disulfide-links/substance-form-disulfide-links.module') - .then(m => m.SubstanceFormDisulfideLinksModule) - }, - { - componentId: 'substance-form-glycosylation', - path: 'substance-form-glycosylation', - loadChildren: () => import('./substance-form/glycosylation/substance-form-glycosylation.module') - .then(m => m.SubstanceFormGlycosylationModule) - }, - { - componentId: 'substance-form-structural-modifications', - path: 'substance-form-structural-modifications', - loadChildren: () => import('./substance-form/structural-modifications/substance-form-structural-modifications.module') - .then(m => m.SubstanceFormStructuralModificationsModule) - }, - { - componentId: 'substance-form-agent-modifications-card', - path: 'substance-form-agent-modifications-card', - loadChildren: () => import('./substance-form/agent-modifications/substance-form-agent-modifications.module') - .then(m => m.SubstanceFormAgentModificationsModule) - }, - { - componentId: 'substance-form-physical-modifications', - path: 'substance-form-physical-modifications', - loadChildren: () => import('./substance-form/physical-modifications/substance-form-physical-modifications.module') - .then(m => m.SubstanceFormPhysicalModificationsModule) - }, - { - componentId: 'substance-form-protein-details', - path: 'substance-form-protein-details', - loadChildren: () => import('./substance-form/protein-details/substance-form-protein-details.module') - .then(m => m.SubstanceFormProteinDetailsModule) - }, - { - componentId: 'nucleic-acid-details-form', - path: 'nucleic-acid-details-form', - loadChildren: () => import('./substance-form/nucleic-acid-details-form/nucleic-acid-details-form.module') - .then(m => m.NucleicAcidDetailsFormModule) - }, - { - componentId: 'substance-form-links', - path: 'substance-form-links', - loadChildren: () => import('./substance-form/links/substance-form-links.module') - .then(m => m.SubstanceFormLinksModule) - }, - { - componentId: 'substance-form-sugars', - path: 'substance-form-sugars', - loadChildren: () => import('./substance-form/substance-form-sugars/substance-form-sugars.module') - .then(m => m.SubstanceFormSugarsModule) - }, - { - componentId: 'substance-form-mixture-details', - path: 'substance-form-mixture-details', - loadChildren: () => import('./substance-form/mixture-details/substance-form-mixture-details.module') - .then(m => m.SubstanceFormMixtureDetailsModule) - }, - { - componentId: 'substance-form-mixture-components', - path: 'substance-form-mixture-components', - loadChildren: () => import('./substance-form/mixture-components/substance-form-mixture-components.module') - .then(m => m.SubstanceFormMixtureComponentsModule) - }, - { - componentId: 'substance-form-structurally-diverse-source', - path: 'substance-form-structurally-diverse-source', - loadChildren: () => - import('./substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.module') - .then(m => m.SubstanceFormStructurallyDiverseSourceModule) - }, - { - componentId: 'substance-form-structurally-diverse-organism', - path: 'substance-form-structurally-diverse-organism', - loadChildren: () => - import('./substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.module') - .then(m => m.SubstanceFormStructurallyDiverseOrganismModule) - }, - { - componentId: 'substance-form-constituents', - path: 'substance-form-constituents', - loadChildren: () => import('./substance-form/constituents/substance-form-constituents.module') - .then(m => m.SubstanceFormConstituentsModule) - }, - { - componentId: 'substance-form-polymer-classification', - path: 'substance-form-polymer-classification', - loadChildren: () => import('./substance-form/polymer-classification/substance-form-polymer-classification.module') - .then(m => m.SubstanceFormPolymerClassificationModule) - }, - { - componentId: 'substance-form-monomers', - path: 'substance-form-monomers', - loadChildren: () => import('./substance-form/monomers/substance-form-monomers.module') - .then(m => m.SubstanceFormMonomersModule) - }, - { - componentId: 'substance-form-structural-units', - path: 'substance-form-structural-units', - loadChildren: () => import('./substance-form/structural-units/substance-form-structural-units.module') - .then(m => m.SubstanceFormStructuralUnitsModule) - }, - { - componentId: 'substance-form-change-reason', - path: 'substance-form-change-reason', - loadChildren: () => import('./substance-form/substance-form-change-reason/substance-form-change-reason.module') - .then(m => m.SubstanceFormChangeReasonModule), - }, - { - componentId: 'substance-form-ssg-parent-substance', - path: 'ssg-parent-substance-form', - loadChildren: () => import('./substance-form/ssg-parent-substance-form/ssg-parent-substance-form.module') - .then(m => m.SsgParentSubstanceFormModule) - }, - { - componentId: 'substance-form-ssg-grade', - path: 'ssg-grade-form', - loadChildren: () => import('./substance-form/ssg-grade-form/ssg-grade-form.module') - .then(m => m.SsgGradeFormModule) - }, - { - componentId: 'substance-form-ssg-definition', - path: 'ssg-definition-form', - loadChildren: () => import('./substance-form/ssg-definition-form/ssg-definition-form.module') - .then(m => m.SsgDefinitionFormModule) - }, - { - componentId: 'substance-form-ssg4m-process', - path: 'ssg4m-process-form', - loadChildren: () => import('./substance-ssg4m/ssg4m-process/substance-form-ssg4m-process.module') - .then(m => m.SubstanceSsg4mProcessModule) - }, - { - componentId: 'substance-form-ssg2-manufacturing', - path: 'substance-form-ssg2-manufacturing', - loadChildren: () => import('./substance-ssg2/ssg2-manufacturing/ssg2-manufacturing.module') - .then(m => m.Ssg2ManufacturingModule) - }, - { - componentId: 'substance-form-ssg2-overview', - path: 'substance-form-ssg2-overview', - loadChildren: () => import('./substance-ssg2/ssg2-overview-form/ssg2-overview-form.module') - .then(m => m.Ssg2OverviewFormModule) - } + { + componentId: 'structure-details', + path: 'structure-details', + loadChildren: () => import('./substance-details/structure-details/structure-details.module') + .then(m => m.StructureDetailsModule), + }, + { + componentId: 'substance-audit-info', + path: 'substance-audit-info', + loadChildren: () => import('./substance-details/substance-audit-info/substance-audit-info.module') + .then(m => m.SubstanceAuditInfoModule), + }, + { + componentId: 'substance-codes', + path: 'substance-codes', + loadChildren: () => import('./substance-details/substance-codes/substance-codes.module') + .then(m => m.SubstanceCodesModule), + }, + { + componentId: 'substance-subunits', + path: 'substance-subunits', + loadChildren: () => import('./substance-details/substance-subunits/substance-subunits.module') + .then(m => m.SubstanceSubunitsModule), + }, + { + componentId: 'substance-moieties', + path: 'substance-moieties', + loadChildren: () => import('./substance-details/substance-moieties/substance-moieties.module') + .then(m => m.SubstanceMoietiesModule), + }, + { + componentId: 'substance-names', + path: 'substance-names', + loadChildren: () => import('./substance-details/substance-names/substance-names.module') + .then(m => m.SubstanceNamesModule), + }, + { + componentId: 'substance-notes', + path: 'substance-notes', + loadChildren: () => import('./substance-details/substance-notes/substance-notes.module') + .then(m => m.SubstanceNotesModule), + }, + { + componentId: 'substance-overview', + path: 'substance-overview', + loadChildren: () => import('./substance-details/substance-overview/substance-overview.module') + .then(m => m.SubstanceOverviewModule), + }, + { + componentId: 'substance-references', + path: 'substance-references', + loadChildren: () => import('./substance-details/substance-references/substance-references.module') + .then(m => m.SubstanceReferencesModule), + }, + { + componentId: 'substance-relationships-visualization', + path: 'substance-relationships-visualization', + loadChildren: () => import('./substance-details/substance-relationships-visualization/substance-relationships-visualization.module') + .then(m => m.SubstanceRelationshipsVisualizationModule), + }, + { + componentId: 'substance-relationships', + path: 'substance-relationships', + loadChildren: () => import('./substance-details/substance-relationships/substance-relationships.module') + .then(m => m.SubstanceRelationshipsModule), + }, + { + componentId: 'substance-concept-definition', + path: 'substance-concept-definition', + loadChildren: () => import('./substance-details/substance-concept-definition/substance-concept-definition.module') + .then(m => m.SubstanceConceptDefinitionModule), + }, + { + componentId: 'substance-polymer-structure', + path: 'substance-polymer-structure', + loadChildren: () => import('./substance-details/substance-polymer-structure/substance-polymer-structure.module') + .then(m => m.SubstancePolymerStructureModule), + }, + { + componentId: 'substance-monomers', + path: 'substance-monomers', + loadChildren: () => import('./substance-details/substance-monomers/substance-monomers.module') + .then(m => m.SubstanceMonomersModule), + }, + { + componentId: 'substance-structural-units', + path: 'substance-structural-units', + loadChildren: () => import('./substance-details/substance-structural-units/substance-structural-units.module') + .then(m => m.SubstanceStructuralUnitsModule), + }, + { + componentId: 'substance-mixture-components', + path: 'substance-mixture-components', + loadChildren: () => import('./substance-details/substance-mixture-components/substance-mixture-components.module') + .then(m => m.SubstanceMixtureComponentsModule), + }, + { + componentId: 'substance-modifications', + path: 'substance-modifications', + loadChildren: () => import('./substance-details/substance-modifications/substance-modifications.module') + .then(m => m.SubstanceModificationsModule), + }, + { + componentId: 'substance-disulfide-links', + path: 'substance-disulfide-links', + loadChildren: () => import('./substance-details/substance-disulfide-links/substance-disulfide-links.module') + .then(m => m.SubstanceDisulfideLinksModule), + }, + { + componentId: 'substance-other-links', + path: 'substance-other-links', + loadChildren: () => import('./substance-details/substance-other-links/substance-other-links.module') + .then(m => m.SubstanceOtherLinksModule), + }, + { + componentId: 'substance-glycosylation', + path: 'substance-glycosylation', + loadChildren: () => import('./substance-details/substance-glycosylation/substance-glycosylation.module') + .then(m => m.SubstanceGlycosylationModule), + }, + { + componentId: 'substance-na-sugars', + path: 'substance-na-sugars', + loadChildren: () => import('./substance-details/substance-na-sugars/substance-na-sugars.module') + .then(m => m.SubstanceNaSugarsModule), + }, + { + componentId: 'substance-na-linkages', + path: 'substance-na-linkages', + loadChildren: () => import('./substance-details/substance-na-linkages/substance-na-linkages.module') + .then(m => m.SubstanceNaLinkagesModule), + }, + { + componentId: 'substance-properties', + path: 'substance-properties', + loadChildren: () => import('./substance-details/substance-properties/substance-properties.module') + .then(m => m.SubstancePropertiesModule), + }, + { + componentId: 'substance-constituents', + path: 'substance-constituents', + loadChildren: () => import('./substance-details/substance-constituents/substance-constituents.module') + .then(m => m.SubstanceConstituentsModule), + }, + { + componentId: 'substance-primary-definition', + path: 'substance-primary-definition', + loadChildren: () => import('./substance-details/substance-primary-definition/substance-primary-definition.module') + .then(m => m.SubstancePrimaryDefinitionModule), + }, + { + componentId: 'substance-alternative-definition', + path: 'substance-alternative-definition', + loadChildren: () => import('./substance-details/substance-alternative-definition/substance-alternative-definition.module') + .then(m => m.SubstanceAlternativeDefinitionModule), + }, + { + componentId: 'substance-variant-concepts', + path: 'substance-variant-concepts', + loadChildren: () => import('./substance-details/substance-variant-concepts/substance-variant-concepts.module') + .then(m => m.SubstanceVariantConceptsModule), + }, + { + componentId: 'substance-mixture-source', + path: 'substance-mixture-source', + loadChildren: () => import('./substance-details/substance-mixture-source/substance-mixture-source.module') + .then(m => m.SubstanceMixtureSourceModule), + }, + { + componentId: 'substance-mixture-parent', + path: 'substance-mixture-parent', + loadChildren: () => import('./substance-details/substance-mixture-parent/substance-mixture-parent.module') + .then(m => m.SubstanceMixtureParentModule), + }, + { + componentId: 'substance-hierarchy', + path: 'substance-hierarchy', + loadChildren: () => import('./substance-details/substance-hierarchy/substance-hierarchy.module') + .then(m => m.SubstanceHierarchyModule), + }, + { + componentId: 'substance-history', + path: 'substance-history', + loadChildren: () => import('./substance-details/substance-history/substance-history.module') + .then(m => m.SubstanceHistoryModule), + }, + { + componentId: 'substance-ssg-parent-substance', + path: 'substance-ssg-parent-substance', + loadChildren: () => import('./substance-details/substance-ssg-parent-substance/substance-ssg-parent-substance.module') + .then(m => m.SubstanceSsgParentSubstanceModule), + }, + { + componentId: 'substance-ssg1-parent', + path: 'substance-ssg1-parent', + loadChildren: () => import('./substance-details/substance-ssg1-parent/substance-ssg1-parent.module') + .then(m => m.SubstanceSsg1ParentModule), + }, + { + componentId: 'substance-ssg-grade', + path: 'substance-ssg-grade', + loadChildren: () => import('./substance-details/substance-ssg-grade/substance-ssg-grade.module') + .then(m => m.SubstanceSsgGradeModule), + }, + { + componentId: 'substance-ssg-definition', + path: 'substance-ssg-definition', + loadChildren: () => import('./substance-details/substance-ssg-definition/substance-ssg-definition.module') + .then(m => m.SubstanceSsgDefinitionModule), + }, + { + componentId: 'substance-dependencies-image', + path: 'substance-dependencies-image', + loadChildren: () => import('./substance-details/substance-dependencies-image/substance-dependencies-image.module') + .then(m => m.SubstanceDependenciesImageModule), + }, + { + componentId: 'substance-form-definition', + path: 'substance-form-definition', + loadChildren: () => import('./substance-form/substance-form-definition/substance-form-definition.module') + .then(m => m.SubstanceFormDefinitionModule), + }, + { + componentId: 'substance-form-references', + path: 'substance-form-references', + loadChildren: () => import('./substance-form/references/substance-form-references.module') + .then(m => m.SubstanceFormReferencesModule), + }, + { + componentId: 'substance-form-simplified-references', + path: 'substance-form-simplified-references', + loadChildren: () => import('./substance-form/simplified-references/substance-form-simplified-references.module') + .then(m => m.SubstanceFormSimplifiedReferencesModule), + }, + { + componentId: 'substance-form-names', + path: 'substance-form-names', + loadChildren: () => import('./substance-form/names/substance-form-names.module') + .then(m => m.SubstanceFormNamesModule), + }, + { + componentId: 'substance-form-simplified-names', + path: 'substance-form-simplified-names', + loadChildren: () => import('./substance-form/simplified-names/substance-form-simplified-names.module') + .then(m => m.SubstanceFormSimplifiedNamesModule), + }, + { + componentId: 'substance-form-structure', + path: 'substance-form-structure', + loadChildren: () => import('./substance-form/structure/substance-form-structure.module') + .then(m => m.SubstanceFormStructureModule), + }, + { + componentId: 'substance-form-moieties', + path: 'substance-form-moieties', + loadChildren: () => import('./substance-form/moieties/substance-form-moieties.module') + .then(m => m.SubstanceFormMoietiesModule), + }, + { + componentId: 'substance-form-codes-card', + path: 'substance-form-codes-card', + loadChildren: () => import('./substance-form/codes/substance-form-codes.module') + .then(m => m.SubstanceFormCodesModule), + }, + { + componentId: 'substance-form-simplified-codes-card', + path: 'substance-form-simplified-codes-card', + loadChildren: () => import('./substance-form/simplified-codes/substance-form-simplified-codes.module') + .then(m => m.SubstanceFormSimplifiedCodesModule), + }, + { + componentId: 'substance-form-relationships', + path: 'substance-form-relationships', + loadChildren: () => import('./substance-form/relationships/substance-form-relationships.module') + .then(m => m.SubstanceFormRelationshipsModule), + }, + { + componentId: 'substance-form-notes', + path: 'substance-form-notes', + loadChildren: () => import('./substance-form/notes/substance-form-notes.module') + .then(m => m.SubstanceFormNotesModule), + }, + { + componentId: 'substance-form-properties', + path: 'substance-form-properties', + loadChildren: () => import('./substance-form/properties/substance-form-properties.module') + .then(m => m.SubstanceFormPropertiesModule) + }, + { + componentId: 'substance-form-subunits', + path: 'substance-form-subunits', + loadChildren: () => import('./substance-form/substance-form-subunits/substance-form-subunits.module') + .then(m => m.SubstanceFormSubunitsModule) + }, + { + componentId: 'substance-form-other-links', + path: 'substance-form-other-links', + loadChildren: () => import('./substance-form/other-links/substance-form-other-links.module') + .then(m => m.SubstanceFormOtherLinksModule) + }, + { + componentId: 'substance-form-disulfide-links', + path: 'substance-form-disulfide-links', + loadChildren: () => import('./substance-form/disulfide-links/substance-form-disulfide-links.module') + .then(m => m.SubstanceFormDisulfideLinksModule) + }, + { + componentId: 'substance-form-glycosylation', + path: 'substance-form-glycosylation', + loadChildren: () => import('./substance-form/glycosylation/substance-form-glycosylation.module') + .then(m => m.SubstanceFormGlycosylationModule) + }, + { + componentId: 'substance-form-structural-modifications', + path: 'substance-form-structural-modifications', + loadChildren: () => import('./substance-form/structural-modifications/substance-form-structural-modifications.module') + .then(m => m.SubstanceFormStructuralModificationsModule) + }, + { + componentId: 'substance-form-agent-modifications-card', + path: 'substance-form-agent-modifications-card', + loadChildren: () => import('./substance-form/agent-modifications/substance-form-agent-modifications.module') + .then(m => m.SubstanceFormAgentModificationsModule) + }, + { + componentId: 'substance-form-physical-modifications', + path: 'substance-form-physical-modifications', + loadChildren: () => import('./substance-form/physical-modifications/substance-form-physical-modifications.module') + .then(m => m.SubstanceFormPhysicalModificationsModule) + }, + { + componentId: 'substance-form-protein-details', + path: 'substance-form-protein-details', + loadChildren: () => import('./substance-form/protein-details/substance-form-protein-details.module') + .then(m => m.SubstanceFormProteinDetailsModule) + }, + { + componentId: 'nucleic-acid-details-form', + path: 'nucleic-acid-details-form', + loadChildren: () => import('./substance-form/nucleic-acid-details-form/nucleic-acid-details-form.module') + .then(m => m.NucleicAcidDetailsFormModule) + }, + { + componentId: 'substance-form-links', + path: 'substance-form-links', + loadChildren: () => import('./substance-form/links/substance-form-links.module') + .then(m => m.SubstanceFormLinksModule) + }, + { + componentId: 'substance-form-sugars', + path: 'substance-form-sugars', + loadChildren: () => import('./substance-form/substance-form-sugars/substance-form-sugars.module') + .then(m => m.SubstanceFormSugarsModule) + }, + { + componentId: 'substance-form-mixture-details', + path: 'substance-form-mixture-details', + loadChildren: () => import('./substance-form/mixture-details/substance-form-mixture-details.module') + .then(m => m.SubstanceFormMixtureDetailsModule) + }, + { + componentId: 'substance-form-mixture-components', + path: 'substance-form-mixture-components', + loadChildren: () => import('./substance-form/mixture-components/substance-form-mixture-components.module') + .then(m => m.SubstanceFormMixtureComponentsModule) + }, + { + componentId: 'substance-form-structurally-diverse-source', + path: 'substance-form-structurally-diverse-source', + loadChildren: () => + import('./substance-form/structurally-diverse/substance-form-structurally-diverse-source/substance-form-structurally-diverse-source.module') + .then(m => m.SubstanceFormStructurallyDiverseSourceModule) + }, + { + componentId: 'substance-form-structurally-diverse-organism', + path: 'substance-form-structurally-diverse-organism', + loadChildren: () => + import('./substance-form/structurally-diverse/substance-form-structurally-diverse-organism/substance-form-structurally-diverse-organism.module') + .then(m => m.SubstanceFormStructurallyDiverseOrganismModule) + }, + { + componentId: 'substance-form-constituents', + path: 'substance-form-constituents', + loadChildren: () => import('./substance-form/constituents/substance-form-constituents.module') + .then(m => m.SubstanceFormConstituentsModule) + }, + { + componentId: 'substance-form-polymer-classification', + path: 'substance-form-polymer-classification', + loadChildren: () => import('./substance-form/polymer-classification/substance-form-polymer-classification.module') + .then(m => m.SubstanceFormPolymerClassificationModule) + }, + { + componentId: 'substance-form-monomers', + path: 'substance-form-monomers', + loadChildren: () => import('./substance-form/monomers/substance-form-monomers.module') + .then(m => m.SubstanceFormMonomersModule) + }, + { + componentId: 'substance-form-structural-units', + path: 'substance-form-structural-units', + loadChildren: () => import('./substance-form/structural-units/substance-form-structural-units.module') + .then(m => m.SubstanceFormStructuralUnitsModule) + }, + { + componentId: 'substance-form-change-reason', + path: 'substance-form-change-reason', + loadChildren: () => import('./substance-form/substance-form-change-reason/substance-form-change-reason.module') + .then(m => m.SubstanceFormChangeReasonModule), + }, + { + componentId: 'substance-form-ssg-parent-substance', + path: 'ssg-parent-substance-form', + loadChildren: () => import('./substance-form/ssg-parent-substance-form/ssg-parent-substance-form.module') + .then(m => m.SsgParentSubstanceFormModule) + }, + { + componentId: 'substance-form-ssg-grade', + path: 'ssg-grade-form', + loadChildren: () => import('./substance-form/ssg-grade-form/ssg-grade-form.module') + .then(m => m.SsgGradeFormModule) + }, + { + componentId: 'substance-form-ssg-definition', + path: 'ssg-definition-form', + loadChildren: () => import('./substance-form/ssg-definition-form/ssg-definition-form.module') + .then(m => m.SsgDefinitionFormModule) + }, + { + componentId: 'substance-form-ssg4m-process', + path: 'ssg4m-process-form', + loadChildren: () => import('./substance-ssg4m/ssg4m-process/substance-form-ssg4m-process.module') + .then(m => m.SubstanceSsg4mProcessModule) + }, + { + componentId: 'substance-form-ssg2-manufacturing', + path: 'substance-form-ssg2-manufacturing', + loadChildren: () => import('./substance-ssg2/ssg2-manufacturing/ssg2-manufacturing.module') + .then(m => m.Ssg2ManufacturingModule) + }, + { + componentId: 'substance-form-ssg2-overview', + path: 'substance-form-ssg2-overview', + loadChildren: () => import('./substance-ssg2/ssg2-overview-form/ssg2-overview-form.module') + .then(m => m.Ssg2OverviewFormModule) + } ]; diff --git a/src/app/core/assets/jsdraw/Scilligence.JSDraw2.Pro.js b/src/app/core/assets/jsdraw/Scilligence.JSDraw2.Pro.js index 84f46d3f5..b007bf5b5 100644 --- a/src/app/core/assets/jsdraw/Scilligence.JSDraw2.Pro.js +++ b/src/app/core/assets/jsdraw/Scilligence.JSDraw2.Pro.js @@ -25,8 +25,10 @@ JSDraw2.password = { encrypt: true, key: null, iv: null }; // Place the license code below // Licensed to: FDA // Product: JSDraw -// Expiration Date: 2024-Jul-30 +// Expiration Date: 2025-Jul-30 JSDraw2.licensecode='405562538916781761723242424242424131213141512181'; + + ////////////////////////////////////////////////////////////////////////////////// // JSDraw default settings diff --git a/src/app/core/assets/ketcher (copy)/LICENSE b/src/app/core/assets/ketcher (copy)/LICENSE deleted file mode 100644 index 688300407..000000000 --- a/src/app/core/assets/ketcher (copy)/LICENSE +++ /dev/null @@ -1,201 +0,0 @@ - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright 2018 EPAM Systems - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. diff --git a/src/app/core/assets/ketcher (copy)/demo.html b/src/app/core/assets/ketcher (copy)/demo.html deleted file mode 100644 index 863fb5b6c..000000000 --- a/src/app/core/assets/ketcher (copy)/demo.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - Ketcher demo - - - - - - - -

Ketcher example

- - -

Ketcher interaction example

-
- - - - - - - - - -
- - diff --git a/src/app/core/assets/ketcher (copy)/doc/analyse.png b/src/app/core/assets/ketcher (copy)/doc/analyse.png deleted file mode 100644 index caa9c328f..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/analyse.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/atom-dialog.png b/src/app/core/assets/ketcher (copy)/doc/atom-dialog.png deleted file mode 100644 index 28b8fa92c..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/atom-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/attpoints-dialog.png b/src/app/core/assets/ketcher (copy)/doc/attpoints-dialog.png deleted file mode 100644 index 96058efd1..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/attpoints-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/bond-dialog.png b/src/app/core/assets/ketcher (copy)/doc/bond-dialog.png deleted file mode 100644 index c87a44837..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/bond-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/bond-types.png b/src/app/core/assets/ketcher (copy)/doc/bond-types.png deleted file mode 100644 index 124104069..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/bond-types.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/bond.png b/src/app/core/assets/ketcher (copy)/doc/bond.png deleted file mode 100644 index e1a168bb6..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/bond.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/bonds.png b/src/app/core/assets/ketcher (copy)/doc/bonds.png deleted file mode 100644 index b2510bb70..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/bonds.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/chain.png b/src/app/core/assets/ketcher (copy)/doc/chain.png deleted file mode 100644 index 0e3a0a845..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/chain.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/charge.png b/src/app/core/assets/ketcher (copy)/doc/charge.png deleted file mode 100644 index e0bf0885e..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/charge.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/check.png b/src/app/core/assets/ketcher (copy)/doc/check.png deleted file mode 100644 index 948e1f1e3..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/check.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/collapsed.png b/src/app/core/assets/ketcher (copy)/doc/collapsed.png deleted file mode 100644 index 4715ad9d2..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/collapsed.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/expanded.png b/src/app/core/assets/ketcher (copy)/doc/expanded.png deleted file mode 100644 index 225df45dd..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/expanded.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/generic-groups.png b/src/app/core/assets/ketcher (copy)/doc/generic-groups.png deleted file mode 100644 index be8aa9f80..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/generic-groups.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/help.html b/src/app/core/assets/ketcher (copy)/doc/help.html deleted file mode 100644 index 9f800fa10..000000000 --- a/src/app/core/assets/ketcher (copy)/doc/help.html +++ /dev/null @@ -1,686 +0,0 @@ -

Ketcher is a tool to draw molecular structures and chemical -reactions.

-

Ketcher Overview

-

Ketcher is a tool to draw molecular structures and chemical -reactions. Ketcher operates in two modes, the Server mode with most -functions available and the client mode with limited functions -available.

-

Ketcher consists of the following elements:

-

-

Note : Depending on the screen size, some tools on the Tool -palette can be displayed in expanded or collapsed forms.

-

Using the Tool palette, you can

- -

To select one atom or bond, click Lasso or Rectangle Selection tool, -and then click the atom or bond.

-

To select the entire structure:

- -

To select multiple atoms, bonds, structures, or other objects, do one -of the following:

- -

Note : Ctrl+Shift-click with the Lasso or Rectangle Selection tool -selects several structures.

-

You can use the buttons of the Main toolbar:

-

- -

Note : Layout, Clean Up, Aromatize / Dearomatize, -Calculate CIP, Check Structure, Calculated Values, -Recognize Molecule and 3D View buttons are active only in the -Server mode.

-

3D Viewer

-

The structure appears in a modal window after clicking on the 3D -Viewer button:

-

-

You can perform the following actions:

- -

Ketcher Settings allow to change the appearance of the structure and background coloring.

-

“Lines” drawing method, “Bright” atom name coloring -method and “Light” background coloring are default.

-

Drawing Atoms

-

To draw/edit atoms you can:

- -

Drawing Bonds

-

To draw/edit bonds you can:

- -

Drawing R-Groups

-

Use the R-Group toolbox to draw R-groups in Markush -structures:

-

-

Selecting the R-Group Label Tool and clicking on an atom in the -structure invokes the dialog to select the R-Group label for a current -atom position in the structure:

-

-

Selecting the R-Group label and clicking OK converts the structure -into a Markush structure with the selected R-Group label:

-

-

Note : You can choose several R-Group labels simultaneously:

-

-

Particular chemical fragments that may be substituted for a given -R-Group form a set of R-Group members. R-Group members can be any -structural fragment, including functional groups and single atoms or -atom lists.

-

To create a set of R-Group members:

-
    -
  1. -

    Draw a structure to become an R-Group member.

    -
  2. -
  3. -

    Select the structure using the R-Group Fragment Tool to invoke -the R-Group dialog; in this dialog select the label of the -R-Group to assign the fragment to.

    -
  4. -
  5. -

    Click on OK to convert the structure into an R-Group member.

    -
  6. -
-

An R-Group attachment point is the atom in an R-Group member fragment -that attaches the fragment to the initial Markush structure.

-

Selecting the Attachment Point Tool and clicking on an atom in the -R-Group fragment converts this atom into an attachment point. If the -R-Group contains more than one attachment point, you can specify one -of them as primary and the other as secondary. You can select between -either the primary or secondary attachment point using the dialog that -appears after clicking on the atom:

-

-

If there are two attachment points on an R-Group member, there must be -two corresponding attachments (bonds) to the R-Group atom that has the -same R-Group label. Clicking on OK in the above dialog creates the -attachment point.

-

Schematically, the entire process of the R-Group member creation can -be presented as:

-

-

-

R-Group Logic

-

Ketcher enables one to add logic when using R-Groups. To access -the R-Group logic:

-
    -
  1. -

    Create an R-Group member fragment as described above.

    -
  2. -
  3. -

    Move the cursor over the entire fragment for the green frame to -appear, then click inside the fragment. The following dialog -appears:

    -

    -
  4. -
  5. -

    Specify Occurrence to define how many of an R-Group -occurs. If an R-Group atom appears several times in the initial -structure, you will specify Occurrence">n", n -being the number of occurrences; if it appears once, you see -"R1 > 0".

    -
  6. -
  7. -

    Specify H at unoccupied R-Group sites ( RestH ): check or -clear the checkbox.

    -
  8. -
  9. -

    Specify the logical Condition. Use the R-Group condition If -R(i) Then to specify whether the presence of an R-Group is -dependent on the presence of another R-Group.

    -
  10. -
-

Marking S-Groups

-

To mark S-Groups, use the S-Group tool and the -following dialog that appears after selecting a fragment with this -tool:

-

-

Available S-Group types:

-

Generic

-

Generic is a pair of brackets without any labels.

-

Multiple group

-

A Multiple group indicates a number of replications of a fragment or a part of a -structure in contracted form.

-

SRU Polymer

-

The Structural Repeating Unit (SRU) brackets enclose the structural -repeating of a polymer. You have three available patterns: -head-to-tail (the default), head-to-head, and either/unknown.

-

Superatom

-

An abbreviated structure (abbreviation) is all or part of a structure -(molecule or reaction component) that has been abbreviated to a text -label. Structures that you abbreviate keep their chemical -significance, but their underlying structure is hidden. The current -version can't display contracted structures but correctly -saves/reads them into/from files.

-

Data S-Groups

-

The Data S-Groups Tool is a separate tool for -comfortable use with the accustomed set of descriptors (like Attached -Data in Marvin Editor).

-

You can attach data to an atom, a fragment, a single bond, or a -group. The defined set of Names and Values is introduced for each -type of selected elements:

-

- -

Changing Structure Display

-

Use the Flip/Rotate tool to change the structure -display:

-

-

For the full screen format, the Flip/Rotate tool is split into -separate buttons:

-

-

Rotate Tool

-

This tool allows rotating objects.

- -

Select any bond on the structure and click Alt+H to rotate the structure so that the selected bond is placed horizontally. -Select any bond on the structure and click Alt+V to rotate the structure so that the selected bond is placed vertically.

-

Flip Tool

-

This tool flips the objects horizontally or vertically.

- -

Drawing Reactions

-

To draw/edit reactions you can

- -

Note : Reaction Auto-Mapping Tool is available only in the Server -mode.

-

Templates toolbar

-

You can add templates (rings or other predefined structures) to the -structure using the Templates toolbar together with the Custom -Templates button located at the bottom:

-

-

To add a ring to the molecule, select a ring from the toolbar and -click inside the drawing area, or click on an atom or a bond in the -molecule.

-

Rules of using templates:

- -

Note : The added template will be fused by the default attachment -atom or bond preset in the program.

-

Note : User is able to define the attachment atom and bond by clicking -the Edit button for template structure.

-

The Custom Templates button invokes the scrolling -list of templates available in the program; both built-in and created -by user:

-

-

To create a user template:

- -

Working with Files

-

Ketcher supports the following molecular formats that can be entered -either manually or from files:

- -

You can use the Open… and Save As… buttons of the Main -toolbar to import a molecule from a molecular file or save it to a -supported molecular file format. The Open Structure dialog enables -one to either browse for a file (Server mode) or manually input, e.g., -the Molfile ctable for the molecule to be imported:

-

-

The Save Structure dialog enables one to save the molecular file:

-

-

Note : In the standalone version only mol/rxn are supported for -Open and mol/rxn/SMILES for Save.

-

Hotkeys

-

You can use keyboard hotkeys (including Numeric keypad) for some -features/commands of the Editor. To display the hotkeys just place the -cursor over a toolbar button. If a hotkey is available for the button, -it will appear in brackets after the description of the button.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
KeyAction
EscSwitching between the Lasso/Rectangle/Fragment Selection tools
DelDelete the selected objects
0Draw Any bond.
1Single / Single Up / Single Down / Single Up/Down bond. Consecutive pressing switches between these types.
2Double / Double Cis/Trans bond
3Draw a triple bond.
4Draw an aromatic bond.
5Charge Plus/Charge Minus
ADraw any atom
HDraw a hydrogen
CDraw a carbon
NDraw a nitrogen
ODraw an oxygen
SDraw a sulfur
FDraw a fluorine
PDraw a phosphorus
IDraw an iodine
TBasic templates. Consecutive pressing switches between different templates
Shift+tOpen template library
Alt+rRotate tool
Alt+vFlip vertically
Alt+hFlip horizontally
Ctrl+gS-Group tool / Data S-Group tool
Ctrl+dAlign and select all S-Group data
Ctrl+rSwitching between the R-Group Label Tool/R-Group Fragment Tool/Attachment Point Tool
Ctrl+Shift+rR-Group Fragment Tool
Ctrl+DelClear canvas
Ctrl+oOpen
Ctrl+sSave As
Ctrl+zUndo
Ctrl+Shift+zRedo
Ctrl+xCut selected objects
Ctrl+cCopy selected objects
Ctrl+vPaste selected objects
+Zoom In
-Zoom Out
Ctrl+lLayout
Ctrl+Shift+lClean Up
Ctrl+pCalculate CIP
?Help
-

Note : Please, use Ctrl+V to paste the selected object in -Google Chrome and Mozilla Firefox browsers.

-

Note 2 : Probably, you have forbidden access to the local storage. -If you are using IE10 or IE11 and didn’t forbid access to local storage -intentionally, you can pay attention here: https://stackoverflow.com/a/20848924

diff --git a/src/app/core/assets/ketcher (copy)/doc/inline-edit.png b/src/app/core/assets/ketcher (copy)/doc/inline-edit.png deleted file mode 100644 index 072d4d9ca..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/inline-edit.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/main.png b/src/app/core/assets/ketcher (copy)/doc/main.png deleted file mode 100644 index 2c579ceb2..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/main.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/miew-menu.png b/src/app/core/assets/ketcher (copy)/doc/miew-menu.png deleted file mode 100644 index e1312f74c..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/miew-menu.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/miew.png b/src/app/core/assets/ketcher (copy)/doc/miew.png deleted file mode 100644 index de9e6bb3a..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/miew.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/open.png b/src/app/core/assets/ketcher (copy)/doc/open.png deleted file mode 100644 index 38f7e20c3..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/open.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/periodic-dialog-ext.png b/src/app/core/assets/ketcher (copy)/doc/periodic-dialog-ext.png deleted file mode 100644 index c674ebc9a..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/periodic-dialog-ext.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/periodic-dialog.png b/src/app/core/assets/ketcher (copy)/doc/periodic-dialog.png deleted file mode 100644 index bd26862e8..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/periodic-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/periodic-table.png b/src/app/core/assets/ketcher (copy)/doc/periodic-table.png deleted file mode 100644 index 1233943b9..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/periodic-table.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/reaction-types.png b/src/app/core/assets/ketcher (copy)/doc/reaction-types.png deleted file mode 100644 index ba2b5e6ea..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/reaction-types.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/reaction.png b/src/app/core/assets/ketcher (copy)/doc/reaction.png deleted file mode 100644 index e4dfa04d4..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/reaction.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup-dialog.png b/src/app/core/assets/ketcher (copy)/doc/rgroup-dialog.png deleted file mode 100644 index 6320dc473..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup-example1.png b/src/app/core/assets/ketcher (copy)/doc/rgroup-example1.png deleted file mode 100644 index 829f2d252..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup-example1.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup-example2.png b/src/app/core/assets/ketcher (copy)/doc/rgroup-example2.png deleted file mode 100644 index 39a475ef7..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup-example2.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup-example3.png b/src/app/core/assets/ketcher (copy)/doc/rgroup-example3.png deleted file mode 100644 index 8f91b31a4..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup-example3.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup-example4.png b/src/app/core/assets/ketcher (copy)/doc/rgroup-example4.png deleted file mode 100644 index f974ebc65..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup-example4.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup-types.png b/src/app/core/assets/ketcher (copy)/doc/rgroup-types.png deleted file mode 100644 index 107d52f23..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup-types.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rgroup.png b/src/app/core/assets/ketcher (copy)/doc/rgroup.png deleted file mode 100644 index 8bc2ae2a3..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rgroup.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rlogic-dialog.png b/src/app/core/assets/ketcher (copy)/doc/rlogic-dialog.png deleted file mode 100644 index f11b0d8c7..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rlogic-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/rotate.png b/src/app/core/assets/ketcher (copy)/doc/rotate.png deleted file mode 100644 index 08ab1f1a5..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/rotate.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/save.png b/src/app/core/assets/ketcher (copy)/doc/save.png deleted file mode 100644 index c98f56e9d..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/save.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/sdata-dialog.png b/src/app/core/assets/ketcher (copy)/doc/sdata-dialog.png deleted file mode 100644 index a97dbcecd..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/sdata-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/sdata.png b/src/app/core/assets/ketcher (copy)/doc/sdata.png deleted file mode 100644 index 07f77d72f..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/sdata.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/settings.png b/src/app/core/assets/ketcher (copy)/doc/settings.png deleted file mode 100644 index 9f847b3b5..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/settings.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/sgroup-data-dialog.png b/src/app/core/assets/ketcher (copy)/doc/sgroup-data-dialog.png deleted file mode 100644 index bd34ec857..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/sgroup-data-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/sgroup-dialog.png b/src/app/core/assets/ketcher (copy)/doc/sgroup-dialog.png deleted file mode 100644 index 4ae375621..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/sgroup-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/sgroup.png b/src/app/core/assets/ketcher (copy)/doc/sgroup.png deleted file mode 100644 index 6b449c0bc..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/sgroup.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/template-dialog.png b/src/app/core/assets/ketcher (copy)/doc/template-dialog.png deleted file mode 100644 index b4e34da49..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/template-dialog.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/template-example1.png b/src/app/core/assets/ketcher (copy)/doc/template-example1.png deleted file mode 100644 index f3b3ff416..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/template-example1.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/template-example2.png b/src/app/core/assets/ketcher (copy)/doc/template-example2.png deleted file mode 100644 index c7ee5267a..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/template-example2.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/template-example3.png b/src/app/core/assets/ketcher (copy)/doc/template-example3.png deleted file mode 100644 index 2f11d6322..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/template-example3.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/template-lib.png b/src/app/core/assets/ketcher (copy)/doc/template-lib.png deleted file mode 100644 index 47e1329e2..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/template-lib.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/template.png b/src/app/core/assets/ketcher (copy)/doc/template.png deleted file mode 100644 index feee2c3c2..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/template.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/toolbar.png b/src/app/core/assets/ketcher (copy)/doc/toolbar.png deleted file mode 100644 index 86c6a2d56..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/toolbar.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/transform-types.png b/src/app/core/assets/ketcher (copy)/doc/transform-types.png deleted file mode 100644 index ca1a9747a..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/transform-types.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/doc/transform.png b/src/app/core/assets/ketcher (copy)/doc/transform.png deleted file mode 100644 index 7dec6baad..000000000 Binary files a/src/app/core/assets/ketcher (copy)/doc/transform.png and /dev/null differ diff --git a/src/app/core/assets/ketcher (copy)/ketcher.css b/src/app/core/assets/ketcher (copy)/ketcher.css deleted file mode 100644 index 35ec59de9..000000000 --- a/src/app/core/assets/ketcher (copy)/ketcher.css +++ /dev/null @@ -1,2 +0,0 @@ -/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type=checkbox],[type=radio]{-webkit-box-sizing:border-box;box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}button,input[type=button],input[type=reset],input[type=submit]{display:inline-block;margin:0;text-align:center;vertical-align:middle;background-image:none;border:1px solid transparent;padding:.42em .85em;color:#333;background-color:#fff;border-color:#ccc;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button:focus,button:hover,input[type=button]:focus,input[type=button]:hover,input[type=reset]:focus,input[type=reset]:hover,input[type=submit]:focus,input[type=submit]:hover{background-image:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#ededed));background-image:linear-gradient(to bottom,#fff,#ededed);outline:0}button:active,input[type=button]:active,input[type=reset]:active,input[type=submit]:active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}button.disabled,button[disabled],fieldset[disabled] button,fieldset[disabled] input[type=button],fieldset[disabled] input[type=reset],fieldset[disabled] input[type=submit],input[type=button].disabled,input[type=button][disabled],input[type=reset].disabled,input[type=reset][disabled],input[type=submit].disabled,input[type=submit][disabled]{background-image:none;cursor:not-allowed;opacity:.5;-webkit-box-shadow:none;box-shadow:none}button.save-button,input[type=button].save-button,input[type=reset].save-button,input[type=submit].save-button{float:left}button.open-button,input[type=button].open-button,input[type=reset].open-button,input[type=submit].open-button{float:left}button>input[type=file],input[type=button]>input[type=file],input[type=reset]>input[type=file],input[type=submit]>input[type=file]{left:-9999px;position:absolute}button+button,button+input[type=button],button+input[type=reset],button+input[type=submit],input[type=button]+button,input[type=button]+input[type=button],input[type=button]+input[type=reset],input[type=button]+input[type=submit],input[type=reset]+button,input[type=reset]+input[type=button],input[type=reset]+input[type=reset],input[type=reset]+input[type=submit],input[type=submit]+button,input[type=submit]+input[type=button],input[type=submit]+input[type=reset],input[type=submit]+input[type=submit]{margin-left:.3em}input[type=number]:active,input[type=number]:focus,input[type=search]:active,input[type=search]:focus,input[type=text]:active,input[type=text]:focus,select:active,select:focus,textarea:active,textarea:focus{outline:0}input[type=number]:focus,input[type=number]:hover,input[type=search]:focus,input[type=search]:hover,input[type=text]:focus,input[type=text]:hover,select:focus,select:hover,textarea:focus,textarea:hover{-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12)}fieldset[disabled] input[type=number],fieldset[disabled] input[type=search],fieldset[disabled] input[type=text],fieldset[disabled] select,fieldset[disabled] textarea,input[type=number][disabled],input[type=number][readonly],input[type=search][disabled],input[type=search][readonly],input[type=text][disabled],input[type=text][readonly],select[disabled],select[readonly],textarea[disabled],textarea[readonly]{cursor:not-allowed;background:#efefef;opacity:.6}.suggestList{border:1px solid #3297fd;position:absolute;background-color:#fff;margin-left:3px;padding-left:3px;width:93%;z-index:3}.suggestList li:hover{background-color:#3297fd;color:#fff}label[data-error] input[type=number],label[data-error] input[type=search],label[data-error] input[type=text],label[data-error] select,label[data-error] textarea{border:1px solid #f55}label[data-error] input[type=number]:focus,label[data-error] input[type=number]:hover,label[data-error] input[type=search]:focus,label[data-error] input[type=search]:hover,label[data-error] input[type=text]:focus,label[data-error] input[type=text]:hover,label[data-error] select:focus,label[data-error] select:hover,label[data-error] textarea:focus,label[data-error] textarea:hover{-webkit-box-shadow:inset 0 0 1px 1px rgba(255,85,85,.12);box-shadow:inset 0 0 1px 1px rgba(255,85,85,.12)}label[data-error]:hover:after{content:"Error: " attr(data-error);display:block;position:fixed;white-space:pre;padding:.35em;background:#fee;border:1px solid #f55;border-radius:4px;line-height:1em;font-size:.9em;z-index:2}input[type=checkbox],input[type=radio]{vertical-align:middle;margin:0 .3em;line-height:normal}fieldset{border:1px solid #ccc;padding:.3em;margin:0;border-radius:4px}fieldset>li{display:inline-block}fieldset.-hidden,form.atom-props .main{border-color:transparent;margin-top:1.5em}legend{color:#8c8c8c;padding:0 .4em;font-size:.9em;text-align:left}.-SelectList,.analyse .chem-input,.template-lib .groups,input[type=number],input[type=search],input[type=text],select,textarea{border-radius:4px;display:inline-block;vertical-align:middle;background:#fff;line-height:1.42857143;height:2.4em;padding:.35em .15em .35em .3em;margin:2px;border:1px solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-box-sizing:border-box;box-sizing:border-box}.template-lib .groups li{display:block;padding:0 2px 1px;cursor:default}.template-lib .groups li:hover{background-color:#f2f2f2}.template-lib .groups li.selected{color:#fff;background-color:#9dc2d0}.template-lib .groups li.split{margin-top:2px;padding-top:2px;border-top:1px #ccc solid}.check .tabs,.elements-table .tabs{outline:0}.check .tabs .tabs,.elements-table .tabs .tabs{width:100%}.check .tabs .tabs a,.elements-table .tabs .tabs a{padding:8px 12px;margin-right:2px;line-height:14px;display:inline-block;cursor:pointer;text-align:center;background-color:#eee;border:1px solid transparent;border-radius:4px 4px 0 0}.check .tabs .tabs a:hover,.elements-table .tabs .tabs a:hover{background-color:#9dc2d0}.check .tabs .tabs a.active,.elements-table .tabs .tabs a.active{border:1px solid #ddd;border-bottom-color:transparent;background-color:#fff}form.settings .accordion{margin:.3em}form.settings .accordion .ac_tab{margin-top:2px}form.settings .accordion .ac_tab>a:first-child{z-index:3;padding:6px 0;display:block;cursor:pointer;text-align:center;background-color:#eee;border:1px solid #ccc;-webkit-transition:border-radius .1s linear;transition:border-radius .1s linear}form.settings .accordion .ac_tab>a:first-child:before{margin-left:30px;float:left}form.settings .accordion .ac_tab>a:first-child:hover{background-color:#9dc2d0}form.settings .accordion .ac_tab>:nth-child(2){overflow:hidden;-webkit-transition-property:height,padding;transition-property:height,padding;-webkit-transition-duration:.5s;transition-duration:.5s;-webkit-transition-timing-function:linear;transition-timing-function:linear}form.settings .accordion .ac_tab.active>a:first-child{border-radius:6px 6px 0 0;border-bottom:0;-webkit-transition-delay:0s;transition-delay:0s}form.settings .accordion .ac_tab.active>a:first-child:before{content:'−'}form.settings .accordion .ac_tab.hidden>a:first-child{border-radius:6px;-webkit-transition-delay:.4s;transition-delay:.4s}form.settings .accordion .ac_tab.hidden>a:first-child:before{content:'+'}form.settings .accordion .ac_tab.hidden>:nth-child(2){height:0;padding:0;border:0}#canvas .measure-log{background-color:#fff;border:#ccc 1px solid;border-radius:0 5px;width:8em;height:1.2em;padding:.3em;text-align:center;opacity:0;-webkit-transition:opacity .5s;transition:opacity .5s}.ket-overlay{position:fixed;left:0;top:0;bottom:0;right:0;z-index:40;text-align:center;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210%22%20height%3D%2210%22%3E%3Cpath%20d%3D%22M0%2010L10%200zm12-2l-4%204zM-2%202l4-4z%22%20stroke%3D%22%23555%22%20stroke-width%3D%222%22%20stroke-opacity%3D%22.02%22%2F%3E%3C%2Fsvg%3E);background-color:rgba(119,119,119,.2)}.ket-overlay.animate{-webkit-transition:background-color .3s;transition:background-color .3s}.ket-overlay.hide{background-color:rgba(119,119,119,.01)}.ket-overlay:after{content:'';display:inline-block;height:100%;vertical-align:middle}.ket-overlay form[role=dialog]{outline:0;display:inline-block;position:relative;vertical-align:middle}.ket-spinner{margin:auto;display:block;border:16px solid #f3f3f3;border-top:16px solid #00f;border-radius:50%;width:5em;height:5em;-webkit-animation:spin 3s linear infinite;animation:spin 3s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}form[role=dialog]{text-align:left;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,.3);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);background-clip:padding-box;overflow:visible;opacity:1;-webkit-transform:scale(1);transform:scale(1);-webkit-transition:opacity .3s,-webkit-transform .3s;transition:opacity .3s,-webkit-transform .3s;transition:transform .3s,opacity .3s;transition:transform .3s,opacity .3s,-webkit-transform .3s}form[role=dialog].hide{opacity:.2;-webkit-transform:scale(.5);transform:scale(.5)}form[role=dialog]>*{margin:.3em}form[role=dialog] footer,form[role=dialog] header{margin:0;padding:.2em .6em;background-color:#f5f5f5}form[role=dialog] header{font-size:1.6em;font-weight:600;line-height:1.3;border-bottom:1px solid #ddd;border-radius:6px 6px 0 0}form[role=dialog] footer{clear:both;border-top:1px solid #ddd;border-radius:0 0 6px 6px;text-align:right}form[role=dialog] .close{padding:0;border:0;background:0 0;-webkit-box-shadow:none;box-shadow:none;position:absolute;top:0;right:.3em;color:#999;font-size:.8em;font-weight:700;text-shadow:0 1px 0 #fff;opacity:.5}form[role=dialog] .close:hover{opacity:1}.template-lib label{position:absolute;right:0;left:0;text-align:center;line-height:2.6em}.template-lib label input[type=search]{float:right;width:660px}.template-lib .groups{margin-top:3.5em;height:27em;width:11em;float:left;overflow:hidden}.template-lib .table{margin-top:3.5em;padding:0;float:left;width:550px;height:27em;overflow:auto}.template-lib .tr{height:120px}.template-lib .td{width:33%;float:left;height:100%;position:relative}.template-lib .td:before{position:absolute;z-index:10;left:.3em;top:0;padding:0 4px;border-radius:3px;font-size:10px;color:grey;background-color:#fff;content:attr(title)}.template-lib .td.selected .struct{background-color:#d1e2e9}.template-lib .attach-button{margin:0 4px 2px 0;position:absolute;bottom:0;right:0}.template-lib .struct{position:absolute;display:block;-webkit-box-sizing:border-box;box-sizing:border-box;padding:1em;width:98%;height:98%;border:1px solid #ccc;border-radius:5px}.template-lib .struct:hover{background:#f2f2f2}.template-lib div.struct{padding:0}form.bond label{text-align:right;display:block}form.bond select{width:12em}form.atom-props fieldset{margin-top:.7em;text-align:right}form.atom-props fieldset label{margin:.3em 0;display:inline-block}form.atom-props .main{width:14.5em;float:left}form.atom-props .main input{width:8em}form.atom-props .query,form.atom-props .reaction{float:right;clear:right;width:16em}form.atom-props .query input[type=checkbox],form.atom-props .reaction input[type=checkbox]{margin:.6em .3em}form.attach-points form{width:17em;text-align:right}form.attach-points form label{margin:1.03333333em;display:inline-block}form.automap{width:22em}form.automap label{display:block;text-align:right;line-height:3.1em}form.rgroup-logic label{display:inline-block;text-align:right;line-height:3.1em}form.rgroup-logic .cond{display:block}form.rgroup-logic input[type=text]{width:7em}.sgroup,.sgroup-special{width:20em}.sgroup label,.sgroup-special label{display:block;text-align:right}.sgroup label input,.sgroup label select,.sgroup-special label input,.sgroup-special label select{width:10em}.sgroup label:hover:after,.sgroup-special label:hover:after{margin:1px 0 0 3px}.sgroup fieldset,.sgroup-special fieldset{border:0;padding:0}.sgroup .data label,.sgroup-special .data label{text-align:left}.sgroup .data label fieldset.radio label,.sgroup-special .data label fieldset.radio label{margin:.4em;display:inline-block}.sgroup .data label fieldset.radio input[type=radio],.sgroup-special .data label fieldset.radio input[type=radio]{width:auto}.sgroup .data select[name=fieldValue],.sgroup .data textarea,.sgroup-special .data select[name=fieldValue],.sgroup-special .data textarea{display:block;width:19em;height:12em;overflow:auto}.sgroup .data input[type=text],.sgroup .data select[name=fieldName],.sgroup-special .data input[type=text],.sgroup-special .data select[name=fieldName]{width:19em;display:block;margin-bottom:0}form.settings{width:35em}form.settings .save-button{margin-left:10px}form.settings .warning{margin:.3em}form.settings .accordion fieldset{border-radius:0 0 6px 6px;height:12.4em}form.settings .accordion fieldset.server{height:15.5em}form.settings .accordion fieldset.miew{height:9.3em}form.settings .accordion fieldset.render{height:24.8em}form.settings .accordion label{display:block;text-align:right;line-height:3.1em;height:3.1em}form.settings .accordion label input,form.settings .accordion label select{width:50%}form.settings .accordion label div{margin:2px;width:50%}form.settings .accordion label div input{margin:0 4px 0 0}form.settings .accordion label div select{margin:0}form.settings .accordion label:hover:after{left:50%}.about{width:25em}.about>a{display:block;margin:2em 1em}.about var{margin-left:.5em;font-style:normal;font-weight:700;display:inline-block}.about time{font-style:italic}.about a{color:#1a7090}.about a:hover{color:#5e5e5e}.about dl{position:relative;margin:0 1em 1em;vertical-align:bottom;line-height:1.4em}.about dd{text-align:right;margin-bottom:.5em}.about dt+dd{margin:-1.4em 0 0}.rgroup ul{width:25.6em;padding:.5em}.rgroup li{display:inline-block;margin:.2em .1em}.rgroup form button{font-size:1.3em;width:2.3em;height:2em;line-height:1;vertical-align:middle;padding:.15em;background:inherit}.rgroup form button:first-letter{font-weight:600;color:#666}.rgroup form button:hover{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(1.005);transform:scale(1.005);-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12)}.rgroup form button:active{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:none;box-shadow:none}.rgroup form button.selected{background:#444;color:#fff}.rgroup form button.selected>span{color:#fff}.rgroup form button.selected>svg{fill:#fff;stroke:#fff;stroke-width:5}.rgroup form button.selected:first-letter{color:#b3b3b3}.elements-table{width:57em}.elements-table .tabs .tabs-content{height:31em}.elements-table .period-table{position:relative}.elements-table .period-table table{position:relative}.elements-table .period-table td,.elements-table .period-table th{padding:0;margin:0;text-align:center;vertical-align:middle}.elements-table .period-table td.ref,.elements-table .period-table th{opacity:.6;font-weight:400;font-size:.8em;padding:.3em .8em}.elements-table .period-table th.ref{vertical-align:top;text-align:right}.elements-table .period-table tr:nth-of-type(8){border-bottom:1em solid transparent}.elements-table .period-table .ket-atom-info{position:absolute;padding:.75em .75em;left:18em;top:2em;width:7em;-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);opacity:1;-webkit-transition:opacity 1s,visibility 0s;transition:opacity 1s,visibility 0s}.elements-table .period-table .ket-atom-info.none{opacity:0;-webkit-transition:opacity 2s,visibility 2s;transition:opacity 2s,visibility 2s}.elements-table .period-table button{font-size:1.3em;width:2em;height:2em;line-height:2;vertical-align:middle;padding:.15em;margin:1px;border:0;display:block;position:relative}.elements-table .period-table button:after{position:absolute;opacity:.6;top:.3em;right:.3em;font-size:.5em;line-height:1;vertical-align:top;content:attr(value)}.elements-table .period-table button.selected:after,.elements-table .period-table button:hover:after{visibility:hidden}.elements-table .period-table button:not(:hover)>span{color:#000}.elements-table .period-table button:hover{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(1.25);transform:scale(1.25);-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);z-index:60;background:#fff}.elements-table .period-table button:active{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:none;box-shadow:none}.elements-table .period-table button.selected{background:#444;color:#fff}.elements-table .period-table button.selected>span{color:#fff}.elements-table .period-table button.selected>svg{fill:#fff;stroke:#fff;stroke-width:5}.elements-table .period-table fieldset{border:0;padding:.5em;margin:.5em 0 0 1.5em}.elements-table .period-table .diatomic{background:#e7ff8f}.elements-table .period-table .noble{background:#c0ffff}.elements-table .period-table .alkali{background:#f66}.elements-table .period-table .alkaline-earth{background:#ffdead}.elements-table .period-table .metalloid{background:#cc9}.elements-table .period-table .polyatomic{background:#a1ffc3}.elements-table .period-table .post-transition{background:#ccc}.elements-table .period-table .transition{background:#ffc0c0}.elements-table .period-table .lanthanide{background:#ffbfff}.elements-table .period-table .actinide{background:#f9c}.elements-table .period-table .unknown-props{background:#e8e8e8}.elements-table .period-table .unknown-state:after{color:#222}.elements-table .period-table .solid:after{color:#222}.elements-table .period-table .metal:after{color:#006}.elements-table .period-table .gas:after{color:#c00}.elements-table .period-table .liquid:after{color:#0a0}.elements-table .generic-groups{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-pack:distribute;justify-content:space-around;padding:1.5em 0}.elements-table .generic-groups .col:first-child{width:40%}.elements-table .generic-groups .col>fieldset{margin:1em;padding:1em .5em}.elements-table .generic-groups .acyclic,.elements-table .generic-groups .atom>fieldset,.elements-table .generic-groups .cyclic{display:inline-block;vertical-align:top}.elements-table .generic-groups .acyclic+fieldset,.elements-table .generic-groups .atom>fieldset+fieldset,.elements-table .generic-groups .cyclic+fieldset{margin-left:.4em}.elements-table .generic-groups .carbo,.elements-table .generic-groups .cyclic>fieldset,.elements-table .generic-groups .hetero{float:left}.elements-table .generic-groups .carbo{clear:both;margin-right:.4em}.elements-table .generic-groups .cyclic>legend+fieldset{margin:0 .4em 0 .8em}.elements-table .generic-groups fieldset{text-align:center}.elements-table .generic-groups .atom fieldset,.elements-table .generic-groups .carbo fieldset,.elements-table .generic-groups .hetero fieldset,.elements-table .generic-groups .no-carbon,.elements-table .generic-groups legend+fieldset{position:relative;border:0;padding:0 0 1em}.elements-table .generic-groups .atom fieldset legend,.elements-table .generic-groups .carbo fieldset legend,.elements-table .generic-groups .hetero fieldset legend,.elements-table .generic-groups .no-carbon legend,.elements-table .generic-groups legend+fieldset legend{font-size:.7em;bottom:.1em;left:0;right:0;margin:0 auto;position:absolute}.elements-table .generic-groups button{font-size:1.1em;height:2em;width:2.5em;line-height:1;vertical-align:middle;padding:.15em;background:inherit}.elements-table .generic-groups button:hover{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(1.25);transform:scale(1.25);-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12)}.elements-table .generic-groups button:active{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:none;box-shadow:none}.elements-table .generic-groups button.selected{background:#444;color:#fff}.elements-table .generic-groups button.selected>span{color:#fff}.elements-table .generic-groups button.selected>svg{fill:#fff;stroke:#fff;stroke-width:5}.recognize .change-version{display:block;text-align:right}.recognize .output,.recognize .picture{height:25em;width:21em;display:table-cell;vertical-align:middle;text-align:center}.recognize .struct,.recognize img{overflow:hidden;position:relative;max-height:100%;max-width:21em}.recognize label{display:block}.recognize .open-filename{display:inline-block;float:left;padding:6px;max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check fieldset{margin:0;padding:0 0 .3em .3em;overflow-y:auto;height:25em;width:25em;border-color:#ddd;border-radius:0 4px 4px 4px}.check fieldset li{display:block;margin:1.1em 0 .3em .3em}.check fieldset dt{font-weight:700;margin:1.1em 0 .3em .3em}.check fieldset dd{margin-left:1.5em}.analyse label{width:10em;display:inline-block;vertical-align:middle;margin-right:1em}.analyse input[type=text]{width:14em;margin-right:1em}.analyse select{width:10em;margin:0}.analyse .chem-input{width:14em;overflow:hidden;white-space:nowrap}.analyse .chem-input:active,.analyse .chem-input:focus{outline:0;-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12)}.open label{display:block;width:22.5em}.open label input{margin-bottom:.1em}.open textarea{min-width:32em;min-height:23em;overflow:auto;white-space:pre;resize:both}.save form>label{display:inline-block;text-align:right;margin:0 .3em}.save form>label input,.save form>label select{width:12.25em}.save textarea{display:block;min-width:34em;min-height:23em;overflow:auto;white-space:pre;cursor:text;resize:both}.help{overflow:auto;min-height:500px;min-width:800px;border:0}.miew .warning{display:inline-block;float:left;line-height:2em}.miew .atom-info{position:absolute;top:10px;right:10px;border-radius:4px;color:silver;background-color:rgba(64,64,64,.75);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:left;-ms-flex-align:left;align-items:left;-webkit-box-pack:left;-ms-flex-pack:left;justify-content:left;opacity:0}.miew .atom-info p{margin:10px;text-align:left}.attach label{display:block;padding:0 5px;font-size:16px}.attach .warning{padding:0 5px}.attach .editor{border:1px solid #ccc;border-radius:5px;position:relative;height:25em;max-width:30em;overflow:auto}li,menu,ul{list-style:none;margin:0;padding:0}body,html{height:100%;width:100%}body,main[role=application]{height:100%;position:relative;font:14px FreeSans,Arimo,"Droid Sans",Helvetica,"Helvetica Neue",Arial,sans-serif;background-color:#fff;color:#333;min-width:640px;min-height:400px}#canvas{position:absolute;border:#ccc 1px solid;border-radius:5px;overflow:auto;top:45px;left:45px;right:45px;bottom:45px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#canvas .measure-log{top:45px;right:45px}#canvas .measure-log{position:fixed}#canvas .measure-log.visible{opacity:1}#mainmenu{position:absolute;top:3px;left:45px;right:45px;height:40px}#mainmenu>menu{width:100%}#elements{position:absolute;right:3px;top:45px;bottom:45px;width:40px}#elements>menu{height:100%}#template{position:absolute;bottom:3px;left:45px;right:45px;height:40px}#template>menu{width:100%}#template>menu{overflow:hidden}#toolbox{position:absolute;left:3px;top:45px;bottom:45px;width:40px}#toolbox>menu{height:100%}#meta{position:absolute;right:0}#chiral-flag{overflow-y:hidden;position:absolute;right:0}#chiral-flag>button{width:64px;margin-left:8px;margin-right:8px}#chiral-flag>button>svg{stroke-width:0}#chiral-flag>button>svg{position:static;left:0;top:0;width:52px}[role=toolbar]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[role=toolbar] menu{font-size:.00001px;-webkit-text-size-adjust:none}[role=toolbar] li{display:inline-block;vertical-align:top}[role=toolbar] li>svg{fill:#333;display:none}[role=toolbar] button{display:block;border:0;padding:0;position:relative;background:inherit;background-color:#fff;width:32px;height:32px;margin:4px}[role=toolbar] button:after,[role=toolbar] button:before{display:inline-block;vertical-align:middle}[role=toolbar] button:after{position:absolute;left:0}[role=toolbar] button:hover{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(1.25);transform:scale(1.25);-webkit-box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12);box-shadow:inset 0 0 1px 1px rgba(0,0,0,.12)}[role=toolbar] button:active,[role=toolbar] button[disabled]{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:none;box-shadow:none}[role=toolbar] button>svg{position:absolute;top:.1em;left:.1em;font-size:26px;width:26px;height:26px;fill:#333}[role=toolbar] .selected button{background:#444;color:#fff}[role=toolbar] .selected button>span{color:#fff}[role=toolbar] .selected button>svg{fill:#fff;stroke:#fff;stroke-width:5}[role=toolbar] kbd{display:none;font:.8em monospace;color:#ccc}.cliparea{position:absolute;bottom:0;left:0;width:0;height:0;display:block;font-size:1px;z-index:-1;color:transparent;background:0 0;overflow:hidden;border:none;padding:0;resize:none;outline:0;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}li.opened>menu{margin:0!important;position:absolute;left:47px;z-index:20;white-space:nowrap;word-break:keep-all;padding:2px;background:#fff;border:1px solid #ccc;border-radius:5px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}li.opened>menu li+li>menu{margin-top:3px;border-top:1px solid #ccc;padding-top:2px}#atom button,#freq-atoms button{font-size:19px}#atom kbd,#freq-atoms kbd{display:none}select{font-size:14px}#bond-common,#bond-query,#bond-stereo,#reaction,#select{position:relative;overflow:hidden;height:40px;width:100%}#bond-common>svg,#bond-query>svg,#bond-stereo>svg,#reaction>svg,#select>svg{display:block;width:7px;height:7px;position:absolute;right:0;bottom:0}#bond-common:hover>svg,#bond-query:hover>svg,#bond-stereo:hover>svg,#reaction:hover>svg,#select:hover>svg{fill:#1a7090}#bond-common.opened,#bond-query.opened,#bond-stereo.opened,#reaction.opened,#select.opened{overflow:visible}@media (max-width:840px){#zoom-in,#zoom-out{display:none}}@media (max-width:1040px){#bond-common,#bond-query,#bond-stereo{height:32px;width:100%}}@media (max-height:850px){#rgroup{position:relative;overflow:hidden;height:40px;width:100%}#rgroup>svg{display:block;width:7px;height:7px;position:absolute;right:0;bottom:0}#rgroup:hover>svg{fill:#1a7090}#rgroup.opened{overflow:visible}}@media (max-height:850px) and (max-width:1040px){#rgroup{height:32px;width:100%}}@media (max-height:800px){#transform{position:relative;overflow:hidden;height:40px;width:100%}#transform>svg{display:block;width:7px;height:7px;position:absolute;right:0;bottom:0}#transform:hover>svg{fill:#1a7090}#transform.opened{overflow:visible}}@media (max-height:800px) and (max-width:1040px){#transform{height:32px;width:100%}}@media (max-height:700px){li.opened li{display:-webkit-box;display:-ms-flexbox;display:flex}li.opened li menu{width:100%}li.opened button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;margin:1px 0;padding:.3em .3em .3em 2em;height:1.7em;font-size:14px;text-align:left}li.opened button:after,li.opened button:before{padding-right:.4em;font-size:18px}li.opened button[disabled]{background:inherit;color:#baa}li.opened button kbd{margin:2.5px 0 0 10px;display:inline-block}li.opened button>svg{width:20px;height:20px}li.opened button:hover{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);background-color:#eee}li.opened .selected button{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);background:#444;color:#fff}li.opened .selected button>span{color:#fff}li.opened .selected button>svg{fill:#fff;stroke:#fff;stroke-width:5}#bond-common,#bond-query,#bond-stereo{position:static;overflow:visible;height:auto;width:auto}#bond-common>svg,#bond-query>svg,#bond-stereo>svg{display:none}#bond{position:relative;overflow:hidden;height:40px;width:100%}#bond>svg{display:block;width:7px;height:7px;position:absolute;right:0;bottom:0}#bond:hover>svg{fill:#1a7090}#bond.opened{overflow:visible}}@media (max-height:700px) and (max-width:850px){li.opened li{display:-webkit-box;display:-ms-flexbox;display:flex}li.opened li menu{width:100%}li.opened button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;width:100%;margin:1px 0;padding:.3em .3em .3em 2em;height:1.7em;font-size:12px;text-align:left}li.opened button:after,li.opened button:before{padding-right:.4em;font-size:16px}li.opened button[disabled]{background:inherit;color:#baa}li.opened button kbd{margin:2.5px 0 0 10px;display:inline-block}li.opened button>svg{width:17px;height:17px}li.opened button:hover{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);background-color:#eee}li.opened .selected button{-webkit-transition:.2s,ease-out,-webkit-transform;transition:.2s,ease-out,-webkit-transform;transition:transform,.2s,ease-out;transition:transform,.2s,ease-out,-webkit-transform;-webkit-transform:scale(none);transform:scale(none);-webkit-transform:scale(1);transform:scale(1);background:#444;color:#fff}li.opened .selected button>span{color:#fff}li.opened .selected button>svg{fill:#fff;stroke:#fff;stroke-width:5}}@media (max-height:700px) and (max-width:1040px){#bond{height:32px;width:100%}}@media (max-height:600px){#bond,#rgroup,#transform{height:32px;width:100%}}@media (min-height:800px){#reaction+li{margin-top:5px;border-top:1px solid #ccc;padding-top:4px}}@media (min-height:650px){#atom+li,#chain+li,#charge+li,#erase+li,#freq-atoms+li,#transform+li{margin-top:5px;border-top:1px solid #ccc;padding-top:4px}}@media (min-width:1160px){#analyse+li,#document+li,#edit+li,#zoom+li{margin-left:10px;border-left:1px solid #ccc;padding-left:9px}}@media (max-height:600px),(max-width:1040px){body,form,select{font-size:11px}#canvas{top:37px;left:37px;right:37px;bottom:37px}#canvas .measure-log{top:37px;right:37px}#mainmenu,#template{left:37px;right:37px;height:32px}#elements,#toolbox{top:37px;bottom:37px;width:32px}[role=toolbar] button{width:24px;height:24px;margin:4px}[role=toolbar] button>svg{position:absolute;top:.1em;left:.1em;font-size:20px;width:20px;height:20px;fill:#333}#chiral-flag button{width:48px;margin-left:8px;margin-right:8px}#chiral-flag button>svg{position:static;left:0;top:0;width:40px}#reaction,#select{height:32px;width:100%}li.opened>menu{left:37px}#atom button,#freq-atoms button{font-size:16px}}@media (max-width:770px){#about,#help{display:none}#mainmenu{@set-size (@small-dim);left:2px;right:2px}}#template-common+li{margin-left:15px;border-left:1px solid #ccc;padding-left:14px}.cellar{display:none}.warning{color:#f55}.warning:before{content:'⚠ '}#analyse button:before{padding:.2em 0 0 .2em}#check button:before{padding:.2em 0 0 .2em}#cip button:before{padding:.2em 0 0 .2em}#clean button:before{padding:.2em 0 0 .2em}#generic-groups button:before{padding:.2em 0 0 .2em}#layout button:before{padding:.2em 0 0 .2em}#miew button:before{padding:.2em 0 0 .2em}#reaction-arrow button:before{padding:.2em 0 0 .2em}#reaction-automap button:before{padding:.2em 0 0 .2em}#reaction-map button:before{padding:.2em 0 0 .2em}#reaction-plus button:before{padding:.2em 0 0 .2em}#reaction-unmap button:before{padding:.2em 0 0 .2em}#recognize button:before{padding:.2em 0 0 .2em}#rgroup-attpoints button:before{padding:.2em 0 0 .2em}#rgroup-fragment button:before{padding:.2em 0 0 .2em}#rgroup-label button:before{padding:.2em 0 0 .2em}#template-lib button:before{padding:.2em 0 0 .2em} -/*# sourceMappingURL=ketcher.css.map */ diff --git a/src/app/core/assets/ketcher (copy)/ketcher.css.map b/src/app/core/assets/ketcher (copy)/ketcher.css.map deleted file mode 100644 index 088f8952e..000000000 --- a/src/app/core/assets/ketcher (copy)/ketcher.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["ketcher.css","../../node_modules/normalize.css/normalize.css","form.less","mixins.less","component.less","dialogs.less","ketcher"],"names":[],"mappings":"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","file":"ketcher.css","sourcesContent":["/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */\n/**\n * 1. Change the default font family in all browsers (opinionated).\n * 2. Correct the line height in all browsers.\n * 3. Prevent adjustments of font size after orientation changes in IE and iOS.\n */\nhtml {\n font-family: sans-serif;\n /* 1 */\n line-height: 1.15;\n /* 2 */\n -ms-text-size-adjust: 100%;\n /* 3 */\n -webkit-text-size-adjust: 100%;\n /* 3 */\n}\n/**\n * Remove the margin in all browsers (opinionated).\n */\nbody {\n margin: 0;\n}\n/* HTML5 display definitions\n ========================================================================== */\n/**\n * Add the correct display in IE 9-.\n * 1. Add the correct display in Edge, IE, and Firefox.\n * 2. Add the correct display in IE.\n */\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n /* 1 */\n display: block;\n}\n/**\n * Add the correct display in IE 9-.\n */\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n}\n/**\n * Add the correct display in iOS 4-7.\n */\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\nprogress {\n vertical-align: baseline;\n}\n/**\n * Add the correct display in IE 10-.\n * 1. Add the correct display in IE.\n */\ntemplate,\n[hidden] {\n display: none;\n}\n/* Links\n ========================================================================== */\n/**\n * 1. Remove the gray background on active links in IE 10.\n * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.\n */\na {\n background-color: transparent;\n /* 1 */\n -webkit-text-decoration-skip: objects;\n /* 2 */\n}\n/**\n * Remove the outline on focused links when they are also active or hovered\n * in all browsers (opinionated).\n */\na:active,\na:hover {\n outline-width: 0;\n}\n/* Text-level semantics\n ========================================================================== */\n/**\n * 1. Remove the bottom border in Firefox 39-.\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\nabbr[title] {\n border-bottom: none;\n /* 1 */\n text-decoration: underline;\n /* 2 */\n text-decoration: underline dotted;\n /* 2 */\n}\n/**\n * Prevent the duplicate application of `bolder` by the next rule in Safari 6.\n */\nb,\nstrong {\n font-weight: inherit;\n}\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\nb,\nstrong {\n font-weight: bolder;\n}\n/**\n * Add the correct font style in Android 4.3-.\n */\ndfn {\n font-style: italic;\n}\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n/**\n * Add the correct background and color in IE 9-.\n */\nmark {\n background-color: #ff0;\n color: #000;\n}\n/**\n * Add the correct font size in all browsers.\n */\nsmall {\n font-size: 80%;\n}\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsub {\n bottom: -0.25em;\n}\nsup {\n top: -0.5em;\n}\n/* Embedded content\n ========================================================================== */\n/**\n * Remove the border on images inside links in IE 10-.\n */\nimg {\n border-style: none;\n}\n/**\n * Hide the overflow in IE.\n */\nsvg:not(:root) {\n overflow: hidden;\n}\n/* Grouping content\n ========================================================================== */\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n /* 1 */\n font-size: 1em;\n /* 2 */\n}\n/**\n * Add the correct margin in IE 8.\n */\nfigure {\n margin: 1em 40px;\n}\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\nhr {\n box-sizing: content-box;\n /* 1 */\n height: 0;\n /* 1 */\n overflow: visible;\n /* 2 */\n}\n/* Forms\n ========================================================================== */\n/**\n * 1. Change font properties to `inherit` in all browsers (opinionated).\n * 2. Remove the margin in Firefox and Safari.\n */\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font: inherit;\n /* 1 */\n margin: 0;\n /* 2 */\n}\n/**\n * Restore the font weight unset by the previous rule.\n */\noptgroup {\n font-weight: bold;\n}\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n/**\n * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n * controls in Android 4.\n * 2. Correct the inability to style clickable types in iOS and Safari.\n */\nbutton,\nhtml [type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n /* 2 */\n}\n/**\n * Remove the inner border and padding in Firefox.\n */\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n/**\n * Restore the focus styles unset by the previous rule.\n */\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n/**\n * Change the border, margin, and padding in all browsers (opinionated).\n */\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\nlegend {\n box-sizing: border-box;\n /* 1 */\n color: inherit;\n /* 2 */\n display: table;\n /* 1 */\n max-width: 100%;\n /* 1 */\n padding: 0;\n /* 3 */\n white-space: normal;\n /* 1 */\n}\n/**\n * Remove the default vertical scrollbar in IE.\n */\ntextarea {\n overflow: auto;\n}\n/**\n * 1. Add the correct box sizing in IE 10-.\n * 2. Remove the padding in IE 10-.\n */\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box;\n /* 1 */\n padding: 0;\n /* 2 */\n}\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n[type=\"search\"] {\n -webkit-appearance: textfield;\n /* 1 */\n outline-offset: -2px;\n /* 2 */\n}\n/**\n * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.\n */\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n/**\n * Correct the text style of placeholders in Chrome, Edge, and Safari.\n */\n::-webkit-input-placeholder {\n color: inherit;\n opacity: 0.54;\n}\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n::-webkit-file-upload-button {\n -webkit-appearance: button;\n /* 1 */\n font: inherit;\n /* 2 */\n}\nbutton,\ninput[type=submit],\ninput[type=reset],\ninput[type=button] {\n display: inline-block;\n margin: 0;\n text-align: center;\n vertical-align: middle;\n background-image: none;\n border: 1px solid transparent;\n padding: 0.42em 0.85em;\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n border-radius: 4px;\n user-select: none;\n}\nbutton:hover,\ninput[type=submit]:hover,\ninput[type=reset]:hover,\ninput[type=button]:hover,\nbutton:focus,\ninput[type=submit]:focus,\ninput[type=reset]:focus,\ninput[type=button]:focus {\n background-image: linear-gradient(to bottom, #fff, #ededed);\n outline: 0;\n}\nbutton:active,\ninput[type=submit]:active,\ninput[type=reset]:active,\ninput[type=button]:active {\n outline: 0;\n background-image: none;\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\nbutton.disabled,\ninput[type=submit].disabled,\ninput[type=reset].disabled,\ninput[type=button].disabled,\nbutton[disabled],\ninput[type=submit][disabled],\ninput[type=reset][disabled],\ninput[type=button][disabled],\nfieldset[disabled] button,\nfieldset[disabled] input[type=submit],\nfieldset[disabled] input[type=reset],\nfieldset[disabled] input[type=button] {\n background-image: none;\n cursor: not-allowed;\n opacity: .5;\n box-shadow: none;\n}\nbutton.save-button,\ninput[type=submit].save-button,\ninput[type=reset].save-button,\ninput[type=button].save-button {\n float: left;\n}\nbutton.open-button,\ninput[type=submit].open-button,\ninput[type=reset].open-button,\ninput[type=button].open-button {\n float: left;\n}\nbutton > input[type=file],\ninput[type=submit] > input[type=file],\ninput[type=reset] > input[type=file],\ninput[type=button] > input[type=file] {\n left: -9999px;\n position: absolute;\n}\nbutton + button,\nbutton + input[type=submit],\nbutton + input[type=reset],\nbutton + input[type=button],\ninput[type=submit] + button,\ninput[type=submit] + input[type=submit],\ninput[type=submit] + input[type=reset],\ninput[type=submit] + input[type=button],\ninput[type=reset] + button,\ninput[type=reset] + input[type=submit],\ninput[type=reset] + input[type=reset],\ninput[type=reset] + input[type=button],\ninput[type=button] + button,\ninput[type=button] + input[type=submit],\ninput[type=button] + input[type=reset],\ninput[type=button] + input[type=button] {\n margin-left: 0.3em;\n}\nselect:active,\ntextarea:active,\ninput[type=text]:active,\ninput[type=number]:active,\ninput[type=search]:active,\nselect:focus,\ntextarea:focus,\ninput[type=text]:focus,\ninput[type=number]:focus,\ninput[type=search]:focus {\n outline: 0;\n}\nselect:hover,\ntextarea:hover,\ninput[type=text]:hover,\ninput[type=number]:hover,\ninput[type=search]:hover,\nselect:focus,\ntextarea:focus,\ninput[type=text]:focus,\ninput[type=number]:focus,\ninput[type=search]:focus {\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n}\nselect[disabled],\ntextarea[disabled],\ninput[type=text][disabled],\ninput[type=number][disabled],\ninput[type=search][disabled],\nselect[readonly],\ntextarea[readonly],\ninput[type=text][readonly],\ninput[type=number][readonly],\ninput[type=search][readonly],\nfieldset[disabled] select,\nfieldset[disabled] textarea,\nfieldset[disabled] input[type=text],\nfieldset[disabled] input[type=number],\nfieldset[disabled] input[type=search] {\n cursor: not-allowed;\n background: #efefef;\n opacity: 0.6;\n}\n.suggestList {\n border: 1px solid #3297FD;\n position: absolute;\n background-color: white;\n margin-left: 3px;\n padding-left: 3px;\n width: 93%;\n z-index: 3;\n}\n.suggestList li:hover {\n background-color: #3297FD;\n color: white;\n}\nlabel[data-error] select,\nlabel[data-error] textarea,\nlabel[data-error] input[type=text],\nlabel[data-error] input[type=number],\nlabel[data-error] input[type=search] {\n border: 1px solid #ff5555;\n}\nlabel[data-error] select:hover,\nlabel[data-error] textarea:hover,\nlabel[data-error] input[type=text]:hover,\nlabel[data-error] input[type=number]:hover,\nlabel[data-error] input[type=search]:hover,\nlabel[data-error] select:focus,\nlabel[data-error] textarea:focus,\nlabel[data-error] input[type=text]:focus,\nlabel[data-error] input[type=number]:focus,\nlabel[data-error] input[type=search]:focus {\n box-shadow: inset 0 0 1px 1px rgba(255, 85, 85, 0.12);\n}\nlabel[data-error]:hover:after {\n content: \"Error: \" attr(data-error);\n display: block;\n position: fixed;\n white-space: pre;\n padding: 0.35em;\n background: #ffeeee;\n border: 1px solid #ff5555;\n border-radius: 4px;\n line-height: 1em;\n font-size: 0.9em;\n z-index: 2;\n}\ninput[type=radio],\ninput[type=checkbox] {\n vertical-align: middle;\n margin: 0 0.3em;\n margin-top: 1px \\9;\n line-height: normal;\n}\nfieldset {\n border: 1px solid #ccc;\n padding: 0.3em;\n margin: 0;\n border-radius: 4px;\n}\nfieldset > li {\n display: inline-block;\n}\nfieldset.-hidden,\nform.atom-props .main {\n border-color: transparent;\n margin-top: 1.5em;\n}\nlegend {\n color: #8c8c8c;\n padding: 0 0.4em;\n font-size: 0.9em;\n text-align: left;\n}\nselect,\ntextarea,\ninput[type=text],\ninput[type=number],\ninput[type=search],\n.-SelectList,\n.analyse .chem-input,\n.template-lib .groups {\n border-radius: 4px;\n display: inline-block;\n vertical-align: middle;\n background: white;\n line-height: 1.42857143;\n height: 2.4em;\n padding: 0.35em 0.15em 0.35em 0.3em;\n margin: 2px;\n border: 1px solid #ccc;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-sizing: border-box;\n}\n.template-lib .groups li {\n display: block;\n padding: 0 2px 1px;\n cursor: default;\n}\n.template-lib .groups li:hover {\n background-color: #f2f2f2;\n}\n.template-lib .groups li.selected {\n color: white;\n background-color: #9dc2d0;\n}\n.template-lib .groups li.split {\n margin-top: 2px;\n padding-top: 2px;\n border-top: 1px #ccc solid;\n}\n.elements-table .tabs,\n.check .tabs {\n outline: none;\n}\n.elements-table .tabs .tabs,\n.check .tabs .tabs {\n width: 100%;\n}\n.elements-table .tabs .tabs a,\n.check .tabs .tabs a {\n padding: 8px 12px;\n margin-right: 2px;\n line-height: 14px;\n display: inline-block;\n cursor: pointer;\n text-align: center;\n background-color: #eee;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.elements-table .tabs .tabs a:hover,\n.check .tabs .tabs a:hover {\n background-color: #9dc2d0;\n}\n.elements-table .tabs .tabs a.active,\n.check .tabs .tabs a.active {\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n background-color: white;\n}\nform.settings .accordion {\n margin: 0.3em;\n}\nform.settings .accordion .ac_tab {\n margin-top: 2px;\n}\nform.settings .accordion .ac_tab > a:first-child {\n z-index: 3;\n padding: 6px 0;\n display: block;\n cursor: pointer;\n text-align: center;\n background-color: #eee;\n border: 1px solid #ccc;\n transition: border-radius 0.1s linear;\n}\nform.settings .accordion .ac_tab > a:first-child:before {\n margin-left: 30px;\n float: left;\n}\nform.settings .accordion .ac_tab > a:first-child:hover {\n background-color: #9dc2d0;\n}\nform.settings .accordion .ac_tab > *:nth-child(2) {\n overflow: hidden;\n transition-property: height, padding;\n transition-duration: 0.5s;\n transition-timing-function: linear;\n}\nform.settings .accordion .ac_tab.active > a:first-child {\n border-radius: 6px 6px 0 0;\n border-bottom: 0;\n transition-delay: 0s;\n}\nform.settings .accordion .ac_tab.active > a:first-child:before {\n content: '−';\n}\nform.settings .accordion .ac_tab.hidden > a:first-child {\n border-radius: 6px;\n transition-delay: 0.4s;\n}\nform.settings .accordion .ac_tab.hidden > a:first-child:before {\n content: '+';\n}\nform.settings .accordion .ac_tab.hidden > *:nth-child(2) {\n height: 0;\n padding: 0;\n border: 0;\n}\n#canvas .measure-log {\n background-color: white;\n border: #ccc 1px solid;\n border-radius: 0 5px;\n width: 8em;\n height: 1.2em;\n padding: .3em;\n text-align: center;\n opacity: 0;\n transition: opacity 0.5s;\n}\n.ket-overlay {\n position: fixed;\n left: 0;\n top: 0;\n bottom: 0;\n right: 0;\n z-index: 40;\n text-align: center;\n background-image: url(\"data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2210%22%20height%3D%2210%22%3E%3Cpath%20d%3D%22M0%2010L10%200zm12-2l-4%204zM-2%202l4-4z%22%20stroke%3D%22%23555%22%20stroke-width%3D%222%22%20stroke-opacity%3D%22.02%22%2F%3E%3C%2Fsvg%3E\");\n background-color: rgba(119, 119, 119, 0.2);\n background: none \\9;\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#33777777', endColorstr='#33777777');\n}\n.ket-overlay:not([ie9]) {\n filter: progid:DXImageTransform.Microsoft.gradient(enabled='false');\n}\n.ket-overlay.animate {\n transition: background-color 0.3s;\n}\n.ket-overlay.hide {\n background-color: rgba(119, 119, 119, 0.01);\n}\n.ket-overlay:after {\n content: '';\n display: inline-block;\n height: 100%;\n vertical-align: middle;\n}\n.ket-overlay form[role=dialog] {\n outline: 0;\n display: inline-block;\n position: relative;\n vertical-align: middle;\n}\n.ket-spinner {\n margin: auto;\n display: block;\n border: 16px solid #f3f3f3;\n border-top: 16px solid #0000ff;\n border-radius: 50%;\n width: 5em;\n height: 5em;\n animation: spin 3s linear infinite;\n}\n@keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\nform[role=dialog] {\n text-align: left;\n background-color: #fff;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.3);\n border-radius: 6px;\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n background-clip: padding-box;\n overflow: visible;\n opacity: 1;\n transform: scale(1);\n transition: transform 0.3s, opacity 0.3s;\n}\nform[role=dialog].hide {\n opacity: .2;\n transform: scale(0.5);\n}\nform[role=dialog] > * {\n margin: 0.3em;\n}\nform[role=dialog] header,\nform[role=dialog] footer {\n margin: 0;\n padding: 0.2em 0.6em;\n background-color: #f5f5f5;\n}\nform[role=dialog] header {\n font-size: 1.6em;\n font-weight: 600;\n line-height: 1.3;\n border-bottom: 1px solid #ddd;\n border-radius: 6px 6px 0 0;\n}\nform[role=dialog] footer {\n clear: both;\n border-top: 1px solid #ddd;\n border-radius: 0 0 6px 6px;\n text-align: right;\n}\nform[role=dialog] .close {\n padding: 0;\n border: 0;\n background: transparent;\n box-shadow: none;\n position: absolute;\n top: 0;\n right: 0.3em;\n color: #999999;\n font-size: 0.8em;\n font-weight: bold;\n text-shadow: 0 1px 0 #ffffff;\n opacity: 0.5;\n}\nform[role=dialog] .close:hover {\n opacity: 1;\n}\n.template-lib label {\n position: absolute;\n right: 0;\n left: 0;\n text-align: center;\n line-height: 2.6em;\n}\n.template-lib label input[type=search] {\n float: right;\n width: 660px;\n}\n.template-lib .groups {\n margin-top: 3.5em;\n height: 27em;\n width: 11em;\n float: left;\n overflow: hidden;\n}\n.template-lib .table {\n margin-top: 3.5em;\n padding: 0;\n float: left;\n width: 550px;\n height: 27em;\n overflow: auto;\n}\n.template-lib .tr {\n height: 120px;\n}\n.template-lib .td {\n width: 33%;\n float: left;\n height: 100%;\n position: relative;\n}\n.template-lib .td:before {\n position: absolute;\n z-index: 10;\n left: 0.3em;\n top: 0;\n padding: 0 4px;\n border-radius: 3px;\n font-size: 10px;\n color: #808080;\n background-color: white;\n content: attr(title);\n}\n.template-lib .td.selected .struct {\n background-color: #d1e2e9;\n}\n.template-lib .attach-button {\n margin: 0 4px 2px 0;\n position: absolute;\n bottom: 0;\n right: 0;\n}\n.template-lib .struct {\n position: absolute;\n display: block;\n box-sizing: border-box;\n padding: 1em;\n width: 98%;\n height: 98%;\n border: 1px solid #ccc;\n border-radius: 5px;\n}\n.template-lib .struct:hover {\n background: #f2f2f2;\n}\n.template-lib div.struct {\n padding: 0;\n}\nform.bond label {\n text-align: right;\n display: block;\n}\nform.bond select {\n width: 12em;\n}\nform.atom-props fieldset {\n margin-top: 0.7em;\n text-align: right;\n}\nform.atom-props fieldset label {\n margin: 0.3em 0;\n display: inline-block;\n}\nform.atom-props .main {\n width: 14.5em;\n float: left;\n}\nform.atom-props .main input {\n width: 8em;\n}\nform.atom-props .query,\nform.atom-props .reaction {\n float: right;\n clear: right;\n width: 16em;\n}\nform.atom-props .query input[type=checkbox],\nform.atom-props .reaction input[type=checkbox] {\n margin: 0.6em 0.3em;\n}\nform.attach-points form {\n width: 17em;\n text-align: right;\n}\nform.attach-points form label {\n margin: 1.03333333em;\n display: inline-block;\n}\nform.automap {\n width: 22em;\n}\nform.automap label {\n display: block;\n text-align: right;\n line-height: 3.1em;\n}\nform.rgroup-logic label {\n display: inline-block;\n text-align: right;\n line-height: 3.1em;\n}\nform.rgroup-logic .cond {\n display: block;\n}\nform.rgroup-logic input[type=text] {\n width: 7em;\n}\n.sgroup,\n.sgroup-special {\n width: 20em;\n}\n.sgroup label,\n.sgroup-special label {\n display: block;\n text-align: right;\n}\n.sgroup label input,\n.sgroup-special label input,\n.sgroup label select,\n.sgroup-special label select {\n width: 10em;\n}\n.sgroup label:hover:after,\n.sgroup-special label:hover:after {\n margin: 1px 0 0 3px;\n}\n.sgroup fieldset,\n.sgroup-special fieldset {\n border: 0;\n padding: 0;\n}\n.sgroup .data label,\n.sgroup-special .data label {\n text-align: left;\n}\n.sgroup .data label fieldset.radio label,\n.sgroup-special .data label fieldset.radio label {\n margin: .4em;\n display: inline-block;\n}\n.sgroup .data label fieldset.radio input[type=radio],\n.sgroup-special .data label fieldset.radio input[type=radio] {\n width: auto;\n}\n.sgroup .data textarea,\n.sgroup-special .data textarea,\n.sgroup .data select[name=fieldValue],\n.sgroup-special .data select[name=fieldValue] {\n display: block;\n width: 19em;\n height: 12em;\n overflow: auto;\n}\n.sgroup .data input[type=text],\n.sgroup-special .data input[type=text],\n.sgroup .data select[name=fieldName],\n.sgroup-special .data select[name=fieldName] {\n width: 19em;\n display: block;\n margin-bottom: 0;\n}\nform.settings {\n width: 35em;\n}\nform.settings .save-button {\n margin-left: 10px;\n}\nform.settings .warning {\n margin: 0.3em;\n}\nform.settings .accordion fieldset {\n border-radius: 0 0 6px 6px;\n height: 12.4em;\n}\nform.settings .accordion fieldset.server {\n height: 15.5em;\n}\nform.settings .accordion fieldset.miew {\n height: 9.3em;\n}\nform.settings .accordion fieldset.render {\n height: 24.8em;\n}\nform.settings .accordion label {\n display: block;\n text-align: right;\n line-height: 3.1em;\n height: 3.1em;\n}\nform.settings .accordion label select,\nform.settings .accordion label input {\n width: 50%;\n}\nform.settings .accordion label div {\n margin: 2px;\n width: 50%;\n}\nform.settings .accordion label div input {\n margin: 0 4px 0 0;\n}\nform.settings .accordion label div select {\n margin: 0;\n}\nform.settings .accordion label:hover:after {\n left: 50%;\n}\n.about {\n width: 25em;\n}\n.about > a {\n display: block;\n margin: 2em 1em;\n}\n.about var {\n margin-left: .5em;\n font-style: normal;\n font-weight: bold;\n display: inline-block;\n}\n.about time {\n font-style: italic;\n}\n.about a {\n color: #1a7090;\n}\n.about a:hover {\n color: #5e5e5e;\n}\n.about dl {\n position: relative;\n margin: 0 1em 1em;\n vertical-align: bottom;\n line-height: 1.4em;\n}\n.about dd {\n text-align: right;\n margin-bottom: 0.5em;\n}\n.about dt + dd {\n margin: -1.4em 0 0;\n}\n.rgroup ul {\n width: 25.6em;\n padding: 0.5em;\n}\n.rgroup li {\n display: inline-block;\n margin: 0.2em 0.1em;\n}\n.rgroup form button {\n font-size: 1.3em;\n width: 2.3em;\n height: 2em;\n line-height: 1;\n vertical-align: middle;\n padding: 0.15em;\n background: inherit;\n}\n.rgroup form button:first-letter {\n font-weight: 600;\n color: #666666;\n}\n.rgroup form button:hover {\n transition: transform, 0.2s, ease-out;\n transform: scale(1.005);\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n}\n.rgroup form button:active {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n box-shadow: none;\n}\n.rgroup form button.selected {\n background: #444;\n color: white;\n}\n.rgroup form button.selected > span {\n color: white;\n}\n.rgroup form button.selected > svg {\n fill: white;\n stroke: white;\n stroke-width: 5;\n}\n.rgroup form button.selected:first-letter {\n color: #b3b3b3;\n}\n.elements-table {\n width: 57em;\n}\n.elements-table .tabs .tabs-content {\n height: 31em;\n}\n.elements-table .period-table {\n position: relative;\n}\n.elements-table .period-table table {\n position: relative;\n}\n.elements-table .period-table td,\n.elements-table .period-table th {\n padding: 0;\n margin: 0;\n text-align: center;\n vertical-align: middle;\n}\n.elements-table .period-table th,\n.elements-table .period-table td.ref {\n opacity: 0.6;\n font-weight: normal;\n font-size: 0.8em;\n padding: 0.3em 0.8em;\n}\n.elements-table .period-table th.ref {\n vertical-align: top;\n text-align: right;\n}\n.elements-table .period-table tr:nth-of-type(8) {\n border-bottom: 1em solid transparent;\n}\n.elements-table .period-table .ket-atom-info {\n position: absolute;\n padding: 0.75em 0.75em;\n left: 18em;\n top: 2em;\n width: 7em;\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n opacity: 1;\n transition: opacity 1s, visibility 0s;\n}\n.elements-table .period-table .ket-atom-info.none {\n opacity: 0;\n transition: opacity 2s, visibility 2s;\n}\n.elements-table .period-table button {\n font-size: 1.3em;\n width: 2em;\n height: 2em;\n line-height: 2;\n vertical-align: middle;\n padding: 0.15em;\n margin: 1px;\n border: 0;\n display: block;\n position: relative;\n}\n.elements-table .period-table button:after {\n position: absolute;\n opacity: 0.6;\n top: 0.3em;\n right: 0.3em;\n font-size: 0.5em;\n line-height: 1;\n vertical-align: top;\n content: attr(value);\n}\n.elements-table .period-table button:hover:after,\n.elements-table .period-table button.selected:after {\n visibility: hidden;\n}\n.elements-table .period-table button:not(:hover) > span {\n color: black;\n}\n.elements-table .period-table button:hover {\n transition: transform, 0.2s, ease-out;\n transform: scale(1.25);\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n z-index: 60;\n background: #fff;\n}\n.elements-table .period-table button:active {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n box-shadow: none;\n}\n.elements-table .period-table button.selected {\n background: #444;\n color: white;\n}\n.elements-table .period-table button.selected > span {\n color: white;\n}\n.elements-table .period-table button.selected > svg {\n fill: white;\n stroke: white;\n stroke-width: 5;\n}\n.elements-table .period-table fieldset {\n border: 0;\n padding: 0.5em;\n margin: 0.5em 0 0 1.5em;\n}\n.elements-table .period-table .diatomic {\n background: #e7ff8f;\n}\n.elements-table .period-table .noble {\n background: #c0ffff;\n}\n.elements-table .period-table .alkali {\n background: #ff6666;\n}\n.elements-table .period-table .alkaline-earth {\n background: #ffdead;\n}\n.elements-table .period-table .metalloid {\n background: #cccc99;\n}\n.elements-table .period-table .polyatomic {\n background: #a1ffc3;\n}\n.elements-table .period-table .post-transition {\n background: #cccccc;\n}\n.elements-table .period-table .transition {\n background: #ffc0c0;\n}\n.elements-table .period-table .lanthanide {\n background: #ffbfff;\n}\n.elements-table .period-table .actinide {\n background: #ff99cc;\n}\n.elements-table .period-table .unknown-props {\n background: #e8e8e8;\n}\n.elements-table .period-table .unknown-state:after {\n color: #222;\n}\n.elements-table .period-table .solid:after {\n color: #222;\n}\n.elements-table .period-table .metal:after {\n color: #006;\n}\n.elements-table .period-table .gas:after {\n color: #c00;\n}\n.elements-table .period-table .liquid:after {\n color: #0a0;\n}\n.elements-table .generic-groups {\n display: flex;\n justify-content: space-around;\n padding: 1.5em 0;\n}\n.elements-table .generic-groups .col:first-child {\n width: 40%;\n}\n.elements-table .generic-groups .col > fieldset {\n margin: 1em;\n padding: 1em 0.5em;\n}\n.elements-table .generic-groups .atom > fieldset,\n.elements-table .generic-groups .acyclic,\n.elements-table .generic-groups .cyclic {\n display: inline-block;\n vertical-align: top;\n}\n.elements-table .generic-groups .atom > fieldset + fieldset,\n.elements-table .generic-groups .acyclic + fieldset,\n.elements-table .generic-groups .cyclic + fieldset {\n margin-left: 0.4em;\n}\n.elements-table .generic-groups .cyclic > fieldset,\n.elements-table .generic-groups .carbo,\n.elements-table .generic-groups .hetero {\n float: left;\n}\n.elements-table .generic-groups .carbo {\n clear: both;\n margin-right: 0.4em;\n}\n.elements-table .generic-groups .cyclic > legend + fieldset {\n margin: 0 0.4em 0 0.8em;\n}\n.elements-table .generic-groups fieldset {\n text-align: center;\n}\n.elements-table .generic-groups legend + fieldset,\n.elements-table .generic-groups .atom fieldset,\n.elements-table .generic-groups .carbo fieldset,\n.elements-table .generic-groups .hetero fieldset,\n.elements-table .generic-groups .no-carbon {\n position: relative;\n border: 0;\n padding: 0 0 1em;\n}\n.elements-table .generic-groups legend + fieldset legend,\n.elements-table .generic-groups .atom fieldset legend,\n.elements-table .generic-groups .carbo fieldset legend,\n.elements-table .generic-groups .hetero fieldset legend,\n.elements-table .generic-groups .no-carbon legend {\n font-size: 0.7em;\n bottom: 0.1em;\n left: 0;\n right: 0;\n margin: 0 auto;\n position: absolute;\n}\n.elements-table .generic-groups button {\n font-size: 1.1em;\n height: 2em;\n width: 2.5em;\n line-height: 1;\n vertical-align: middle;\n padding: 0.15em;\n background: inherit;\n}\n.elements-table .generic-groups button:hover {\n transition: transform, 0.2s, ease-out;\n transform: scale(1.25);\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n}\n.elements-table .generic-groups button:active {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n box-shadow: none;\n}\n.elements-table .generic-groups button.selected {\n background: #444;\n color: white;\n}\n.elements-table .generic-groups button.selected > span {\n color: white;\n}\n.elements-table .generic-groups button.selected > svg {\n fill: white;\n stroke: white;\n stroke-width: 5;\n}\n.recognize .change-version {\n display: block;\n text-align: right;\n}\n.recognize .output,\n.recognize .picture {\n height: 25em;\n width: 21em;\n display: table-cell;\n vertical-align: middle;\n text-align: center;\n}\n.recognize img,\n.recognize .struct {\n overflow: hidden;\n position: relative;\n max-height: 100%;\n max-width: 21em;\n}\n.recognize label {\n display: block;\n}\n.recognize .open-filename {\n display: inline-block;\n float: left;\n padding: 6px;\n max-width: 200px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n.check fieldset {\n margin: 0;\n padding: 0 0 .3em .3em;\n overflow-y: auto;\n height: 25em;\n width: 25em;\n border-color: #ddd;\n border-radius: 0 4px 4px 4px;\n}\n.check fieldset li {\n display: block;\n margin: 1.1em 0 0.3em 0.3em;\n}\n.check fieldset dt {\n font-weight: bold;\n margin: 1.1em 0 0.3em 0.3em;\n}\n.check fieldset dd {\n margin-left: 1.5em;\n}\n.analyse label {\n width: 10em;\n display: inline-block;\n vertical-align: middle;\n margin-right: 1em;\n}\n.analyse input[type=text] {\n width: 14em;\n margin-right: 1em;\n}\n.analyse select {\n width: 10em;\n margin: 0;\n}\n.analyse .chem-input {\n width: 14em;\n overflow: hidden;\n white-space: nowrap;\n}\n.analyse .chem-input:active,\n.analyse .chem-input:focus {\n outline: 0;\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n}\n.open label {\n display: block;\n width: 22.5em;\n}\n.open label input {\n margin-bottom: 0.1em;\n}\n.open textarea {\n min-width: 32em;\n min-height: 23em;\n overflow: auto;\n white-space: pre;\n resize: both;\n}\n.save form > label {\n display: inline-block;\n text-align: right;\n margin: 0 .3em;\n}\n.save form > label select,\n.save form > label input {\n width: 12.25em;\n}\n.save textarea {\n display: block;\n min-width: 34em;\n min-height: 23em;\n overflow: auto;\n white-space: pre;\n cursor: text;\n resize: both;\n}\n.help {\n overflow: auto;\n min-height: 500px;\n min-width: 800px;\n border: 0;\n}\n.miew .warning {\n display: inline-block;\n float: left;\n line-height: 2em;\n}\n.miew .atom-info {\n position: absolute;\n top: 10px;\n right: 10px;\n border-radius: 4px;\n color: silver;\n background-color: rgba(64, 64, 64, 0.75);\n display: flex;\n align-items: left;\n justify-content: left;\n opacity: 0;\n}\n.miew .atom-info p {\n margin: 10px;\n text-align: left;\n}\n.attach label {\n display: block;\n padding: 0 5px;\n font-size: 16px;\n}\n.attach .warning {\n padding: 0 5px;\n}\n.attach .editor {\n border: 1px solid #ccc;\n border-radius: 5px;\n position: relative;\n height: 25em;\n max-width: 30em;\n overflow: auto;\n}\nli,\nul,\nmenu {\n list-style: none;\n margin: 0;\n padding: 0;\n}\nhtml,\nbody {\n height: 100%;\n width: 100%;\n}\nbody,\nmain[role=application] {\n height: 100%;\n position: relative;\n font: 14px FreeSans, Arimo, \"Droid Sans\", Helvetica, \"Helvetica Neue\", Arial, sans-serif;\n background-color: white;\n color: #333;\n min-width: 640px;\n min-height: 400px;\n}\n#canvas {\n position: absolute;\n border: #ccc 1px solid;\n border-radius: 5px;\n overflow: auto;\n top: 45px;\n left: 45px;\n right: 45px;\n bottom: 45px;\n user-select: none;\n}\n#canvas .measure-log {\n top: 45px;\n right: 45px;\n}\n#canvas .measure-log {\n position: fixed;\n}\n#canvas .measure-log.visible {\n opacity: 1;\n}\n#mainmenu {\n position: absolute;\n top: 3px;\n left: 45px;\n right: 45px;\n height: 40px;\n}\n#mainmenu > menu {\n width: 100%;\n}\n#elements {\n position: absolute;\n right: 3px;\n top: 45px;\n bottom: 45px;\n width: 40px;\n}\n#elements > menu {\n height: 100%;\n}\n#template {\n position: absolute;\n bottom: 3px;\n left: 45px;\n right: 45px;\n height: 40px;\n}\n#template > menu {\n width: 100%;\n}\n#template > menu {\n overflow: hidden;\n}\n#toolbox {\n position: absolute;\n left: 3px;\n top: 45px;\n bottom: 45px;\n width: 40px;\n}\n#toolbox > menu {\n height: 100%;\n}\n#meta {\n position: absolute;\n right: 0;\n}\n#chiral-flag {\n overflow-y: hidden;\n position: absolute;\n right: 0;\n}\n#chiral-flag > button {\n width: 64px;\n margin-left: 8px;\n margin-right: 8px;\n}\n#chiral-flag > button > svg {\n stroke-width: 0;\n}\n#chiral-flag > button > svg {\n position: static;\n left: 0;\n top: 0;\n width: 52px;\n}\n[role='toolbar'] {\n user-select: none;\n}\n[role='toolbar'] menu {\n font-size: 0.00001px;\n -webkit-text-size-adjust: none;\n}\n[role='toolbar'] li {\n display: inline-block;\n vertical-align: top;\n}\n[role='toolbar'] li > svg {\n fill: #333;\n display: none;\n}\n[role='toolbar'] button {\n display: block;\n border: 0;\n padding: 0;\n position: relative;\n background: inherit;\n background-color: white;\n width: 32px;\n height: 32px;\n margin: 4px;\n}\n[role='toolbar'] button:before,\n[role='toolbar'] button:after {\n display: inline-block;\n vertical-align: middle;\n}\n[role='toolbar'] button:after {\n position: absolute;\n left: 0;\n}\n[role='toolbar'] button:hover {\n transition: transform, 0.2s, ease-out;\n transform: scale(1.25);\n box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.12);\n}\n[role='toolbar'] button:active,\n[role='toolbar'] button[disabled] {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n box-shadow: none;\n}\n[role='toolbar'] button > svg {\n position: absolute;\n top: 0.1em;\n left: 0.1em;\n font-size: 26px;\n width: 26px;\n height: 26px;\n fill: #333;\n}\n[role='toolbar'] .selected button {\n background: #444;\n color: white;\n}\n[role='toolbar'] .selected button > span {\n color: white;\n}\n[role='toolbar'] .selected button > svg {\n fill: white;\n stroke: white;\n stroke-width: 5;\n}\n[role='toolbar'] kbd {\n display: none;\n font: 0.8em monospace;\n color: #ccc;\n}\n.cliparea {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 0;\n height: 0;\n display: block;\n font-size: 1px;\n z-index: -1;\n color: transparent;\n background: transparent;\n overflow: hidden;\n border: none;\n padding: 0;\n resize: none;\n outline: none;\n user-select: text;\n}\nli.opened > menu {\n margin: 0 !important;\n position: absolute;\n left: 47px;\n z-index: 20;\n white-space: nowrap;\n word-break: keep-all;\n padding: 2px;\n background: white;\n border: 1px solid #ccc;\n border-radius: 5px;\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\nli.opened > menu li + li > menu {\n margin-top: 3px;\n border-top: 1px solid #ccc;\n padding-top: 2px;\n}\n#atom button,\n#freq-atoms button {\n font-size: 19px;\n}\n#atom kbd,\n#freq-atoms kbd {\n display: none;\n}\nselect {\n font-size: 14px;\n}\n#select,\n#bond-common,\n#bond-stereo,\n#bond-query,\n#reaction {\n position: relative;\n overflow: hidden;\n height: 40px;\n width: 100%;\n}\n#select > svg,\n#bond-common > svg,\n#bond-stereo > svg,\n#bond-query > svg,\n#reaction > svg {\n display: block;\n width: 7px;\n height: 7px;\n position: absolute;\n right: 0;\n bottom: 0;\n}\n#select:hover > svg,\n#bond-common:hover > svg,\n#bond-stereo:hover > svg,\n#bond-query:hover > svg,\n#reaction:hover > svg {\n fill: #1a7090;\n}\n#select.opened,\n#bond-common.opened,\n#bond-stereo.opened,\n#bond-query.opened,\n#reaction.opened {\n overflow: visible;\n}\n@media (max-width: 840px) {\n #zoom-in,\n #zoom-out {\n display: none;\n }\n}\n@media (max-width: 1040px) {\n #bond-common,\n #bond-stereo,\n #bond-query {\n height: 32px;\n width: 100%;\n }\n}\n@media (max-height: 850px) {\n #rgroup {\n position: relative;\n overflow: hidden;\n height: 40px;\n width: 100%;\n }\n #rgroup > svg {\n display: block;\n width: 7px;\n height: 7px;\n position: absolute;\n right: 0;\n bottom: 0;\n }\n #rgroup:hover > svg {\n fill: #1a7090;\n }\n #rgroup.opened {\n overflow: visible;\n }\n}\n@media (max-height: 850px) and (max-width: 1040px) {\n #rgroup {\n height: 32px;\n width: 100%;\n }\n}\n@media (max-height: 800px) {\n #transform {\n position: relative;\n overflow: hidden;\n height: 40px;\n width: 100%;\n }\n #transform > svg {\n display: block;\n width: 7px;\n height: 7px;\n position: absolute;\n right: 0;\n bottom: 0;\n }\n #transform:hover > svg {\n fill: #1a7090;\n }\n #transform.opened {\n overflow: visible;\n }\n}\n@media (max-height: 800px) and (max-width: 1040px) {\n #transform {\n height: 32px;\n width: 100%;\n }\n}\n@media (max-height: 700px) {\n li.opened li {\n display: flex;\n }\n li.opened li menu {\n width: 100%;\n }\n li.opened button {\n display: flex;\n justify-content: space-between;\n width: 100%;\n margin: 1px 0;\n padding: 0.3em 0.3em 0.3em 2em;\n height: 1.7em;\n font-size: 14px;\n text-align: left;\n }\n li.opened button:before,\n li.opened button:after {\n padding-right: 0.4em;\n font-size: 18px;\n }\n li.opened button[disabled] {\n background: inherit;\n color: #baa;\n }\n li.opened button kbd {\n margin: 2.5px 0 0 10px;\n display: inline-block;\n }\n li.opened button > svg {\n width: 20px;\n height: 20px;\n }\n li.opened button:hover {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n background-color: #eee;\n }\n li.opened .selected button {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n background: #444;\n color: white;\n }\n li.opened .selected button > span {\n color: white;\n }\n li.opened .selected button > svg {\n fill: white;\n stroke: white;\n stroke-width: 5;\n }\n #bond-common,\n #bond-stereo,\n #bond-query {\n position: static;\n overflow: visible;\n height: auto;\n width: auto;\n }\n #bond-common > svg,\n #bond-stereo > svg,\n #bond-query > svg {\n display: none;\n }\n #bond {\n position: relative;\n overflow: hidden;\n height: 40px;\n width: 100%;\n }\n #bond > svg {\n display: block;\n width: 7px;\n height: 7px;\n position: absolute;\n right: 0;\n bottom: 0;\n }\n #bond:hover > svg {\n fill: #1a7090;\n }\n #bond.opened {\n overflow: visible;\n }\n}\n@media (max-height: 700px) and (max-width: 850px) {\n li.opened li {\n display: flex;\n }\n li.opened li menu {\n width: 100%;\n }\n li.opened button {\n display: flex;\n justify-content: space-between;\n width: 100%;\n margin: 1px 0;\n padding: 0.3em 0.3em 0.3em 2em;\n height: 1.7em;\n font-size: 12px;\n text-align: left;\n }\n li.opened button:before,\n li.opened button:after {\n padding-right: 0.4em;\n font-size: 16px;\n }\n li.opened button[disabled] {\n background: inherit;\n color: #baa;\n }\n li.opened button kbd {\n margin: 2.5px 0 0 10px;\n display: inline-block;\n }\n li.opened button > svg {\n width: 17px;\n height: 17px;\n }\n li.opened button:hover {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n background-color: #eee;\n }\n li.opened .selected button {\n transition: transform, 0.2s, ease-out;\n transform: scale(none);\n transform: scale(1);\n background: #444;\n color: white;\n }\n li.opened .selected button > span {\n color: white;\n }\n li.opened .selected button > svg {\n fill: white;\n stroke: white;\n stroke-width: 5;\n }\n}\n@media (max-height: 700px) and (max-width: 1040px) {\n #bond {\n height: 32px;\n width: 100%;\n }\n}\n@media (max-height: 600px) {\n #rgroup,\n #transform,\n #bond {\n height: 32px;\n width: 100%;\n }\n}\n@media (min-height: 800px) {\n #reaction + li {\n margin-top: 5px;\n border-top: 1px solid #ccc;\n padding-top: 4px;\n }\n}\n@media (min-height: 650px) {\n #erase + li,\n #chain + li,\n #charge + li,\n #transform + li,\n #atom + li,\n #freq-atoms + li {\n margin-top: 5px;\n border-top: 1px solid #ccc;\n padding-top: 4px;\n }\n}\n@media (min-width: 1160px) {\n #analyse + li,\n #document + li,\n #edit + li,\n #zoom + li {\n margin-left: 10px;\n border-left: 1px solid #ccc;\n padding-left: 9px;\n }\n}\n@media (max-height: 600px), (max-width: 1040px) {\n body,\n select,\n form {\n font-size: 11px;\n }\n #canvas {\n top: 37px;\n left: 37px;\n right: 37px;\n bottom: 37px;\n }\n #canvas .measure-log {\n top: 37px;\n right: 37px;\n }\n #mainmenu,\n #template {\n left: 37px;\n right: 37px;\n height: 32px;\n }\n #elements,\n #toolbox {\n top: 37px;\n bottom: 37px;\n width: 32px;\n }\n [role='toolbar'] button {\n width: 24px;\n height: 24px;\n margin: 4px;\n }\n [role='toolbar'] button > svg {\n position: absolute;\n top: 0.1em;\n left: 0.1em;\n font-size: 20px;\n width: 20px;\n height: 20px;\n fill: #333;\n }\n #chiral-flag button {\n width: 48px;\n margin-left: 8px;\n margin-right: 8px;\n }\n #chiral-flag button > svg {\n position: static;\n left: 0;\n top: 0;\n width: 40px;\n }\n #select,\n #reaction {\n height: 32px;\n width: 100%;\n }\n li.opened > menu {\n left: 37px;\n }\n #atom button,\n #freq-atoms button {\n font-size: 16px;\n }\n}\n@media (max-width: 770px) {\n #help,\n #about {\n display: none;\n }\n #mainmenu {\n @set-size (@small-dim);\n left: 2px;\n right: 2px;\n }\n}\n#template-common + li {\n margin-left: 15px;\n border-left: 1px solid #ccc;\n padding-left: 14px;\n}\n.cellar {\n display: none;\n}\n.warning {\n color: #ff5555;\n}\n.warning:before {\n content: '⚠ ';\n}\n#analyse button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#check button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#cip button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#clean button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#generic-groups button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#layout button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#miew button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#reaction-arrow button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#reaction-automap button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#reaction-map button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#reaction-plus button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#reaction-unmap button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#recognize button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#rgroup-attpoints button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#rgroup-fragment button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#rgroup-label button:before {\n padding: 0.2em 0 0 0.2em;\n}\n#template-lib button:before {\n padding: 0.2em 0 0 0.2em;\n}\n","/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */\n\n/**\n * 1. Change the default font family in all browsers (opinionated).\n * 2. Correct the line height in all browsers.\n * 3. Prevent adjustments of font size after orientation changes in IE and iOS.\n */\n\nhtml {\n font-family: sans-serif; /* 1 */\n line-height: 1.15; /* 2 */\n -ms-text-size-adjust: 100%; /* 3 */\n -webkit-text-size-adjust: 100%; /* 3 */\n}\n\n/**\n * Remove the margin in all browsers (opinionated).\n */\n\nbody {\n margin: 0;\n}\n\n/* HTML5 display definitions\n ========================================================================== */\n\n/**\n * Add the correct display in IE 9-.\n * 1. Add the correct display in Edge, IE, and Firefox.\n * 2. Add the correct display in IE.\n */\n\narticle,\naside,\ndetails, /* 1 */\nfigcaption,\nfigure,\nfooter,\nheader,\nmain, /* 2 */\nmenu,\nnav,\nsection,\nsummary { /* 1 */\n display: block;\n}\n\n/**\n * Add the correct display in IE 9-.\n */\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n}\n\n/**\n * Add the correct display in iOS 4-7.\n */\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Add the correct display in IE 10-.\n * 1. Add the correct display in IE.\n */\n\ntemplate, /* 1 */\n[hidden] {\n display: none;\n}\n\n/* Links\n ========================================================================== */\n\n/**\n * 1. Remove the gray background on active links in IE 10.\n * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.\n */\n\na {\n background-color: transparent; /* 1 */\n -webkit-text-decoration-skip: objects; /* 2 */\n}\n\n/**\n * Remove the outline on focused links when they are also active or hovered\n * in all browsers (opinionated).\n */\n\na:active,\na:hover {\n outline-width: 0;\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * 1. Remove the bottom border in Firefox 39-.\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Prevent the duplicate application of `bolder` by the next rule in Safari 6.\n */\n\nb,\nstrong {\n font-weight: inherit;\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * Add the correct font style in Android 4.3-.\n */\n\ndfn {\n font-style: italic;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/**\n * Add the correct background and color in IE 9-.\n */\n\nmark {\n background-color: #ff0;\n color: #000;\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10-.\n */\n\nimg {\n border-style: none;\n}\n\n/**\n * Hide the overflow in IE.\n */\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct margin in IE 8.\n */\n\nfigure {\n margin: 1em 40px;\n}\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change font properties to `inherit` in all browsers (opinionated).\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font: inherit; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Restore the font weight unset by the previous rule.\n */\n\noptgroup {\n font-weight: bold;\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput { /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect { /* 1 */\n text-transform: none;\n}\n\n/**\n * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\n * controls in Android 4.\n * 2. Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\nhtml [type=\"button\"], /* 1 */\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button; /* 2 */\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Change the border, margin, and padding in all browsers (opinionated).\n */\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Remove the default vertical scrollbar in IE.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10-.\n * 2. Remove the padding in IE 10-.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.\n */\n\n[type=\"search\"]::-webkit-search-cancel-button,\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * Correct the text style of placeholders in Chrome, Edge, and Safari.\n */\n\n::-webkit-input-placeholder {\n color: inherit;\n opacity: 0.54;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n","@import \"variables\";\n@import (reference) \"component\";\n\nbutton, input[type=submit],\ninput[type=reset], input[type=button] {\n\tdisplay: inline-block;\n\tmargin: 0;\n\ttext-align: center;\n\tvertical-align: middle;\n\t//touch-action: manipulation;\n\t//cursor: pointer;\n\tbackground-image: none;\n\tborder: 1px solid transparent;\n\tpadding: 0.42em 0.85em;\n\n\tcolor: #333;\n\tbackground-color: #fff;\n\tborder-color: #ccc;\n\tborder-radius: 4px;\n\tuser-select: none;\n\n\t&:hover, &:focus {\n\t\tbackground-image: linear-gradient(to bottom, #fff, darken(#fff, 7%));\n\t\t//.gradient-vertical-three(25%, #fff, darken(#fff, 10%), #fff);\n\t\t//color: @btn-default-color;\n\t\toutline: 0;\n\t}\n\n\t&:active {\n\t\toutline: 0;\n\t\tbackground-image: none;\n\t\tbox-shadow: inset 0 3px 5px rgba(0,0,0,.125);\n\t}\n\n\t&.disabled, &[disabled], fieldset[disabled] & {\n\t\tbackground-image: none;\n\t\tcursor: not-allowed;\n\t\topacity: .5;\n\t\tbox-shadow: none;\n\t}\n\n\t&.save-button {\n\t\tfloat: left;\n\t}\n\t&.open-button {\n\t\tfloat: left;\n\t}\n\n\t& > input[type=file] { // hide file input\n\t\tleft: -9999px;\n\t\tposition: absolute;\n\t}\n\t& + & {\n\t\tmargin-left: 0.3em;\n\t}\n}\n\nselect, textarea,\ninput[type=text], input[type=number], input[type=search] {\n\t&:extend(.-Control);\n\t&:active, &:focus {\n\t\toutline: 0;\n\t}\n\t&:hover, &:focus {\n\t\t.highlight-shadow(black);\n\t}\n\n\t&[disabled],\n\t&[readonly],\n\tfieldset[disabled] & {\n\t\tcursor: not-allowed;\n\t\t//box-shadow: none;\n\t\tbackground: #efefef;\n\t\topacity: 0.6;\n\t}\n}\n\n.suggestList {\n\tborder: 1px solid #3297FD;\n\tposition: absolute;\n\tbackground-color: white;\n\tmargin-left: 3px;\n\tpadding-left: 3px;\n\twidth: 93%;\n\tz-index: 3;\n}\n\n.suggestList li:hover {\n\tbackground-color: #3297FD;\n\tcolor: white;\n}\n\n@input-height: 2.4em + 2 * 0.35em;\n\nlabel[data-error] {\n\tselect, textarea,\n\tinput[type=text], input[type=number], input[type=search] {\n\t\tborder: 1px solid @error-color;\n\t\t&:hover, &:focus {\n\t\t\t.highlight-shadow(@error-color);\n\t\t}\n\t}\n\n\t&:hover:after {\n\t\tcontent: \"Error: \" attr(data-error);\n\t\tdisplay: block;\n\t\tposition: fixed;\n\t\twhite-space: pre;\n\t\tpadding: 0.35em;\n\t\tbackground: lighten(@error-color, 30%);\n\t\tborder: 1px solid @error-color;\n\t\tborder-radius: 4px;\n\t\tline-height: 1em;\n\t\tfont-size: 0.9em;\n\t\tz-index: 2;\n\t}\n}\n\ninput[type=radio],\ninput[type=checkbox] {\n\tvertical-align: middle;\n\t//display: inline-block;\n\tmargin: 0 0.3em;\n\tmargin-top: 1px \\9; // IE8-9\n\tline-height: normal;\n\t// TODO: style focus, active, etc\n}\n\nfieldset {\n\tborder: 1px solid @border-color;\n\tpadding: 0.3em;\n\tmargin: 0;\n\tborder-radius: 4px;\n\t& > li {\n\t\tdisplay: inline-block;\n\t}\n\t&.-hidden {\n\t\tborder-color: transparent;\n\t\tmargin-top: 0.9em + 2 * 0.3em;\n\t}\n}\n\nlegend {\n\tcolor: darken(@border-color, 25%);\n\tpadding: 0 0.4em;\n\tfont-size: 0.9em;\n\ttext-align: left;\n}\n","// Workaround less issue:\n// https://github.com/less/less.js/issues/2004\n@import 'variables';\n\n.set-size(inherit) {\n}\n.set-size(small) {\n\t#small-dim;\n}\n.set-size(large) {\n\t#large-dim;\n}\n\n/////////////////////\n\n.canvas(@dim: inherit) {\n\tposition: absolute;\n\tborder: @border-color 1px solid;\n\tborder-radius: 5px;\n\toverflow: auto;\n\t.canvas-size(@dim);\n\t// svg {\n\t//\t\tdisplay: block;\n\t// }\n\t.measure-log {\n\t\tposition: fixed;\n\t}\n}\n\n.canvas-size(@dim) {\n\t.set-size(@dim);\n\ttop: @canvas-padding;\n\tleft: @canvas-padding;\n\tright: @canvas-padding;\n\tbottom: @canvas-padding;\n\n\t.measure-log {\n\t\ttop: @canvas-padding;\n\t\tright: @canvas-padding;\n\t}\n}\n\n/////////////////////\n\n.toolbar(@dir, @dim: inherit) {\n\t.orientation(@dir);\n\tposition: absolute;\n\t@{dir}: @app-gap;\n\t.toolbar-size(@dir, @dim);\n\t& > menu {\n\t\t\t@{main-dim}: 100%;\n\t}\n}\n\n.toolbar-size(@dir, @dim) {\n\t.orientation(@dir);\n\t.set-size(@dim);\n\t@{main-lose}: @canvas-padding;\n\t@{main-rise}: @canvas-padding;\n\t@{cross-dim}: @toolbar-size;\n}\n\n.toolbar-pos(@icon-count, @separator-count: 0, @loose-pad: 0,\n @rise-pad: @loose-pad, @dim: inherit) {\n\t.set-size(@dim);\n\t@offset: @icon-count * @toolbar-size +\n (@loose-pad + @rise-pad) * @separator-count;\n}\n\n/////////////////////\n\n.toolbutton(@dim: inherit) {\n\tdisplay: block;\n\tborder: 0;\n\tpadding: 0;\n\tposition: relative;\n\tbackground: inherit;\n\tbackground-color: white;\n\t//background-image: none;\n\n\t//text-align: center;\n\t//overflow: hidden;\n\t//font: ~\"0/0\" a;\n\t//.text-hide(transparent);\n\n\t&:before, &:after {\n\t\tdisplay: inline-block;\n\t\tvertical-align: middle;\n\t}\n\t&:after {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t}\n\t&:hover { // &:hover:not(:active)\n\t\t.highlight-scale(@scale:1.25);\n\t\t.highlight-shadow(black);\n\t}\n\t&:active, &[disabled] {\n\t\t.highlight-scale(none);\n\t\t.highlight-shadow(none);\n\t\t//.shadow-highlight(black, inset);\n\t}\n\t.toolbutton-size(@dim);\n}\n\n.toolbutton-size(@dim) {\n\t.set-size(@dim);\n\twidth: @button-size;\n\theight: @button-size;\n\tmargin: @button-grow;\n\n\t& > svg {\n\t\tposition: absolute; // TODO fix it\n\t\ttop: 0.1em;\n\t\tleft: 0.1em;\n\t\tfont-size: @icon-size;\n\t\twidth: @icon-size;\n\t\theight: @icon-size;\n\t\tfill: @main-color;\n\t}\n}\n\n.toolbutton-horizontal(@dim, @width-cells: 1) {\n\t.set-size(@dim);\n\twidth: @button-size * @width-cells;\n\tmargin-left: @button-grow * @width-cells;\n\tmargin-right: @button-grow * @width-cells;\n\n\t& > svg {\n\t\tposition: static;\n\t\tleft: 0;\n\t\ttop: 0;\n\t\twidth: @icon-size * @width-cells;\n\t}\n}\n////////////////////\n\n.collapsed(@dim: inherit) when not (@dim = none) {\n\tposition: relative;\n\toverflow: hidden;\n\t.collapsed-size(@dim);\n\t.collapsed-icon;\n}\n\n.collapsed(none) {\n\tposition: static;\n\toverflow: visible;\n\theight: auto;\n\twidth: auto;\n\n\t& > svg { // dropdown\n\t\tdisplay: none;\n\t}\n\t// &> menu {\n\t// \tmargin: 0 !important; // TODO: fix me in js\n\t// }\n}\n\n.collapsed-size(@dim) {\n\t.set-size(@dim);\n\theight: @toolbar-size;\n\twidth: 100%; //@toolbar-size;\n}\n\n.collapsed-ifnot(@classname, @dim: inherit) {\n\t.collapsed(@dim);\n\t&.@{classname} {\n\t\toverflow: visible;\n\t}\n}\n\n.collapsed-icon() {\n\t& > svg {\n\t\tdisplay: block;\n\t\twidth: 7px;\n\t\theight: 7px;\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tbottom: 0;\n\t}\n\t&:hover > svg {\n\t\t//.scale-highlight;\n\t\tfill: @active-color;\n\t}\n}\n\n/////////////////////\n\n.expanded(@dim: inherit) {\n\t.set-size(@dim);\n\t& > menu {\n\t\tmargin: 0 !important;\n\t\tposition: absolute;\n\t\tleft: @toolbar-size + @menu-pad;\n\t\tz-index: 20;\n\n\t\t//display: table-cell;\n\t\twhite-space: nowrap;\n\t\tword-break: keep-all;\n\t\t//width: auto;\n\t\t//height: @toolbar-size;\n\n\t\tpadding: 2px;\n\t\t.separate-menu(vertical, 3px);\n\n\t\tbackground: white;\n\t\tborder: 1px solid @border-color;\n\t\tborder-radius: 5px;\n\t\tbox-shadow: 0 6px 12px rgba(0, 0, 0, .175);\n\t}\n}\n\n.expanded-size(@dim) {\n\t& > menu {\n\t\t.set-size(@dim);\n\t\tleft: @toolbar-size + @menu-pad;\n\t}\n}\n\n.expanded-menu(@dim: inherit) {\n\t.set-size(@dim);\n\tli {\n\t\tdisplay: flex;\n\t\tmenu {\n\t\t\twidth: 100%;\n\t\t}\n\t}\n\tbutton {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\twidth: 100%;\n\t\tmargin: 1px 0;\n\t\tpadding: 0.3em 0.3em 0.3em 2em;\n\t\theight: 1.7em;\n\n\t\tfont-size: @menu-font-size;\n\t\t//line-height: 18px;\n\t\ttext-align: left;\n\t\t&:before, &:after {\n\t\t\tpadding-right: 0.4em;\n\t\t\tfont-size: @menu-icon-size;\n\t\t}\n\t\t&[disabled] { // TODO: general button highlight\n\t\t\t.highlight-invert(disabled); // refactor\n\t\t}\n\t\tkbd {\n\t\t\tmargin: 2.5px 0 0 10px;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t\t& > svg {\n\t\t\twidth: @expanded-icon-size;\n\t\t\theight: @expanded-icon-size;\n\t\t}\n\t}\n\tbutton:hover {\n\t\t.highlight-scale(none);\n\t\tbackground-color: #eee;\n\t}\n\t.selected button {\n\t\t//&:extend(button:active); not extended while in media\n\t\t.highlight-scale(none);\n\t\t.highlight-invert;\n\t}\n}\n\n/////////////////////\n\n.separator(@orientation, @lose-pad, @rise-pad) {\n\t.orientation(@orientation);\n\tmargin-@{main-lose}: @lose-pad;\n\tborder-@{main-lose}: 1px solid @border-color;\n\tpadding-@{main-lose}: @rise-pad - 1px; // substract 1px to assert\n\t// width = lose-pad + rise-pad\n}\n\n.separate-item(@orientation, @lose-pad, @rise-pad: @lose-pad) {\n\t& + li {\n\t\t.separator(@orientation, @lose-pad, @rise-pad);\n\t}\n}\n\n.separate-menu(@orientation, @lose-pad, @rise-pad: @lose-pad) {\n\tli + li > menu {\n\t\t.separator(@orientation, @lose-pad, @rise-pad);\n\t}\n}\n\n/////////////////////\n// Highlight effects\n\n.highlight-scale(@scale) {\n\ttransition: transform, 0.2s, ease-out;\n\ttransform: scale(@scale);\n}\n\n.highlight-scale(none) {\n\ttransform: scale(1);\n}\n\n.highlight-shadow(inset, @color: @active-color) {\n\tbox-shadow: 0px -1px 6px fade(@color, 5%) inset,\n\t0px 1px 3px @color inset;\n}\n\n.highlight-shadow(@color: @active-color) when (iscolor(@color)) {\n\tbox-shadow: inset 0 0 1px 1px fade(@color, 12%);\n}\n\n.highlight-shadow(none) {\n\tbox-shadow: none;\n}\n\n.highlight-circle(@color: @active-color, @inset: '') {\n\tborder-radius: (@icon-size + @icon-padding) / 2;\n\tbox-shadow: ~'0 0 4px @{color} @{inset}';\n}\n\n.highlight-symbol(@color: @active-color) {\n\tcolor: @active-color;\n\ttext-shadow: 1px 1px 3px @color;\n}\n\n.highlight-symbol-invert() {\n\tbackground: #333;\n\ttext-shadow: 0px 1px 10px white, 0px -1px 10px white;\n}\n\n.highlight-invert() {\n\tbackground: #444;\n\tcolor: white;\n\t&>span {\n color: white;\n }\n\t&>svg {\n\t\tfill: white;\n\t\tstroke: white;\n\t\tstroke-width: 5;\n\t}\n}\n\n.highlight-invert(disabled) {\n\tbackground: inherit;\n\tcolor: @disabled-color; // hint for menus\n}\n\n/////////////////////\n// Transition effects\n\n.transition-twirl(@time: 0.3s) {\n\ttransform: rotateX(0);\n\ttransition: transform @time;\n\t&.hide {\n\t\ttransform-style: preserve-3d;\n\t\ttransform: perspective(350px) rotateX(-70deg);\n\t}\n}\n\n.transition-zoom(@time: 0.3s) {\n\topacity: 1;\n\ttransform: scale(1);\n\ttransition: transform @time, opacity @time;\n\n\t&.hide {\n\t\topacity: .2;\n\t\ttransform: scale(.5);\n\t}\n}\n\n//////////////////////////\n// Icon content & coloring\n\n.colorize(@color) when not (@color = inherit) {\n\tcolor: @color;\n}\n\n////////////////////////////////////////////\n// Little bit jankie directions unification\n\n.orientation(horizontal) {\n\t@main-rise: right;\n\t@main-lose: left;\n\t@main-dim: width;\n\t@cross-rise: bottom;\n\t@cross-lose: top;\n\t@cross-dim: height;\n}\n\n.orientation(vertical) {\n\t@main-rise: bottom;\n\t@main-lose: top;\n\t@main-dim: height;\n\t@cross-rise: right;\n\t@cross-lose: left;\n\t@cross-dim: width;\n}\n\n.orientation(@dir) when (@dir = top), (@dir = bottom) {\n\t.orientation(horizontal);\n}\n\n.orientation(@dir) when (@dir = left), (@dir = right) {\n\t.orientation(vertical);\n}\n\n.direction(@dir) {\n\t.to-index(top) { @index: 0; }\n\t.to-index(right) { @index: 1; }\n\t.to-index(bottom) { @index: 2; }\n\t.to-index(left) { @index: 3; }\n\t@directions: top right bottom left;\n\t@orientations: horizontal vertical;\n\t.to-index(@dir);\n\n\t@main-start: extract(@directions, mod(@index, 4) + 1);\n\t@main-end: extract(@directions, mod((@index + 2), 4) + 1);\n\n\t@cross-start: extract(@directions, mod((@index + 3), 4) + 1);\n\t@cross-end: extract(@directions, mod((@index + 1), 4) + 1);\n\n\t@main-orient: extract(@orientations, mod(@index + 1, 2));\n\t@cross-orient: extract(@orientations, mod(@index + 1, 2) + 1);\n}\n\n/////////////////////\n// Basic mixins\n\n.background-opacity(@color, @opacity) {\n\t@rgba-color: rgba(red(@color), green(@color), blue(@color), @opacity);\n\tbackground-color: @rgba-color;\n\n\tbackground: none \\9; // Hack for IE8\n\tfilter: e(%(\"progid:DXImageTransform.Microsoft.gradient(startColorstr='%d', endColorstr='%d')\", argb(@rgba-color), argb(@rgba-color)));\n\t//zoom: 1;\n\t&:not([ie9]) {\n\t\t// Do not apply to IE9 as it supports rgba\n\t\tfilter: progid:DXImageTransform.Microsoft.gradient(enabled='false');\n\t}\n}\n\n.text-hide(transparent) {\n\tfont: ~\"0/0\" a;\n\tcolor: transparent;\n\ttext-shadow: none;\n\tbackground-color: transparent;\n\tborder: 0;\n}\n\n.text-hide(indent) {\n\t@approximate-em-value: 12px / 1em;\n\t@wider-than-any-screen: -9999em;\n\ttext-indent: @wider-than-any-screen * @approximate-em-value;\n\toverflow: hidden;\n\ttext-align: left;\n}\n\n.text-hide() {\n\t.text-hide(indent);\n}\n\n.reset-button() {\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\tbox-shadow: none;\n}\n\n.remove-inline-spacing() {\n\t// vanish horizontal spacing between inline blocks\n\tfont-size: 0.00001px;\n\t-webkit-text-size-adjust: none;\n}\n","@import \"variables\";\n\n.-Control {\n\tborder-radius: 4px;\n\n\tdisplay: inline-block;\n\t//display: block;\n\tvertical-align: middle;\n\n\tbackground: white;\n\tline-height: 20 / 14;\n\theight: 2.4em;\n\tpadding: 0.35em 0.15em 0.35em 0.3em;\n\tmargin: 2px;\n\n\tborder: 1px solid @border-color;\n\tbox-shadow: inset 0 1px 1px rgba(0,0,0,.075);\n\tbox-sizing: border-box;\n\t// transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n\n.-SelectList {\n\t&:extend(select all);\n\tli {\n\t\tdisplay: block;\n\t\tpadding: 0 2px 1px;\n\t\tcursor: default;\n\t\t&:hover {\n\t\t\tbackground-color: @form-hover-background;\n\t\t}\n\n\t\t&.selected {\n\t\t\tcolor: white;\n\t\t\tbackground-color: @form-selected-background;\n\t\t}\n\n\t\t&.split {\n\t\t\tmargin-top: 2px;\n\t\t\tpadding-top: 2px;\n\t\t\tborder-top: 1px @border-color solid;\n\t\t}\n\t}\n}\n\n.-Tabs {\n\toutline: none;\n\t.tabs {\n\t\twidth: 100%;\n\t\ta {\n\t\t\tpadding: 8px 12px;\n\t\t\tmargin-right: 2px;\n\t\t\tline-height: 14px;\n\t\t\tdisplay: inline-block;\n\t\t\tcursor: pointer;\n\t\t\ttext-align: center;\n\t\t\tbackground-color: #eee;\n\t\t\tborder: 1px solid transparent;\n\t\t\tborder-radius: 4px 4px 0 0;\n\t\t\t&:hover {\n\t\t\t\tbackground-color: #9dc2d0;\n\t\t\t}\n\t\t\t&.active {\n\t\t\t\tborder: 1px solid #ddd;\n\t\t\t\tborder-bottom-color: transparent;\n\t\t\t\tbackground-color: white;\n\t\t\t}\n\t\t}\n\t}\n\t.tabs-content {}\n}\n\n.-Accordion {\n\tmargin: 0.3em;\n\n\t.ac_tab {\n\t\tmargin-top: 2px;\n\t\t& > a:first-child {\n\t\t\tz-index: 3;\n\n\t\t\tpadding: 6px 0;\n\t\t\tdisplay: block;\n\t\t\tcursor: pointer;\n\t\t\ttext-align: center;\n\t\t\tbackground-color: #eee;\n\t\t\tborder: 1px solid #ccc;\n\t\t\ttransition: border-radius 0.1s linear;\n\t\t\t&:before {\n\t\t\t\tmargin-left: 30px;\n\t\t\t\tfloat: left;\n\t\t\t}\n\t\t\t&:hover {\n\t\t\t\tbackground-color: #9dc2d0;\n\t\t\t}\n\t\t}\n\n\t\t& > *:nth-child(2) { // child content\n\t\t\toverflow: hidden;\n\t\t\ttransition-property: height, padding; // need \"height\" in child comp. for working transition\n\t\t\ttransition-duration: 0.5s;\n\t\t\ttransition-timing-function: linear;\n\t\t}\n\t}\n\n\t.ac_tab.active { // active tab\n\t\t& > a:first-child {\n\t\t\tborder-radius: 6px 6px 0 0;\n\t\t\tborder-bottom: 0;\n\t\t\ttransition-delay: 0s;\n\t\t\t&:before {\n\t\t\t\tcontent: '−';\n\t\t\t}\n\t\t}\n\t}\n\n\t.ac_tab.hidden {\n\t\t& > a:first-child {\n\t\t\tborder-radius: 6px;\n\t\t\ttransition-delay: 0.4s;\n\t\t\t&:before {\n\t\t\t\tcontent: '+';\n\t\t\t}\n\t\t}\n\t\t& > *:nth-child(2) { // hidden element\n\t\t\theight: 0;\n\t\t\tpadding: 0;\n\t\t\tborder: 0;\n\t\t}\n\t}\n}\n\n.-Measure {\n\tbackground-color: white;\n\tborder: @border-color 1px solid;\n\tborder-radius: 0 5px;\n\twidth: 8em;\n\theight: 1.2em;\n\tpadding: .3em;\n\ttext-align: center;\n\topacity: 0;\n\ttransition: opacity 0.5s;\n}\n","@import \"variables\";\n@import \"form\";\n@import (reference) \"component\";\n\n.ket-overlay {\n\tposition: fixed;\n\tleft: 0;\n\ttop: 0;\n\tbottom: 0;\n\tright: 0;\n\tz-index: 40;\n\ttext-align: center;\n\n\tbackground-image: data-uri('overlay.svg');\n\t.background-opacity(#777, 0.2);\n\t//opacity: 1;\n\n\t&.animate {\n\t\ttransition: background-color 0.3s;\n\t\t//transition: opacity 0.3s;\n\t}\n\n\t&.hide {\n\t\tbackground-color: fade(#777, 1%);\n\t\t//opacity: 0.1;\n\t}\n\n\t&:after {\n\t\tcontent: '';\n\t\tdisplay: inline-block;\n\t\theight: 100%;\n\t\tvertical-align: middle;\n\t}\n\n\tform[role=dialog] {\n\t\toutline: 0;\n\t\tdisplay: inline-block;\n\t\tposition: relative;\n\t\tvertical-align: middle;\n\t}\n}\n\n.ket-spinner {\n\tmargin: auto;\n\tdisplay: block;\n\tborder: 16px solid #f3f3f3;\n\tborder-top: 16px solid #0000ff;\n\tborder-radius: 50%;\n\twidth: 5em;\n\theight: 5em;\n\tanimation: spin 3s linear infinite;\n\n\t@keyframes spin {\n\t\t0% { transform: rotate(0deg); }\n\t\t100% { transform: rotate(360deg); }\n\t}\n}\n\nform[role=dialog] {\n\ttext-align: left;\n\tbackground-color: #fff;\n\tborder: 1px solid #999;\n\tborder: 1px solid rgba(0,0,0,.3);\n\tborder-radius: 6px;\n\tbox-shadow: 0 3px 9px rgba(0,0,0,.5);\n\tbackground-clip: padding-box;\n\toverflow: visible;\n\t.transition-zoom;\n\t//outline: 0;\n\t> * {\n\t\tmargin: 0.3em;\n\t}\n\theader, footer {\n\t\tmargin: 0;\n\t\tpadding: 0.2em 0.6em;\n\t\tbackground-color: #f5f5f5;\n\t}\n\theader {\n\t\tfont-size: 1.6em;\n\t\tfont-weight: 600;\n\t\tline-height: 1.3;\n\t\tborder-bottom: 1px solid #ddd;\n\t\tborder-radius: 6px 6px 0 0;\n\t}\n\tfooter {\n\t\tclear: both;\n\t\tborder-top: 1px solid #ddd;\n\t\tborder-radius: 0 0 6px 6px;\n\t\ttext-align: right;\n\t}\n\t.close {\n\t\t.reset-button;\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tright: 0.3em;\n\t\tcolor: lighten(#000, 60%);\n\t\tfont-size: 0.8em;\n\t\tfont-weight: bold;\n\t\ttext-shadow: 0 1px 0 rgba(255,255,255, 1);\n\t\topacity: 0.5;\n\t\t&:hover {\n\t\t\topacity: 1;\n\t\t}\n\t}\n}\n\n/////////////////////\n\n.template-lib {\n\tlabel {\n\t\tposition: absolute;\n\t\tright: 0;\n\t\tleft: 0;\n\t\ttext-align: center;\n\t\tline-height: 2.6em;\n\t\tinput[type=search] {\n\t\t\tfloat: right;\n\t\t\twidth: 660px;\n\t\t}\n\t}\n\t.groups {\n\t\t&:extend(.-SelectList all);\n\t\tmargin-top: 3.5em;\n\t\theight: 27em;\n\t\twidth: 11em;\n\t\tfloat: left;\n\t\toverflow: hidden;\n\t}\n\t.table {\n\t\tmargin-top: 3.5em;\n\t\tpadding: 0;\n\t\tfloat: left;\n\t\twidth: 550px;\n\t\theight: 27em;\n\t\toverflow: auto;\n\t}\n\t.tr {\n\t\theight: 120px;\n\t}\n\t.td {\n\t\twidth: 33%;\n\t\tfloat: left;\n\t\theight: 100%;\n\t\tposition: relative;\n\t\t&:before {\n\t\t\tposition: absolute;\n\t\t\tz-index: 10;\n\t\t\tleft: 0.3em;\n\t\t\ttop: 0;\n\t\t\tpadding: 0 4px;\n\t\t\tborder-radius: 3px;\n\t\t\tfont-size: 10px;\n\t\t\tcolor: darken(@border-color, 30%);\n\t\t\tbackground-color: white;\n\t\t\tcontent: attr(title);\n\t\t}\n\t\t&.selected .struct {\n\t\t\tbackground-color: lighten(@form-selected-background, 15%);\n\t\t}\n\t}\n\t.attach-button {\n\t\tmargin: 0 4px 2px 0;\n\t\tposition: absolute;\n\t\tbottom: 0;\n\t\tright: 0;\n\t}\n\t.struct {\n\t\tposition: absolute;\n\t\tdisplay: block;\n\t\tbox-sizing: border-box;\n\t\tpadding: 1em;\n\t\twidth: 98%;\n\t\theight: 98%;\n\n\t\tborder: 1px solid @border-color;\n\t\tborder-radius: 5px;\n\t\t&:hover {\n\t\t\tbackground: @form-hover-background;\n\t\t}\n\t}\n\tdiv.struct {\n\t\tpadding: 0; // TODO: tmp hack to fit viewbox\n\t}\n}\n\nform.bond {\n\tlabel {\n\t\ttext-align: right;\n\t\tdisplay: block;\n\t}\n\tselect {\n\t\twidth: 12em;\n\t}\n}\n\nform.atom-props {\n\tfieldset {\n\t\tmargin-top: 0.7em;\n\t\ttext-align: right;\n\t\tlabel {\n\t\t\tmargin: 0.3em 0;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\t.main {\n\t\twidth: 14.5em;\n\t\tfloat: left;\n\t\t&:extend(fieldset.-hidden);\n\t\tinput {\n\t\t\twidth: 8em;\n\t\t}\n\t}\n\t.query, .reaction {\n\t\tfloat: right;\n\t\tclear: right;\n\t\twidth: 16em;\n\t\tinput[type=checkbox] {\n\t\t\tmargin: 0.6em 0.3em;\n\t\t}\n\t}\n}\n\nform.attach-points {\n\tform {\n\t\twidth: 17em;\n\t\ttext-align: right;\n\t\tlabel {\n\t\t\tmargin: @input-height / 3;\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n}\n\nform.automap {\n\twidth: 22em;\n\tlabel {\n\t\tdisplay: block;\n\t\ttext-align: right;\n\t\tline-height: @input-height;\n\t}\n}\n\nform.rgroup-logic {\n\tlabel {\n\t\tdisplay: inline-block;\n\t\ttext-align: right;\n\t\tline-height: @input-height;\n\t}\n\t.cond {\n\t\tdisplay: block;\n\t}\n\tinput[type=text] {\n\t\twidth: 7em;\n\t}\n}\n\n.sgroup, .sgroup-special {\n\twidth: 20em;\n\tlabel {\n\t\tdisplay: block;\n\t\ttext-align: right;\n\t\tinput, select {\n\t\t\twidth: 10em;\n\t\t}\n\t\t&:hover:after {\n\t\t\tmargin: 1px 0 0 3px;\n\t\t}\n\t}\n\tfieldset {\n\t\tborder: 0;\n\t\tpadding: 0;\n\t}\n\t.data {\n\t\tlabel {\n\t\t\ttext-align: left;\n\t\t\tfieldset.radio {\n\t\t\t\tlabel {\n\t\t\t\t\tmargin: .4em;\n\t\t\t\t\tdisplay: inline-block;\n\t\t\t\t}\n\t\t\t\tinput[type=radio] {\n\t\t\t\t\twidth: auto;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\ttextarea, select[name=fieldValue] {\n\t\t\tdisplay: block;\n\t\t\twidth: 19em;\n\t\t\theight: 12em;\n\t\t\toverflow: auto;\n\t\t}\n\t\tinput[type=text], select[name=fieldName] {\n\t\t\twidth: 19em;\n\t\t\tdisplay: block;\n\t\t\tmargin-bottom: 0;\n\t\t}\n\t}\n}\n\nform.settings {\n\twidth: 35em;\n\t.save-button {\n\t\tmargin-left: 10px;\n\t}\n\t.warning {\n\t\tmargin: 0.3em;\n\t}\n\n\t.accordion {\n\t\tfieldset {\n\t\t\tborder-radius: 0 0 6px 6px;\n\t\t\theight: @input-height * 4;\n\t\t}\n\t\tfieldset.server {\n\t\t\theight: @input-height * 5;\n\t\t}\n\t\tfieldset.miew {\n\t\t\theight: @input-height * 3;\n\t\t}\n\t\tfieldset.render {\n\t\t\theight: @input-height * 8;\n\t\t}\n\t\t&:extend(.-Accordion all);\n\n\t\tlabel {\n\t\t\tdisplay: block;\n\t\t\ttext-align: right;\n\t\t\tline-height: @input-height;\n\t\t\theight: @input-height;\n\t\t\tselect, input {\n\t\t\t\twidth: 50%;\n\t\t\t}\n\t\t\tdiv {\n\t\t\t\tmargin: 2px;\n\t\t\t\twidth: 50%;\n\t\t\t\tinput {\n\t\t\t\t\tmargin: 0 4px 0 0;\n\t\t\t\t}\n\t\t\t\tselect {\n\t\t\t\t\tmargin: 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:hover:after {\n\t\t\t\tleft: 50%;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.about {\n\twidth: 25em;\n\t& > a {\n\t\tdisplay: block;\n\t\tmargin: 2em 1em;\n\t}\n\tvar {\n\t\tmargin-left: .5em;\n\t\tfont-style: normal;\n\t\tfont-weight: bold;\n\t\tdisplay: inline-block;\n\t}\n\ttime {\n\t\tfont-style: italic;\n\t}\n\ta {\n\t\tcolor: @active-color;\n\t\t&:hover {\n\t\t\tcolor: @hover-color;\n\t\t}\n\t}\n\n\t@line-height: 1.4em;\n\tdl {\n\t\tposition: relative;\n\t\tmargin: 0 1em 1em;\n\t\tvertical-align: bottom;\n\t\tline-height: @line-height;\n\t}\n\tdd {\n\t\ttext-align: right;\n\t\tmargin-bottom: 0.5em;\n\t}\n\tdt + dd {\n\t\tmargin: -@line-height 0 0;\n\t}\n}\n\n.rgroup {\n\tul {\n\t\twidth: 25.6em;\n\t\tpadding: 0.5em;\n\t}\n\tli {\n\t\tdisplay: inline-block;\n\t\tmargin: 0.2em 0.1em;\n\t}\n\tform button {\n\t\tfont-size: 1.3em;\n\t\twidth: 2.3em;\n\t\theight: 2em;\n\t\tline-height: 1;\n\t\tvertical-align: middle;\n\t\tpadding: 0.15em;\n\t\tbackground: inherit;\n\t\t&:first-letter {\n\t\t\tfont-weight: 600;\n\t\t\tcolor: lighten(@main-color, 20%);\n\t\t}\n\t\t&:hover {\n\t\t\t.highlight-scale(@scale:1.005);\n\t\t\t.highlight-shadow(black);\n\t\t}\n\t\t&:active {\n\t\t\t.highlight-scale(none);\n\t\t\t.highlight-shadow(none);\n\t\t}\n\t\t&.selected {\n\t\t\t.highlight-invert;\n\t\t\t&:first-letter {\n\t\t\t\tcolor: darken(white, 30%);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.elements-table {\n\twidth: 57em;\n\t.tabs {\n\t\t&:extend(.-Tabs all);\n\t\t.tabs-content {\n\t\t\theight: 31em;\n\t\t}\n\t}\n\n\t.period-table {\n position: relative;\n\t\ttable {\n\t\t\tposition: relative;\n\t\t}\n\t\ttd, th {\n\t\t\tpadding: 0;\n\t\t\tmargin: 0;\n\t\t\ttext-align: center;\n\t\t\tvertical-align: middle;\n\t\t}\n\t\tth, td.ref {\n\t\t\topacity: 0.6;\n\t\t\tfont-weight: normal;\n\t\t\tfont-size: 0.8em;\n\t\t\tpadding: 0.3em 0.8em;\n\t\t}\n\t\tth.ref {\n\t\t\tvertical-align: top;\n\t\t\ttext-align: right;\n\t\t}\n\t\ttr:nth-of-type(8) {\n\t\t\tborder-bottom: 1em solid transparent;\n\t\t}\n\n\t\t.ket-atom-info {\n\t\t\tposition: absolute;\n\t\t\tpadding: 0.75em 0.75em;\n\t\t\tleft: 18em;\n\t\t\ttop: 2em;\n\t\t\twidth: 7em;\n\t\t\t.highlight-shadow(black);\n\t\t\topacity: 1;\n\t\t\ttransition: opacity 1s, visibility 0s;\n\t\t\t&.none {\n\t\t\t\topacity: 0;\n\t\t\t\ttransition: opacity 2s, visibility 2s;\n\t\t\t}\n\t\t}\n\n\t\tbutton {\n\t\t\tfont-size: 1.3em;\n\t\t\twidth: 2em;\n\t\t\theight: 2em;\n\t\t\tline-height: 2;\n\t\t\tvertical-align: middle;\n\t\t\tpadding: 0.15em;\n\t\t\tmargin: 1px;\n\t\t\tborder: 0;\n\t\t\tdisplay: block;\n\t\t\tposition: relative;\n\n\t\t\t&:after {\n\t\t\t\tposition: absolute;\n\t\t\t\topacity: 0.6;\n\t\t\t\ttop: 0.3em;\n\t\t\t\tright: 0.3em;\n\t\t\t\tfont-size: 0.5em;\n\t\t\t\tline-height: 1;\n\t\t\t\tvertical-align: top;\n\t\t\t\tcontent: attr(value);\n\t\t\t}\n\t\t\t&:hover, &.selected {\n\t\t\t\t&:after {\n\t\t\t\t\tvisibility: hidden;\n\t\t\t\t}\n\t\t\t}\n\t\t\t&:not(:hover) > span {\n\t\t\t\tcolor: black;\n\t\t\t}\n\t\t\t&:hover {\n\t\t\t\t.highlight-scale(@scale:1.25);\n\t\t\t\t.highlight-shadow(black);\n\t\t\t\tz-index: 60;\n\t\t\t\tbackground: #fff;\n\t\t\t}\n\t\t\t&:active {\n\t\t\t\t.highlight-scale(none);\n\t\t\t\t.highlight-shadow(none);\n\t\t\t}\n\t\t\t&.selected {\n\t\t\t\t.highlight-invert;\n\t\t\t}\n\t\t}\n\n\t\tfieldset {\n\t\t\tborder: 0;\n\t\t\tpadding: 0.5em;\n\t\t\tmargin: 0.5em 0 0 1.5em;\n\t\t}\n\n\t\t.diatomic {\n\t\t\tbackground: @atom-periodic-diatomic;\n\t\t}\n\t\t.noble {\n\t\t\tbackground: @atom-periodic-noble-gas;\n\t\t}\n\t\t.alkali {\n\t\t\tbackground: @atom-periodic-alkali-metal;\n\t\t}\n\t\t.alkaline-earth {\n\t\t\tbackground: @atom-periodic-alkaline-earth-metal;\n\t\t}\n\t\t.metalloid {\n\t\t\tbackground: @atom-periodic-metalloid;\n\t\t}\n\t\t.polyatomic {\n\t\t\tbackground: @atom-periodic-polyatomic;\n\t\t}\n\t\t.post-transition {\n\t\t\tbackground: @atom-periodic-post-transition-metal;\n\t\t}\n\t\t.transition {\n\t\t\tbackground: @atom-periodic-transition-metal;\n\t\t}\n\t\t.lanthanide {\n\t\t\tbackground: @atom-periodic-lanthanide;\n\t\t}\n\t\t.actinide {\n\t\t\tbackground: @atom-periodic-actinide;\n\t\t}\n\t\t.unknown-props {\n\t\t\tbackground: @atom-periodic-unknown-properties;\n\t\t}\n\t\t.unknown-state:after {\n\t\t\tcolor: #222;\n\t\t}\n\t\t.solid:after {\n\t\t\tcolor: #222;\n\t\t}\n\t\t.metal:after {\n\t\t\tcolor: #006;\n\t\t}\n\t\t.gas:after {\n\t\t\tcolor: #c00;\n\t\t}\n\t\t.liquid:after {\n\t\t\tcolor: #0a0;\n\t\t}\n\t}\n\n\t.generic-groups {\n\t\tdisplay: flex;\n\t\tjustify-content: space-around;\n\t\tpadding: 1.5em 0;\n\t\t.col {\n\t\t\t&:first-child {\n\t\t\t\twidth: 40%;\n\t\t\t}\n\t\t\t& > fieldset {\n\t\t\t\tmargin: 1em;\n\t\t\t\tpadding: 1em 0.5em;\n\t\t\t}\n\t\t}\n\t\t.atom > fieldset, .acyclic, .cyclic {\n\t\t\tdisplay: inline-block;\n\t\t\tvertical-align: top;\n\t\t\t& + fieldset {\n\t\t\t\tmargin-left: 0.4em;\n\t\t\t}\n\t\t}\n\t\t.cyclic > fieldset, .carbo, .hetero {\n\t\t\tfloat: left;\n\t\t}\n\t\t.carbo {\n\t\t\tclear: both;\n\t\t\tmargin-right: 0.4em;\n\t\t}\n\t\t.cyclic > legend + fieldset { // a hack\n\t\t\tmargin: 0 0.4em 0 0.8em;\n\t\t}\n\t\tfieldset {\n\t\t\ttext-align: center;\n\t\t}\n\t\tlegend + fieldset,\n\t\t.atom fieldset, .carbo fieldset, .hetero fieldset,\n\t\t.no-carbon {\n\t\t\tposition: relative;\n\t\t\tborder: 0;\n\t\t\tpadding: 0 0 1em;\n\t\t\tlegend {\n\t\t\t\tfont-size: 0.7em;\n\t\t\t\tbottom: 0.1em;\n\t\t\t\tleft: 0;\n\t\t\t\tright: 0;\n\t\t\t\tmargin: 0 auto;\n\t\t\t\tposition: absolute;\n\t\t\t}\n\t\t}\n\t\tbutton {\n\t\t\tfont-size: 1.1em;\n\t\t\theight: 2em;\n\t\t\twidth: 2.5em;\n\t\t\tline-height: 1;\n\t\t\tvertical-align: middle;\n\t\t\tpadding: 0.15em;\n\t\t\tbackground: inherit;\n\t\t\t&:hover {\n\t\t\t\t.highlight-scale(@scale:1.25);\n\t\t\t\t.highlight-shadow(black);\n\t\t\t}\n\t\t\t&:active {\n\t\t\t\t.highlight-scale(none);\n\t\t\t\t.highlight-shadow(none);\n\t\t\t}\n\t\t\t&.selected {\n\t\t\t\t.highlight-invert;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.recognize {\n\t.change-version {\n\t\tdisplay: block;\n\t\ttext-align: right;\n\t}\n\t.output, .picture {\n\t\theight: 25em;\n\t\twidth: 21em;\n\t\tdisplay: table-cell;\n\t\tvertical-align: middle;\n\t\ttext-align: center;\n\t}\n\timg, .struct {\n\t\toverflow: hidden;\n\t\tposition: relative;\n\t\tmax-height: 100%;\n\t\tmax-width: 21em;\n\t}\n\n\tlabel {\n\t\tdisplay: block;\n\t}\n\t.open-filename {\n\t\tdisplay: inline-block;\n\t\tfloat: left;\n\t\tpadding: 6px;\n\t\tmax-width: 200px;\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n.check {\n\t.tabs {\n\t\t&:extend(.-Tabs all);\n\t}\n\tfieldset {\n\t\tmargin: 0;\n\t\tpadding: 0 0 .3em .3em;\n\t\toverflow-y: auto;\n\t\theight: 25em;\n\t\twidth: 25em;\n\t\tborder-color: #ddd;\n\t\tborder-radius: 0 4px 4px 4px;\n\t\tli {\n\t\t\tdisplay: block;\n\t\t\tmargin: 1.1em 0 0.3em 0.3em;\n\t\t}\n\t\tdt {\n\t\t\tfont-weight: bold;\n\t\t\tmargin: 1.1em 0 0.3em 0.3em;\n\t\t}\n\t\tdd {\n\t\t\tmargin-left: 1.5em;\n\t\t}\n\t}\n}\n\n.analyse {\n\tlabel {\n\t\twidth: 10em;\n\t\tdisplay: inline-block;\n\t\tvertical-align: middle;\n\t\tmargin-right: 1em;\n\t}\n\tinput[type=text] {\n\t\twidth: 14em;\n\t\tmargin-right: 1em;\n\t}\n\tselect {\n\t\twidth: 10em;\n\t\tmargin: 0;\n\t}\n\t.chem-input {\n\t\t&:extend(input[type=text]);\n\t\t&:active, &:focus {\n\t\t\toutline: 0;\n\t\t\t.highlight-shadow(black);\n\t\t}\n\t\twidth: 14em;\n\t\toverflow: hidden;\n\t\twhite-space: nowrap;\n\t}\n}\n\n.open {\n\t// constrain dialog resizebility\n\t// max-width: 50%;\n\t// max-height: 70%;\n\tlabel {\n\t\tdisplay: block;\n\t\twidth: 22.5em;\n\t\tinput {\n\t\t\tmargin-bottom: 0.1em;\n\t\t}\n\t}\n\ttextarea {\n\t\tmin-width: 32em;\n\t\tmin-height: 23em;\n\t\toverflow: auto;\n\t\twhite-space: pre;\n\t\t//make it resizable\n\t\tresize: both;\n\t}\n}\n\n.save {\n\tform > label {\n\t\tdisplay: inline-block;\n\t\ttext-align: right;\n\t\tmargin: 0 .3em;\n\t\tselect, input {\n\t\t\twidth: 12.25em;\n\t\t}\n\t}\n\ttextarea {\n\t\tdisplay: block;\n\t\tmin-width: 34em;\n\t\tmin-height: 23em;\n\t\toverflow: auto;\n\t\twhite-space: pre;\n\t\tcursor: text;\n\t\tresize: both;\n\t}\n}\n\n.help {\n\toverflow: auto;\n\tmin-height: 500px;\n\tmin-width: 800px;\n\tborder: 0;\n}\n\n.miew {\n .warning {\n display: inline-block;\n float: left;\n line-height: 2em;\n }\n .atom-info {\n position: absolute;\n top: 10px;\n right: 10px;\n border-radius: 4px;\n color: silver;\n background-color: rgba(64, 64, 64, 0.75);\n display: flex;\n align-items: left;\n justify-content: left;\n opacity: 0;\n\n p {\n margin: 10px;\n text-align: left;\n }\n }\n}\n\n.attach {\n\tlabel {\n\t\tdisplay: block;\n\t\tpadding: 0 5px;\n\t\tfont-size: 16px;\n\t}\n\t.warning {\n\t\tpadding: 0 5px;\n\t}\n\n\t.editor {\n\t\tborder: 1px solid @border-color;\n\t\tborder-radius: 5px;\n\t\tposition: relative;\n\t\theight: 25em;\n\t\tmax-width: 30em;\n\t\toverflow: auto;\n\t}\n}\n",null]} \ No newline at end of file diff --git a/src/app/core/assets/ketcher (copy)/ketcher.html b/src/app/core/assets/ketcher (copy)/ketcher.html deleted file mode 100644 index 0a4111983..000000000 --- a/src/app/core/assets/ketcher (copy)/ketcher.html +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - Ketcher v2.0.0-RC+r - - - - - - - - - - - - - - - diff --git a/src/app/core/assets/ketcher (copy)/ketcher.js b/src/app/core/assets/ketcher (copy)/ketcher.js deleted file mode 100644 index a038d0258..000000000 --- a/src/app/core/assets/ketcher (copy)/ketcher.js +++ /dev/null @@ -1,43 +0,0 @@ -/**************************************************************************** - * Copyright 2018 EPAM Systems - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - ***************************************************************************/ -!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var e;e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,e.ketcher=t()}}(function(){var t;return function(){function t(e,r,n){function o(a,s){if(!r[a]){if(!e[a]){var u="function"==typeof require&&require;if(!s&&u)return u(a,!0);if(i)return i(a,!0);var l=new Error("Cannot find module '"+a+"'");throw l.code="MODULE_NOT_FOUND",l}var c=r[a]={exports:{}};e[a][0].call(c.exports,function(t){return o(e[a][1][t]||t)},c,c.exports,t,e,r,n)}return r[a].exports}for(var i="function"==typeof require&&require,a=0;a2?arguments[2]:void 0,c=Math.min((void 0===l?a:o(l,a))-u,a-s),f=1;for(u0;)u in r?r[s]=r[u]:delete r[s],s+=f,u+=f;return r}},{"./_to-absolute-index":91,"./_to-length":95,"./_to-object":96}],8:[function(t,e,r){"use strict";var n=t("./_to-object"),o=t("./_to-absolute-index"),i=t("./_to-length");e.exports=function(t){for(var e=n(this),r=i(e.length),a=arguments.length,s=o(a>1?arguments[1]:void 0,r),u=a>2?arguments[2]:void 0,l=void 0===u?r:o(u,r);l>s;)e[s++]=t;return e}},{"./_to-absolute-index":91,"./_to-length":95,"./_to-object":96}],9:[function(t,e,r){var n=t("./_to-iobject"),o=t("./_to-length"),i=t("./_to-absolute-index");e.exports=function(t){return function(e,r,a){var s,u=n(e),l=o(u.length),c=i(a,l);if(t&&r!=r){for(;l>c;)if((s=u[c++])!=s)return!0}else for(;l>c;c++)if((t||c in u)&&u[c]===r)return t||c||0;return!t&&-1}}},{"./_to-absolute-index":91,"./_to-iobject":94,"./_to-length":95}],10:[function(t,e,r){var n=t("./_ctx"),o=t("./_iobject"),i=t("./_to-object"),a=t("./_to-length"),s=t("./_array-species-create");e.exports=function(t,e){var r=1==t,u=2==t,l=3==t,c=4==t,f=6==t,d=5==t||f,p=e||s;return function(e,s,h){for(var m,g,v=i(e),y=o(v),b=n(s,h,3),_=a(y.length),x=0,w=r?p(e,_):u?p(e,0):void 0;_>x;x++)if((d||x in y)&&(m=y[x],g=b(m,x,v),t))if(r)w[x]=g;else if(g)switch(t){case 3:return!0;case 5:return m;case 6:return x;case 2:w.push(m)}else if(c)return!1;return f?-1:l||c?c:w}}},{"./_array-species-create":12,"./_ctx":21,"./_iobject":40,"./_to-length":95,"./_to-object":96}],11:[function(t,e,r){var n=t("./_is-object"),o=t("./_is-array"),i=t("./_wks")("species");e.exports=function(t){var e;return o(t)&&(e=t.constructor,"function"!=typeof e||e!==Array&&!o(e.prototype)||(e=void 0),n(e)&&null===(e=e[i])&&(e=void 0)),void 0===e?Array:e}},{"./_is-array":42,"./_is-object":44,"./_wks":106}],12:[function(t,e,r){var n=t("./_array-species-constructor");e.exports=function(t,e){return new(n(t))(e)}},{"./_array-species-constructor":11}],13:[function(t,e,r){"use strict";var n=t("./_a-function"),o=t("./_is-object"),i=t("./_invoke"),a=[].slice,s={},u=function(t,e,r){if(!(e in s)){for(var n=[],o=0;o1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(n(r.v,r.k,this);r&&r.r;)r=r.p},has:function(t){return!!g(h(this,e),t)}}),d&&n(c.prototype,"size",{get:function(){return h(this,e)[m]}}),c},def:function(t,e,r){var n,o,i=g(t,e);return i?i.v=r:(t._l=i={i:o=p(e,!0),k:e,v:r,p:n=t._l,n:void 0,r:!1},t._f||(t._f=i),n&&(n.n=i),t[m]++,"F"!==o&&(t._i[o]=i)),t},getEntry:g,setStrong:function(t,e,r){l(t,e,function(t,r){this._t=h(t,e),this._k=r,this._l=void 0},function(){for(var t=this,e=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?"keys"==e?c(0,r.k):"values"==e?c(0,r.v):c(0,[r.k,r.v]):(t._t=void 0,c(1))},r?"entries":"values",!r,!0),f(e)}}},{"./_an-instance":5,"./_ctx":21,"./_descriptors":23,"./_for-of":32,"./_iter-define":48,"./_iter-step":50,"./_meta":57,"./_object-create":61,"./_object-dp":62,"./_redefine-all":77,"./_set-species":81,"./_validate-collection":103}],17:[function(t,e,r){"use strict";var n=t("./_redefine-all"),o=t("./_meta").getWeak,i=t("./_an-object"),a=t("./_is-object"),s=t("./_an-instance"),u=t("./_for-of"),l=t("./_array-methods"),c=t("./_has"),f=t("./_validate-collection"),d=l(5),p=l(6),h=0,m=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},v=function(t,e){return d(t.a,function(t){return t[0]===e})};g.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var r=v(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=p(this.a,function(e){return e[0]===t});return~e&&this.a.splice(e,1),!!~e}},e.exports={getConstructor:function(t,e,r,i){var l=t(function(t,n){s(t,l,e,"_i"),t._t=e,t._i=h++,t._l=void 0,void 0!=n&&u(n,r,t[i],t)});return n(l.prototype,{delete:function(t){if(!a(t))return!1;var r=o(t);return!0===r?m(f(this,e)).delete(t):r&&c(r,this._i)&&delete r[this._i]},has:function(t){if(!a(t))return!1;var r=o(t);return!0===r?m(f(this,e)).has(t):r&&c(r,this._i)}}),l},def:function(t,e,r){var n=o(i(e),!0);return!0===n?m(t).set(e,r):n[t._i]=r,t},ufstore:m}},{"./_an-instance":5,"./_an-object":6,"./_array-methods":10,"./_for-of":32,"./_has":34,"./_is-object":44,"./_meta":57,"./_redefine-all":77,"./_validate-collection":103}],18:[function(t,e,r){"use strict";var n=t("./_global"),o=t("./_export"),i=t("./_redefine"),a=t("./_redefine-all"),s=t("./_meta"),u=t("./_for-of"),l=t("./_an-instance"),c=t("./_is-object"),f=t("./_fails"),d=t("./_iter-detect"),p=t("./_set-to-string-tag"),h=t("./_inherit-if-required");e.exports=function(t,e,r,m,g,v){var y=n[t],b=y,_=g?"set":"add",x=b&&b.prototype,w={},S=function(t){var e=x[t];i(x,t,"delete"==t?function(t){return!(v&&!c(t))&&e.call(this,0===t?0:t)}:"has"==t?function(t){return!(v&&!c(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!c(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,r){return e.call(this,0===t?0:t,r),this})};if("function"==typeof b&&(v||x.forEach&&!f(function(){(new b).entries().next()}))){var O=new b,A=O[_](v?{}:-0,1)!=O,E=f(function(){O.has(1)}),j=d(function(t){new b(t)}),P=!v&&f(function(){for(var t=new b,e=5;e--;)t[_](e,e);return!t.has(-0)});j||(b=e(function(e,r){l(e,b,t);var n=h(new y,e,b);return void 0!=r&&u(r,g,n[_],n),n}),b.prototype=x,x.constructor=b),(E||P)&&(S("delete"),S("has"),g&&S("get")),(P||A)&&S(_),v&&x.clear&&delete x.clear}else b=m.getConstructor(e,t,g,_),a(b.prototype,r),s.NEED=!0;return p(b,t),w[t]=b,o(o.G+o.W+o.F*(b!=y),w),v||m.setStrong(b,t,g),b}},{"./_an-instance":5,"./_export":27,"./_fails":29,"./_for-of":32,"./_global":33,"./_inherit-if-required":38,"./_is-object":44,"./_iter-detect":49,"./_meta":57,"./_redefine":78,"./_redefine-all":77,"./_set-to-string-tag":82}],19:[function(t,e,r){var n=e.exports={version:"2.5.7"};"number"==typeof __e&&(__e=n)},{}],20:[function(t,e,r){"use strict";var n=t("./_object-dp"),o=t("./_property-desc");e.exports=function(t,e,r){e in t?n.f(t,e,o(0,r)):t[e]=r}},{"./_object-dp":62,"./_property-desc":76}],21:[function(t,e,r){var n=t("./_a-function");e.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}}},{"./_a-function":3}],22:[function(t,e,r){e.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},{}],23:[function(t,e,r){e.exports=!t("./_fails")(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},{"./_fails":29}],24:[function(t,e,r){var n=t("./_is-object"),o=t("./_global").document,i=n(o)&&n(o.createElement);e.exports=function(t){return i?o.createElement(t):{}}},{"./_global":33,"./_is-object":44}],25:[function(t,e,r){e.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},{}],26:[function(t,e,r){var n=t("./_object-keys"),o=t("./_object-gops"),i=t("./_object-pie");e.exports=function(t){var e=n(t),r=o.f;if(r)for(var a,s=r(t),u=i.f,l=0;s.length>l;)u.call(t,a=s[l++])&&e.push(a);return e}},{"./_object-gops":67,"./_object-keys":70,"./_object-pie":71}],27:[function(t,e,r){var n=t("./_global"),o=t("./_core"),i=t("./_hide"),a=t("./_redefine"),s=t("./_ctx"),u=function(t,e,r){var l,c,f,d,p=t&u.F,h=t&u.G,m=t&u.S,g=t&u.P,v=t&u.B,y=h?n:m?n[e]||(n[e]={}):(n[e]||{}).prototype,b=h?o:o[e]||(o[e]={}),_=b.prototype||(b.prototype={});h&&(r=e);for(l in r)c=!p&&y&&void 0!==y[l],f=(c?y:r)[l],d=v&&c?s(f,n):g&&"function"==typeof f?s(Function.call,f):f,y&&a(y,l,f,t&u.U),b[l]!=f&&i(b,l,d),g&&_[l]!=f&&(_[l]=f)};n.core=o,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,e.exports=u},{"./_core":19,"./_ctx":21,"./_global":33,"./_hide":35,"./_redefine":78}],28:[function(t,e,r){var n=t("./_wks")("match");e.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[n]=!1,!"/./"[t](e)}catch(t){}}return!0}},{"./_wks":106}],29:[function(t,e,r){e.exports=function(t){try{return!!t()}catch(t){return!0}}},{}],30:[function(t,e,r){"use strict";var n=t("./_hide"),o=t("./_redefine"),i=t("./_fails"),a=t("./_defined"),s=t("./_wks");e.exports=function(t,e,r){var u=s(t),l=r(a,u,""[t]),c=l[0],f=l[1];i(function(){var e={};return e[u]=function(){return 7},7!=""[t](e)})&&(o(String.prototype,t,c),n(RegExp.prototype,u,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)}))}},{"./_defined":22,"./_fails":29,"./_hide":35,"./_redefine":78,"./_wks":106}],31:[function(t,e,r){"use strict";var n=t("./_an-object");e.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},{"./_an-object":6}],32:[function(t,e,r){var n=t("./_ctx"),o=t("./_iter-call"),i=t("./_is-array-iter"),a=t("./_an-object"),s=t("./_to-length"),u=t("./core.get-iterator-method"),l={},c={},r=e.exports=function(t,e,r,f,d){var p,h,m,g,v=d?function(){return t}:u(t),y=n(r,f,e?2:1),b=0;if("function"!=typeof v)throw TypeError(t+" is not iterable!");if(i(v)){for(p=s(t.length);p>b;b++)if((g=e?y(a(h=t[b])[0],h[1]):y(t[b]))===l||g===c)return g}else for(m=v.call(t);!(h=m.next()).done;)if((g=o(m,y,h.value,e))===l||g===c)return g};r.BREAK=l,r.RETURN=c},{"./_an-object":6,"./_ctx":21,"./_is-array-iter":41,"./_iter-call":46,"./_to-length":95,"./core.get-iterator-method":107}],33:[function(t,e,r){var n=e.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},{}],34:[function(t,e,r){var n={}.hasOwnProperty;e.exports=function(t,e){return n.call(t,e)}},{}],35:[function(t,e,r){var n=t("./_object-dp"),o=t("./_property-desc");e.exports=t("./_descriptors")?function(t,e,r){return n.f(t,e,o(1,r))}:function(t,e,r){return t[e]=r,t}},{"./_descriptors":23,"./_object-dp":62,"./_property-desc":76}],36:[function(t,e,r){var n=t("./_global").document;e.exports=n&&n.documentElement},{"./_global":33}],37:[function(t,e,r){e.exports=!t("./_descriptors")&&!t("./_fails")(function(){return 7!=Object.defineProperty(t("./_dom-create")("div"),"a",{get:function(){return 7}}).a})},{"./_descriptors":23,"./_dom-create":24,"./_fails":29}],38:[function(t,e,r){var n=t("./_is-object"),o=t("./_set-proto").set;e.exports=function(t,e,r){var i,a=e.constructor;return a!==r&&"function"==typeof a&&(i=a.prototype)!==r.prototype&&n(i)&&o&&o(t,i),t}},{"./_is-object":44,"./_set-proto":80}],39:[function(t,e,r){e.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},{}],40:[function(t,e,r){var n=t("./_cof");e.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},{"./_cof":15}],41:[function(t,e,r){var n=t("./_iterators"),o=t("./_wks")("iterator"),i=Array.prototype;e.exports=function(t){return void 0!==t&&(n.Array===t||i[o]===t)}},{"./_iterators":51,"./_wks":106}],42:[function(t,e,r){var n=t("./_cof");e.exports=Array.isArray||function(t){return"Array"==n(t)}},{"./_cof":15}],43:[function(t,e,r){var n=t("./_is-object"),o=Math.floor;e.exports=function(t){return!n(t)&&isFinite(t)&&o(t)===t}},{"./_is-object":44}],44:[function(t,e,r){e.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},{}],45:[function(t,e,r){var n=t("./_is-object"),o=t("./_cof"),i=t("./_wks")("match");e.exports=function(t){var e;return n(t)&&(void 0!==(e=t[i])?!!e:"RegExp"==o(t))}},{"./_cof":15,"./_is-object":44,"./_wks":106}],46:[function(t,e,r){var n=t("./_an-object");e.exports=function(t,e,r,o){try{return o?e(n(r)[0],r[1]):e(r)}catch(e){var i=t.return;throw void 0!==i&&n(i.call(t)),e}}},{"./_an-object":6}],47:[function(t,e,r){"use strict";var n=t("./_object-create"),o=t("./_property-desc"),i=t("./_set-to-string-tag"),a={};t("./_hide")(a,t("./_wks")("iterator"),function(){return this}),e.exports=function(t,e,r){t.prototype=n(a,{next:o(1,r)}),i(t,e+" Iterator")}},{"./_hide":35,"./_object-create":61,"./_property-desc":76,"./_set-to-string-tag":82,"./_wks":106}],48:[function(t,e,r){"use strict";var n=t("./_library"),o=t("./_export"),i=t("./_redefine"),a=t("./_hide"),s=t("./_iterators"),u=t("./_iter-create"),l=t("./_set-to-string-tag"),c=t("./_object-gpo"),f=t("./_wks")("iterator"),d=!([].keys&&"next"in[].keys()),p=function(){return this};e.exports=function(t,e,r,h,m,g,v){u(r,e,h);var y,b,_,x=function(t){if(!d&&t in A)return A[t];switch(t){case"keys":case"values":return function(){return new r(this,t)}}return function(){return new r(this,t)}},w=e+" Iterator",S="values"==m,O=!1,A=t.prototype,E=A[f]||A["@@iterator"]||m&&A[m],j=E||x(m),P=m?S?x("entries"):j:void 0,T="Array"==e?A.entries||E:E;if(T&&(_=c(T.call(new t)))!==Object.prototype&&_.next&&(l(_,w,!0),n||"function"==typeof _[f]||a(_,f,p)),S&&E&&"values"!==E.name&&(O=!0,j=function(){return E.call(this)}),n&&!v||!d&&!O&&A[f]||a(A,f,j),s[e]=j,s[w]=p,m)if(y={values:S?j:x("values"),keys:g?j:x("keys"),entries:P},v)for(b in y)b in A||i(A,b,y[b]);else o(o.P+o.F*(d||O),e,y);return y}},{"./_export":27,"./_hide":35,"./_iter-create":47,"./_iterators":51,"./_library":52,"./_object-gpo":68,"./_redefine":78,"./_set-to-string-tag":82,"./_wks":106}],49:[function(t,e,r){var n=t("./_wks")("iterator"),o=!1;try{var i=[7][n]();i.return=function(){o=!0},Array.from(i,function(){throw 2})}catch(t){}e.exports=function(t,e){if(!e&&!o)return!1;var r=!1;try{var i=[7],a=i[n]();a.next=function(){return{done:r=!0}},i[n]=function(){return a},t(i)}catch(t){}return r}},{"./_wks":106}],50:[function(t,e,r){e.exports=function(t,e){return{value:e,done:!!t}}},{}],51:[function(t,e,r){e.exports={}},{}],52:[function(t,e,r){e.exports=!1},{}],53:[function(t,e,r){var n=Math.expm1;e.exports=!n||n(10)>22025.465794806718||n(10)<22025.465794806718||-2e-17!=n(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:n},{}],54:[function(t,e,r){var n=t("./_math-sign"),o=Math.pow,i=o(2,-52),a=o(2,-23),s=o(2,127)*(2-a),u=o(2,-126),l=function(t){return t+1/i-1/i};e.exports=Math.fround||function(t){var e,r,o=Math.abs(t),c=n(t);return os||r!=r?c*(1/0):c*r)}},{"./_math-sign":56}],55:[function(t,e,r){e.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},{}],56:[function(t,e,r){e.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},{}],57:[function(t,e,r){var n=t("./_uid")("meta"),o=t("./_is-object"),i=t("./_has"),a=t("./_object-dp").f,s=0,u=Object.isExtensible||function(){return!0},l=!t("./_fails")(function(){return u(Object.preventExtensions({}))}),c=function(t){a(t,n,{value:{i:"O"+ ++s,w:{}}})},f=function(t,e){if(!o(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!i(t,n)){if(!u(t))return"F";if(!e)return"E";c(t)}return t[n].i},d=function(t,e){if(!i(t,n)){if(!u(t))return!0;if(!e)return!1;c(t)}return t[n].w},p=function(t){return l&&h.NEED&&u(t)&&!i(t,n)&&c(t),t},h=e.exports={KEY:n,NEED:!1,fastKey:f,getWeak:d,onFreeze:p}},{"./_fails":29,"./_has":34,"./_is-object":44,"./_object-dp":62,"./_uid":101}],58:[function(t,e,r){var n=t("./_global"),o=t("./_task").set,i=n.MutationObserver||n.WebKitMutationObserver,a=n.process,s=n.Promise,u="process"==t("./_cof")(a);e.exports=function(){var t,e,r,l=function(){var n,o;for(u&&(n=a.domain)&&n.exit();t;){o=t.fn,t=t.next;try{o()}catch(n){throw t?r():e=void 0,n}}e=void 0,n&&n.enter()};if(u)r=function(){a.nextTick(l)};else if(!i||n.navigator&&n.navigator.standalone)if(s&&s.resolve){var c=s.resolve(void 0);r=function(){c.then(l)}}else r=function(){o.call(n,l)};else{var f=!0,d=document.createTextNode("");new i(l).observe(d,{characterData:!0}),r=function(){d.data=f=!f}}return function(n){var o={fn:n,next:void 0};e&&(e.next=o),t||(t=o,r()),e=o}}},{"./_cof":15,"./_global":33,"./_task":90}],59:[function(t,e,r){"use strict";function n(t){var e,r;this.promise=new t(function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n}),this.resolve=o(e),this.reject=o(r)}var o=t("./_a-function");e.exports.f=function(t){return new n(t)}},{"./_a-function":3}],60:[function(t,e,r){"use strict";var n=t("./_object-keys"),o=t("./_object-gops"),i=t("./_object-pie"),a=t("./_to-object"),s=t("./_iobject"),u=Object.assign;e.exports=!u||t("./_fails")(function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach(function(t){e[t]=t}),7!=u({},t)[r]||Object.keys(u({},e)).join("")!=n})?function(t,e){for(var r=a(t),u=arguments.length,l=1,c=o.f,f=i.f;u>l;)for(var d,p=s(arguments[l++]),h=c?n(p).concat(c(p)):n(p),m=h.length,g=0;m>g;)f.call(p,d=h[g++])&&(r[d]=p[d]);return r}:u},{"./_fails":29,"./_iobject":40,"./_object-gops":67,"./_object-keys":70,"./_object-pie":71,"./_to-object":96}],61:[function(t,e,r){var n=t("./_an-object"),o=t("./_object-dps"),i=t("./_enum-bug-keys"),a=t("./_shared-key")("IE_PROTO"),s=function(){},u=function(){var e,r=t("./_dom-create")("iframe"),n=i.length;for(r.style.display="none",t("./_html").appendChild(r),r.src="javascript:",e=r.contentWindow.document,e.open(),e.write("