:root { --color1: #9741f9; --color2: #f04a2d; --color3: #0083ff; /* --color4: #f9844a; */ --color5: #24C3B2; --color6: #7bc748; --color7: #e4a02b;/*#fff239;*/ --color7-2: #e4a02b; --color8: #4d908e; --color9: #577590; --color10: #277da1; --hover-color: var(--color1); --hover-related-color: #d1bce9; /* --hover-color: var(darkblue); */ --selected-color: var(--color1); --link-color: rgba(255,255,255,0.5); --link-hover-color: var(--hover-color); --link-hover-related-color: var(--hover-related-color); --link-focus-color: var(--hover-color); --body-back: #96a7b7; /*#9cb3c9; /*#8195a7; /*#9cb3c9; #b9cada*/ --title-color: #1c1c1c; --zoom: 1; /* to be overriden by js */ } body { margin: 0; /* overflow: hidden; */ /* background: linear-gradient(to top, #040308, #AD4A28, #DD723C, #fc7001, #dcb697, #9ba5ae, #3e5879, #020b1a); */ background: var(--body-back); /* background: #9cb3c9; */ font-family: 'CelloSansRegular', sans-serif; min-height: 100vh; } svg { cursor: grab; font-family: 'CelloSansRegular', sans-serif; } svg.dragging { cursor: grabbing; } #arrowHead { fill: var(--link-color); } #arrowHeadSelected { fill: var(--link-focus-color);; } #arrowHeadSelectedRelated { fill: var(--link-hover-related-color);; } svg .links line, svg .links path { /* stroke: #f3722c; */ /* stroke: #9df32c; */ stroke: var(--link-color); stroke-width: calc(12px / var(--zoom)); fill: none; /* transition: stroke-width 1s; */ cursor: pointer; stroke-linecap: round; } svg .selectedNode .links line, svg .selectedNode .links path { opacity: .3; } svg .links line.hover, svg .links path.hover { stroke: var(--link-hover-color) !important; opacity: 1; /* stroke-width: 12; */ /* marker-end: url(#arrowHeadSelected) !important; */ } svg .links .linkedHover path{ stroke: var(--link-hover-related-color); opacity: 1; stroke-width: calc(12px / var(--zoom)); /* marker-end: url(#arrowHeadSelectedRelated); */ } svg .links .linkedSelected path{ stroke: var(--link-hover-related-color); opacity: 1; stroke-width: calc(12px / var(--zoom)); /* marker-end: url(#arrowHeadSelectedRelated); */ } /* svg.zoomed .links line, svg.zoomed .links path { stroke-width: 2; } */ /* svg.zoomed .links line, svg.zoomed .links path.hover { stroke-width: 4; } */ svg .title { font-size: 200; } svg .subtitle { font-size: 100; } svg #countries .country { fill: #f7f5f5; fill: #f0eeee; /* stroke:rgb(230, 230, 230); */ stroke:rgb(230, 230, 230); stroke-width: 5; } svg #countries .country.eu_country { /* fill:#eae5e3; */ fill:#e9e1e4; /* fill:rgb(234, 229, 235); */ stroke:rgb(217, 209, 218); } svg #header #titlePath, svg #header #title2Path, svg #header #subtitlePath { stroke: none; fill: none; } svg #header text { font-size: 180px; font-family: "CelloSansRegular", sans-serif; /*Comfortaa*/ opacity: .8; fill: var(--title-color); text-shadow: rgba(0, 0, 0, .5) 5px 5px 10px; /* text-transform: uppercase; */ } svg #header text:nth-of-type(2) { /* dominant-baseline: hanging; */ /* transform: translate(10px, 25px); */ } svg #header text#subtitle { font-size: 70px; fill: var(--body-back); } .links text { display: none; font-size: 5pt; text-anchor: middle; fill: whitesmoke; } .node { cursor: pointer; } .node text.nodeTitle { text-anchor: start; dominant-baseline: hanging; font-size: calc(20pt / var(--zoom)) !important; /*achieves a 'text-anchor: top'*/ /* font-size: 16pt; */ /*Set this in JS*/ transition: opacity 1s; fill: black; /*also when hovering node*/ opacity: 1; /* pointer-events: none; */ /*prevent mouse glitches*/ } /* .node:not(:hover):not(.linkHover) text.nodeTitle.overlapping { */ .node text.nodeTitle.overlapping { /* used to be shown on hover, but disabled now that we have a tooltip */ opacity: 0; pointer-events: none; } .selectedNode .node:not(.linkedSelected):not(.selected) text.nodeTitle{ /* used to be shown on hover, but disabled now that we have a tooltip */ opacity: 0; pointer-events: none; } svg.zoomed .node text.nodeTitle { /* font-size: 6pt; */ } svg.zoomed.zoomed2 .node text.nodeTitle { font-size: 3pt; } .node circle, .node path { fill: lightgray; transform: scale(calc(1.5 / var(--zoom-sqrt))); } #filters .node circle, #filters .node path { transform: none; } /* Whenever a connected link is hovered */ .node.linkHover circle, .node.linkHover path, .node.linkedHover path, label:hover .node path { fill: var(--hover-related-color) !important; stroke: var(--hover-related-color); stroke-width: 2px; } .node.linkHover text, .node.linkedHover text{ fill: var(--hover-related-color) !important; } .selectedNode .node:not(.linkedSelected) path { fill: lightgray !important; opacity: .5; /* same as linkHover/linkedHover but without border */ } .node.linkHover text.nodeTitle.overlapping { transition: opacity 0s; } .node:hover circle, .node:hover path, .node.selected path { fill: var(--hover-color) !important; stroke: var(--hover-color); stroke-width: 2px; } .node:hover text, .node.selected text { fill: var(--hover-color) !important; } /* .node:hover text { transition: none; fill: var(--hover-color); } */ /* .selectedNode .node circle, .selectedNode .node path { fill: lightgray !important; } */ .selectedNode .node.selected circle, .selectedNode .node.selected path { fill: var(--selected-color) !important; stroke: var(--selected-color); stroke-width: 5px; } .node.City circle, .node.City path { display: none; } .node.City { fill: white; stroke: black; stroke-width: .5px; font-size: 20px; } .node.Person circle, .node.Person path { fill: lightgreen } .node.Technology circle, .node.Technology path { fill: plum; } .node.Deployments circle, .node.Deployments path { /* fill: lightblue; */ /* fill: rgb(75, 97, 190); */ fill: rgb(8, 8, 8); } .node.Institution circle, .node.Institution path { /* fill: lightcoral; */ /* fill: #11F999; */ fill: darkgray; } .node.Dataset circle, .node.Dataset path { fill: lightgoldenrodyellow } .labels .label text { fill: yellow; opacity: 1 !important; } .node.Institution.Institution-company path, .node.Institution.Institution-company text{ fill: var(--color2); } .node.Institution.Institution-government path, .node.Institution.Institution-government text{ fill: var(--color3); } .node.Institution.Institution-local-government path{ fill: #75F06D; } .node.Institution.Institution-law-enforcement path{ fill: var(--color7); } .node.Institution.Institution-law-enforcement text{ fill: var(--color7-2); } .node.Institution.Institution-ngo path, .node.Institution.Institution-ngo text{ fill: var(--color5); } .node.Institution.Institution-university path{ fill: #A6E447; } .node.Institution.Institution-research path, .node.Institution.Institution-research text{ fill: var(--color6); } .node.Institution.Institution-project path{ fill: #C1DB31; } .node.Institution.Institution-watchdog path{ fill: #CED628; } .node.Institution.Institution-expert-group path{ fill: #DAD121; } .node.Institution.Institution-foundation path{ fill: #E5CB1E; } .node.Institution.Institution-international-organization path{ fill: gray; } .node.Institution.Institution-art-project path{ /* fill: blue; */ } /* .node.Person circle { fill: var(--color2) } .node.Technology circle { fill: var(--color3); } .node.Deployment circle { fill: var(--color5); } .node.Institution circle { fill: var(--color6) } .node.Dataset circle { fill: var(--color7) } */ #nodeInfo { position: fixed; display: block; right: 20px; bottom: 20px; background: white; padding: 10px; border: solid 1px #ccc; } #nodeInfo.hidden { display: none; } #nodeInfo h2 { margin: 0; padding: 0; } #nodeInfo iframe { width: 50vw; height: calc(100vh - 40px - 20px - 30px); } #tooltip{ position:absolute; z-index: 100; opacity: 1; transition: opacity .3s; background:white; padding: 20px 10px; border-radius: 5px; box-shadow: 2px 2px 5px rgba(0, 0, 0, .5); } #tooltip.deploymentTooltip{ background-color: black; color: white; } #tooltip.link{ } #tooltip .entity{ font-weight: bold; } #tooltip:not(.visible){ position:absolute; z-index: 100; opacity:0; pointer-events: none; } #tooltip h3{ margin: 5px 0; text-align: center;; } #tooltip .category{ display: block; color: black; text-align: center;; } #tooltip.deploymentTooltip .category{ color: white; } #tooltip .category::before{ content:'· ' } #tooltip .category::after{ content:' ·' } #tooltip .clickForMore{ display: block; color: gray; text-align: center;; } #tooltip .node_sources::before{ content: 'source '; } #tooltip .node_sources{ text-align: center; } #closeInfo { cursor: pointer; position: absolute; right: 10px; top: 10px; } #closeInfo:hover { color: var(--hover-color); } a, a:link { text-decoration: none; } a:hover { text-decoration: underline; } header { position: fixed; bottom: 0; right: 0; background: white; padding: 10px; border-top-left-radius: 5px; min-width: 300px; } h1 { /* color:var(--color9); */ margin: 0; text-transform: uppercase; display: none; } p.subtitle { margin: 0; color: var(--color10); /* text-transform: uppercase;; */ display: none; } #filters h3 { text-align: center; ; } #filters label { cursor: pointer; display: block; padding: 5px 10px; } #filters label svg { display: inline; width: 30px; height: 30px; vertical-align: middle; } #filters span:hover { color: var(--hover-color); } #filters input { display: none; } #filters input+span { display: inline-block; padding-left: 10px; /* background: var(--color9); */ text-decoration: line-through; } #filters input:checked+span { /* color: var(--selected-color); */ text-decoration: none; /* box-shadow: inset 0 0 5px black; */ } #filters .institution_types{ margin-left: 30px; } #filter-items.filter-institution .institution_types{ /* display:none */ color: darkgray; pointer-events: none; } #filter-items.filter-institution .institution_types span{ text-decoration: line-through; } #filters h3{ cursor: pointer; } #filters h3::before{ display: inline-block; float: left; content: '\fe3f'; /*⬆*/ transform: rotate(180deg); transition: transform .8s; } #filters.hide h3::before{ transform: rotate(0deg); } #filter-items{ max-height: 1000px; transition: max-height .8s; } #filters.hide #filter-items{ max-height: 0px; } #map .borders { stroke-width: 6px; stroke: rgb(221, 210, 210); fill: none; } #alluvial { /* position:fixed; */ top: 0; left: 0; } #alluvial .flow_label text { font-size: 30; } #closeSelection{ pointer-events: none; position: fixed; bottom: -100px; left: 0; background-color: white; font-size: 50px; width: 80px; height: 80px; text-align:center; z-index: 10; line-height: 80px; transition: bottom .2s; } .selectedNode #closeSelection{ pointer-events: all; cursor: pointer; bottom: 0; } #sources{ position: fixed; bottom: 0; left: 80px; height: 47px; padding: 20px 20px 13px 20px; background: black; color: white; transition: bottom .2s; line-height: 40px; } #sources:not(.visible){ bottom:-100px; } #sources h3{ margin: 5px 0; text-align: left; display: inline-block; font-size: 100%; } #sources h3::after{ content:':'; } #sources .node_sources{ display: inline; } #sources a{ color: var(--link-hover-related-color); } #sources a:hover{ color: var(--link-hover-color); }