semantic_graph/www/graph.css

629 lines
12 KiB
CSS
Raw Normal View History

2021-10-13 18:35:49 +02:00
2021-03-31 16:24:46 +02:00
2021-04-28 09:38:06 +02:00
:root {
2021-04-28 11:18:02 +02:00
--color1: #9741f9;
2021-08-13 11:31:54 +02:00
--color2: #f04a2d;
--color3: #0083ff;
2021-03-31 16:24:46 +02:00
/* --color4: #f9844a; */
--color5: #24C3B2;
--color6: #7bc748;
2021-08-13 11:31:54 +02:00
--color7: #e4a02b;/*#fff239;*/
--color7-2: #e4a02b;
2021-03-31 16:24:46 +02:00
--color8: #4d908e;
--color9: #577590;
--color10: #277da1;
--hover-color: var(--color1);
--hover-related-color: #d1bce9;
/* --hover-color: var(darkblue); */
2021-03-31 16:24:46 +02:00
--selected-color: var(--color1);
2021-05-04 18:40:06 +02:00
--link-color: rgba(255,255,255,0.5);
--link-hover-color: var(--hover-color);
2021-08-12 09:00:05 +02:00
--link-hover-related-color: var(--hover-related-color);
2021-05-04 18:40:06 +02:00
--link-focus-color: var(--hover-color);
--body-back: #96a7b7; /*#9cb3c9; /*#8195a7; /*#9cb3c9; #b9cada*/
--title-color: #1c1c1c;
2021-08-12 09:00:05 +02:00
--zoom: 1; /* to be overriden by js */
2021-03-31 16:24:46 +02:00
}
body {
margin: 0;
2021-04-19 22:47:06 +02:00
/* overflow: hidden; */
/* background: linear-gradient(to top, #040308, #AD4A28, #DD723C, #fc7001, #dcb697, #9ba5ae, #3e5879, #020b1a); */
2021-05-04 18:40:06 +02:00
background: var(--body-back);
/* background: #9cb3c9; */
2021-10-13 18:35:49 +02:00
font-family: 'CelloSansRegular', sans-serif;
2021-03-31 16:24:46 +02:00
min-height: 100vh;
}
svg {
cursor: grab;
2021-10-13 18:35:49 +02:00
font-family: 'CelloSansRegular', sans-serif;
2021-03-31 16:24:46 +02:00
}
svg.dragging {
cursor: grabbing;
}
2021-04-28 11:18:02 +02:00
#arrowHead {
2021-05-04 18:40:06 +02:00
fill: var(--link-color);
2021-04-28 11:18:02 +02:00
}
#arrowHeadSelected {
2021-05-04 18:40:06 +02:00
fill: var(--link-focus-color);;
2021-04-28 11:18:02 +02:00
}
#arrowHeadSelectedRelated {
2021-05-04 18:40:06 +02:00
fill: var(--link-hover-related-color);;
}
2021-04-28 11:18:02 +02:00
2021-04-28 09:38:06 +02:00
svg .links line, svg .links path {
/* stroke: #f3722c; */
/* stroke: #9df32c; */
2021-05-04 18:40:06 +02:00
stroke: var(--link-color);
2021-08-13 11:31:54 +02:00
stroke-width: calc(12px / var(--zoom));
2021-04-28 09:38:06 +02:00
fill: none;
2021-08-12 09:00:05 +02:00
/* transition: stroke-width 1s; */
cursor: pointer;
stroke-linecap: round;
}
svg .selectedNode .links line, svg .selectedNode .links path {
opacity: .3;
}
2021-04-28 09:38:06 +02:00
svg .links line.hover, svg .links path.hover {
2021-08-12 09:00:05 +02:00
stroke: var(--link-hover-color) !important;
opacity: 1;
/* stroke-width: 12; */
/* marker-end: url(#arrowHeadSelected) !important; */
}
svg .links .linkedHover path{
2021-05-04 18:40:06 +02:00
stroke: var(--link-hover-related-color);
opacity: 1;
2021-08-12 09:00:05 +02:00
stroke-width: calc(12px / var(--zoom));
/* marker-end: url(#arrowHeadSelectedRelated); */
}
svg .links .linkedSelected path{
2021-08-12 09:00:05 +02:00
stroke: var(--link-hover-related-color);
opacity: 1;
2021-08-12 09:00:05 +02:00
stroke-width: calc(12px / var(--zoom));
/* marker-end: url(#arrowHeadSelectedRelated); */
}
2021-08-12 09:00:05 +02:00
/* svg.zoomed .links line, svg.zoomed .links path {
stroke-width: 2;
2021-08-12 09:00:05 +02:00
} */
2021-04-28 09:38:06 +02:00
/* svg.zoomed .links line, svg.zoomed .links path.hover {
2021-04-27 16:10:23 +02:00
stroke-width: 4;
} */
2021-03-31 16:24:46 +02:00
2021-04-28 09:38:06 +02:00
svg .title {
font-size: 200;
}
svg .subtitle {
font-size: 100;
}
2021-04-28 11:18:02 +02:00
svg #countries .country {
2021-05-04 18:40:06 +02:00
fill: #f7f5f5;
fill: #f0eeee;
/* stroke:rgb(230, 230, 230); */
stroke:rgb(230, 230, 230);
stroke-width: 5;
2021-04-28 09:38:06 +02:00
}
2021-04-28 11:18:02 +02:00
svg #countries .country.eu_country {
2021-05-04 18:40:06 +02:00
/* fill:#eae5e3; */
fill:#e9e1e4;
/* fill:rgb(234, 229, 235); */
stroke:rgb(217, 209, 218);
2021-04-28 09:38:06 +02:00
}
svg #header #titlePath, svg #header #title2Path, svg #header #subtitlePath {
2021-04-28 09:38:06 +02:00
stroke: none;
fill: none;
}
svg #header text {
font-size: 180px;
2021-10-13 18:35:49 +02:00
font-family: "CelloSansRegular", sans-serif;
2021-04-28 09:38:06 +02:00
/*Comfortaa*/
opacity: .8;
2021-05-04 18:40:06 +02:00
fill: var(--title-color);
2021-04-28 09:38:06 +02:00
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); */
2021-04-28 09:38:06 +02:00
}
svg #header text#subtitle {
font-size: 70px;
2021-05-04 18:40:06 +02:00
fill: var(--body-back);
2021-04-28 09:38:06 +02:00
}
.links text {
display: none;
font-size: 5pt;
2021-03-31 16:24:46 +02:00
text-anchor: middle;
fill: whitesmoke;
}
2021-04-28 09:38:06 +02:00
.node {
cursor: pointer;
}
2021-08-12 09:00:05 +02:00
2021-04-28 09:38:06 +02:00
.node text.nodeTitle {
text-anchor: start;
2021-04-28 09:38:06 +02:00
dominant-baseline: hanging;
2021-08-12 09:00:05 +02:00
font-size: calc(20pt / var(--zoom)) !important;
2021-04-28 09:38:06 +02:00
/*achieves a 'text-anchor: top'*/
2021-04-28 11:18:02 +02:00
/* font-size: 16pt; */
/*Set this in JS*/
2021-08-12 09:00:05 +02:00
transition: opacity 1s;
fill: black; /*also when hovering node*/
opacity: 1;
2021-08-12 09:00:05 +02:00
/* pointer-events: none; */
2021-04-28 09:38:06 +02:00
/*prevent mouse glitches*/
}
2021-04-28 09:38:06 +02:00
/* .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;
2021-08-12 09:00:05 +02:00
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;
}
2021-04-28 09:38:06 +02:00
svg.zoomed .node text.nodeTitle {
2021-04-28 10:24:07 +02:00
/* font-size: 6pt; */
}
2021-04-28 09:38:06 +02:00
svg.zoomed.zoomed2 .node text.nodeTitle {
font-size: 3pt;
2021-03-31 16:24:46 +02:00
}
2021-04-28 11:18:02 +02:00
.node circle, .node path {
fill: lightgray;
transform: scale(calc(1.5 / var(--zoom-sqrt)));
}
#filters .node circle, #filters .node path {
transform: none;
2021-03-31 16:24:46 +02:00
}
/* Whenever a connected link is hovered */
2021-04-28 09:38:06 +02:00
.node.linkHover circle, .node.linkHover path, .node.linkedHover path, label:hover .node path {
fill: var(--hover-related-color) !important;
stroke: var(--hover-related-color);
2021-08-12 09:00:05 +02:00
stroke-width: 2px;
}
.node.linkHover text, .node.linkedHover text{
fill: var(--hover-related-color) !important;
}
2021-08-12 09:00:05 +02:00
.selectedNode .node:not(.linkedSelected) path {
fill: lightgray !important;
2021-08-13 11:55:14 +02:00
opacity: .5;
/* same as linkHover/linkedHover but without border */
}
2021-04-28 09:38:06 +02:00
.node.linkHover text.nodeTitle.overlapping {
transition: opacity 0s;
2021-03-31 16:24:46 +02:00
}
.node:hover circle, .node:hover path, .node.selected path {
2021-04-28 11:18:02 +02:00
fill: var(--hover-color) !important;
2021-03-31 16:24:46 +02:00
stroke: var(--hover-color);
2021-08-12 09:00:05 +02:00
stroke-width: 2px;
2021-03-31 16:24:46 +02:00
}
.node:hover text, .node.selected text {
fill: var(--hover-color) !important;
}
/*
2021-04-28 09:38:06 +02:00
.node:hover text {
transition: none;
2021-04-28 09:38:06 +02:00
fill: var(--hover-color);
} */
2021-04-28 09:38:06 +02:00
2021-08-12 09:00:05 +02:00
/* .selectedNode .node circle, .selectedNode .node path {
fill: lightgray !important;
} */
.selectedNode .node.selected circle, .selectedNode .node.selected path {
2021-04-28 11:18:02 +02:00
fill: var(--selected-color) !important;
2021-03-31 16:24:46 +02:00
stroke: var(--selected-color);
stroke-width: 5px;
}
2021-04-28 11:18:02 +02:00
.node.City circle, .node.City path {
2021-04-28 09:38:06 +02:00
display: none;
2021-03-31 16:24:46 +02:00
}
2021-04-28 09:38:06 +02:00
.node.City {
fill: white;
2021-03-31 16:24:46 +02:00
stroke: black;
stroke-width: .5px;
font-size: 20px;
}
2021-04-28 09:38:06 +02:00
2021-04-28 11:18:02 +02:00
.node.Person circle, .node.Person path {
2021-03-31 16:24:46 +02:00
fill: lightgreen
}
2021-04-28 09:38:06 +02:00
2021-04-28 11:18:02 +02:00
.node.Technology circle, .node.Technology path {
fill: plum;
2021-03-31 16:24:46 +02:00
}
2021-04-28 09:38:06 +02:00
2021-04-28 11:18:02 +02:00
.node.Deployments circle, .node.Deployments path {
2021-05-04 18:40:06 +02:00
/* fill: lightblue; */
/* fill: rgb(75, 97, 190); */
fill: rgb(8, 8, 8);
2021-03-31 16:24:46 +02:00
}
2021-04-28 09:38:06 +02:00
2021-04-28 11:18:02 +02:00
.node.Institution circle, .node.Institution path {
2021-05-04 18:40:06 +02:00
/* fill: lightcoral; */
/* fill: #11F999; */
fill: darkgray;
2021-03-31 16:24:46 +02:00
}
2021-04-28 09:38:06 +02:00
2021-04-28 11:18:02 +02:00
.node.Dataset circle, .node.Dataset path {
fill: lightgoldenrodyellow
2021-03-31 16:24:46 +02:00
}
2021-04-28 09:38:06 +02:00
.labels .label text {
fill: yellow;
opacity: 1 !important;
2021-04-28 09:38:06 +02:00
}
.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{
2021-08-12 09:00:05 +02:00
fill: #75F06D;
}
2021-08-13 11:31:54 +02:00
.node.Institution.Institution-law-enforcement path{
fill: var(--color7);
}
2021-08-13 11:31:54 +02:00
.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{
2021-08-12 09:00:05 +02:00
fill: #A6E447;
}
.node.Institution.Institution-research path, .node.Institution.Institution-research text{
fill: var(--color6);
}
.node.Institution.Institution-project path{
2021-08-12 09:00:05 +02:00
fill: #C1DB31;
}
.node.Institution.Institution-watchdog path{
2021-08-12 09:00:05 +02:00
fill: #CED628;
}
.node.Institution.Institution-expert-group path{
2021-08-12 09:00:05 +02:00
fill: #DAD121;
}
.node.Institution.Institution-foundation path{
2021-08-12 09:00:05 +02:00
fill: #E5CB1E;
}
.node.Institution.Institution-international-organization path{
fill: gray;
}
.node.Institution.Institution-art-project path{
/* fill: blue; */
}
2021-03-31 16:24:46 +02:00
/* .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)
} */
2021-04-28 09:38:06 +02:00
#nodeInfo {
2021-03-31 16:24:46 +02:00
position: fixed;
2021-04-28 09:38:06 +02:00
display: block;
right: 20px;
bottom: 20px;
background: white;
2021-03-31 16:24:46 +02:00
padding: 10px;
border: solid 1px #ccc;
}
2021-04-28 09:38:06 +02:00
#nodeInfo.hidden {
display: none;
2021-03-31 16:24:46 +02:00
}
2021-04-28 09:38:06 +02:00
#nodeInfo h2 {
2021-03-31 16:24:46 +02:00
margin: 0;
padding: 0;
}
2021-04-28 09:38:06 +02:00
#nodeInfo iframe {
2021-03-31 16:24:46 +02:00
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;
}
2021-08-12 09:00:05 +02:00
#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;
}
2021-04-28 09:38:06 +02:00
#closeInfo {
2021-03-31 16:24:46 +02:00
cursor: pointer;
position: absolute;
right: 10px;
top: 10px;
}
2021-04-28 09:38:06 +02:00
#closeInfo:hover {
2021-03-31 16:24:46 +02:00
color: var(--hover-color);
}
2021-04-28 09:38:06 +02:00
a, a:link {
2021-03-31 16:24:46 +02:00
text-decoration: none;
}
2021-04-28 09:38:06 +02:00
a:hover {
2021-03-31 16:24:46 +02:00
text-decoration: underline;
2021-04-16 11:15:57 +02:00
}
2021-04-28 09:38:06 +02:00
header {
2021-04-16 11:15:57 +02:00
position: fixed;
2021-04-28 09:38:06 +02:00
bottom: 0;
right: 0;
2021-04-16 11:15:57 +02:00
background: white;
padding: 10px;
border-top-left-radius: 5px;
min-width: 300px;
}
2021-04-28 09:38:06 +02:00
h1 {
/* color:var(--color9); */
margin: 0;
text-transform: uppercase;
display: none;
}
p.subtitle {
margin: 0;
color: var(--color10);
/* text-transform: uppercase;; */
display: none;
}
2021-04-28 11:18:02 +02:00
#filters h3 {
text-align: center;
;
2021-04-28 09:38:06 +02:00
}
2021-04-28 11:18:02 +02:00
2021-04-28 09:38:06 +02:00
#filters label {
cursor: pointer;
display: block;
padding: 5px 10px;
2021-04-28 09:38:06 +02:00
}
2021-04-28 11:18:02 +02:00
#filters label svg {
display: inline;
width: 30px;
height: 30px;
vertical-align: middle;
}
2021-04-28 09:38:06 +02:00
#filters span:hover {
color: var(--hover-color);
}
#filters input {
2021-04-28 11:18:02 +02:00
display: none;
2021-04-28 09:38:06 +02:00
}
#filters input+span {
display: inline-block;
padding-left: 10px;
/* background: var(--color9); */
2021-04-28 11:18:02 +02:00
text-decoration: line-through;
2021-04-28 09:38:06 +02:00
}
#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;
}
2021-04-28 09:38:06 +02:00
#map .borders {
stroke-width: 6px;
2021-05-04 18:40:06 +02:00
stroke: rgb(221, 210, 210);
2021-04-28 09:38:06 +02:00
fill: none;
2021-04-19 22:47:06 +02:00
}
2021-04-28 09:38:06 +02:00
#alluvial {
2021-04-19 22:47:06 +02:00
/* position:fixed; */
2021-04-28 09:38:06 +02:00
top: 0;
left: 0;
2021-04-19 22:47:06 +02:00
}
2021-04-28 09:38:06 +02:00
#alluvial .flow_label text {
2021-04-19 22:47:06 +02:00
font-size: 30;
}
2021-08-13 11:55:14 +02:00
#closeSelection{
pointer-events: none;
position: fixed;
bottom: -100px;
left: 0;
2021-08-13 11:55:14 +02:00
background-color: white;
font-size: 50px;
width: 80px;
height: 80px;
2021-08-13 11:55:14 +02:00
text-align:center;
z-index: 10;
line-height: 80px;
transition: bottom .2s;
2021-08-13 11:55:14 +02:00
}
.selectedNode #closeSelection{
pointer-events: all;
2021-08-13 11:55:14 +02:00
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{
2021-10-13 18:35:49 +02:00
color: var(--link-hover-related-color);
}
#sources a:hover{
color: var(--link-hover-color);
2021-08-13 11:55:14 +02:00
}