html, body {
margin: 0;
padding: 0;
height: 100%;
font-family: 'Libre Baskerville', serif;
}
*, *:before, *:after {
box-sizing: border-box;
}
body {
background: #fff;
color: #222;
}
a {
color: inherit;
}
/* background map */
#map {
height: 100%;
}
/* filters */
#filter-picker {
position: absolute;
z-index: 10;
top: 6px;
right: 6px;
pointer-events: none;
}
#filter-picker ul {
margin: 0;
padding: 0;
list-style: none;
}
#filter-picker a {
pointer-events: auto;
}
.year-filter li {
display: inline-block;
}
.year-filter a {
display: block;
width: 72px;
padding: 12px;
margin: 3px;
background: #222;
text-decoration: none;
color: #ddd;
text-align: center;
transition: background .3s ease;
}
.year-filter a:hover {
background: #333;
}
.year-filter .active a {
background: #444;
}
.category-filter {
text-align: right;
}
.category-filter li {
margin: 12px 0;
opacity: .5;
transition: opacity .3s ease;
}
.category-filter li.active {
opacity: 1;
}
.category-filter a {
text-decoration: none;
color: #333;
padding: 6px;
text-shadow: 0 0 0.1em white, 0 0 0.1em white, 0 0 0.1em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.3em white, 0 0 0.6em white;
position: relative;
}
.category-filter a:after {
content: '';
display: inline-block;
width: 9px;
height: 9px;
border-radius: 50%;
border: 2px solid #f00;
background: #fff;
position: absolute;
top: 50%;
left: -.5em;
margin-top: -4.5px;
box-shadow: 0 0 0.1em white, 0 0 0.1em white, 0 0 0.1em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.2em white, 0 0 0.3em white, 0 0 0.6em white;
}
.category-filter .racism a:after {
border-color: #F8B195;
}
.category-filter .antisemitism a:after {
border-color: #F67280;
}
.category-filter .sexism a:after {
border-color: #C06C84;
}
.category-filter .homophobia a:after {
border-color: #6C5B7B;
}
.category-filter .uncategorized a:after {
border-color: #355C7D;
}
.circle-marker {
border-radius: 50%;
border: 2px solid rgba(0,0,0,.5);
background: rgba(0,0,0,.2);
}
/* overlay text */
#overlay {
position: absolute;
z-index: 1001;
height: 100%;
width: 100%;
top: 0;
left: 0;
background: linear-gradient(to bottom left, rgba(255,255,255,.2), white 50%);
display: table-cell;
vertical-align: center;
}
#overlay .text {
position: absolute;
top: 50%;
left: 50%;
width: 90%;
max-width: 1024px;
transform: translate(-50%,-50%);
}
#overlay h1 {
margin-top: -1.2em;
font-size: 48px;
margin-bottom: 0;
display: inline-block;
font-weight: 500;
font-style: italic;
}
#overlay p {
margin: 1em 0 1.2em;
padding: 1.6em 0 .6em;
line-height: 1.5;
font-size: 20px;
border-top: 3px solid #c0c0c0;
}
#overlay a {
text-decoration: none;
border-bottom: 1px dotted #333;
padding-bottom: .2em;
}
#overlay a:hover {
border-bottom-color: transparent;
}
#overlay .begin {
font-size: 24px;
border-bottom: none;
font-weight: bold;
}
#overlay .begin:after {
content: '›';
padding-left: .1em;
}