/*
**************************************************************************************************
Copyright Holder and License
**************************************************************************************************
GRAMPS Cascading Style Sheet
Style Name: Basic-Spruce Stylesheet
Style Author: Jason M. Simanek (2008)
Note: Adapted from GRAMPS original Modern Style stylesheet with a new blue color scheme.
**************************************************************************************************
This website was created with GRAMPS
--------------------------------------------------------------------------------------------------
GRAMPS is a Free Software Project for Genealogy, offering a professional
genealogy program, and a wiki open to all. It is a community project, created,
developed and governed by genealogists.
Go to to learn more!
--------------------------------------------------------------------------------------------------
Copyright 2008 Jason M. Simanek
Copyright 2009 Stephane Charette
Copyright (C) 2008-2011 Rob G. Healey
Copyright 2011 Michiel D. Nauta
Copyright 2018 Theo van Rijn
Copyright (C) 2019 Serge Noiraud
This file is part of the GRAMPS program.
GRAMPS is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, version 2 of the License.
GRAMPS is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
GRAMPS. If not, see .
--------------------------------------------------------------------------------------------------
Color Palette
--------------------------------------------------------------------------------------------------
black #000
blue dark #204D91
blue #7CA3DD
blue light #BFD0EA
blue very light #EAEEF4
white #FFF
--------------------------------------------------------------------------------------------------
Characteristic of this style is that it uses the full width of the browser
window and that horizontal highlighting bars extend over the full width of
the page.
--------------------------------------------------------------------------------------------------
NarrativeWeb Styles
------------------------------------------------------------------------------------------------
General Elements
----------------------------------------------------- */
body {
font-family: sans-serif;
font-size: 100%;
color: black;
margin: 0px;
background-color: #EAEEF4;
}
body > div {
clear: both;
}
#outerwrapper {
margin: 5px auto;
width: 98%;
}
#outerwrapper > div {
clear: both;
}
.content {
background-color: #FFF;
border-top: solid 1px #7CA3DD;
}
.content div.snapshot {
float: right;
margin: 2em;
}
#ThumbnailPreview div.snapshot {
float: right;
margin: 0;
}
.fullclear {
clear: both;
}
/* Less whitespace on smaller real estate. */
@media only screen and (max-width: 1080px) {
.content {
padding: 0em 0.5em;
}
}
/* General Text
----------------------------------------------------- */
h1 {
font-size: x-large;
font-weight: bold;
padding-left: 15px;
}
h2 {
display:block;
margin:0;
padding:0;
text-align: center;
}
h3 {
font-size: large;
padding-left: 15px;
}
h4 {
font-size: medium;
color: #204D91;
background-color: #BFD0EA;
padding-left: 15px;
margin-bottom: 0px;
border-bottom: solid 1px #7CA3DD;
}
p#description {
padding-left: 15px;
}
a {
color: black;
text-decoration: none;
word-wrap: break-word;
}
a[href]:hover, a[href]:active {
background-color: #EAEEF4
}
.grampsid {
font-family: monospace;
font-size: smaller;
color: #7CA3DD;
}
/* Header
----------------------------------------------------- */
#SiteTitle {
color: #204D91;
}
#user_header, #user_footer {
padding-left: 15px;
}
/* Navigation
----------------------------------------------------- */
div#nav, #subnavigation {
border: solid 1px #EAEEF4; /* needed by IE7 */
}
#subnavigation ul {
overflow: hidden;
}
div#nav ul, #subnavigation ul {
list-style: none;
margin: 0px;
padding-left: 15px;
}
#subnavigation ul {
border-bottom: solid 1px #7CA3DD;
}
div#nav ul li, #subnavigation ul li {
float: left;
}
div#nav ul li a, #subnavigation ul li a {
display: block;
font-size: smaller;
font-weight: bold;
padding: 5px;
border-bottom: solid 1px #EAEEF4;
}
div#nav ul li a:hover, #subnavigation ul li a:hover {
text-decoration: none;
background-color: #BFD0EA;
border-bottom: solid 1px black;
}
div#nav ul li.CurrentSection a {
position: relative;
top: 1px;
border: solid 1px #7CA3DD;
border-bottom-style: none;
background-color: #FFF;
}
#subnavigation ul li.CurrentSection a {
background-color: #FFF;
}
/* Alphabet Navigation
----------------------------------------------------- */
div#alphanav {
background-color: #EAEEF4;
}
div#alphanav ul {
list-style: none;
border-width: 2px 0px 4px 0px;
border-style: solid;
border-color: black;
margin: 0px;
padding-left: 15px;
/* float container stretch, see www.quirksmode.org/css/clearing.html */
overflow: hidden;
}
div#alphanav ul li {
float: left;
font-size: larger;
font-weight: bold;
}
div#alphanav ul li:after {
content: " |";
}
div#alphanav ul li a {
display: block;
padding: 4px 8px;
line-height: 100%;
float: left;
}
div#alphanav ul li a:hover {
text-decoration: none;
background-color: black;
color: #FFF;
}
/* Responsive navigation */
a.navIcon {
display: none;
}
div#header::after {
content: "";
clear: both;
display: table;
}
div#nav::after {
content: "";
clear: both;
display: table;
}
@media only screen and (max-width: 1080px) {
/* Use less & all realestate on mobiles. */
div#outerwrapper {
margin: 5px auto;
width: 100%;
}
.nav {
background: none; /* Works in IE too. */
/*
width: 200px;
position: absolute;
z-index: 10;
*/
}
/* Undo some of the #nav styles - to enable the class .nav */
.nav ul, #subnavigation ul {
list-style: none;
min-width: unset;
width: 200px;
height: 32px;
margin: 0;
padding: 0;
}
.nav ul li, #subnavigation ul li {
float: unset;
display: unset
}
/* Start with hidden menu options */
/* .nav li:not(:first-child) {display: none;} */
.nav li {display: none;}
.nav ul {display: none;}
a.navIcon {
font-size:1.3em;
display: block;
margin: 0.1em 0.4em 0.4em 0.4em;
float: left;
}
.nav.responsive {position: absolute; display: block; z-index: 100;}
.nav.responsive a.icon {
position: absolute;
right: 0;
top: 0;
margin-right: 10px;
}
.nav.responsive li {
/* float: left; */
display: block;
text-align: left;
background-color: #EEE;
/* required by IE */
float: left;
clear: both;
width: 200px;
}
div#nav ul, #subnavigation ul {
padding-left: 0px;
}
.content {
padding: 0em 0.5em;
}
}
/* Main Table
----------------------------------------------------- */
table {
border-collapse: collapse;
width: 100%;
}
div#summaryarea > table.infolist,
div#parents > table.infolist,
h3 + table.infolist {
width: auto;
}
table tr th {
text-align: left;
background-color: #EAEEF4;
border-top: solid 1px #7CA3DD;
border-bottom: solid 1px #7CA3DD;
}
table tr th:first-child {
border-left: solid 1px #7CA3DD;
}
table tr th:last-child {
border-right: solid 1px #7CA3DD;
}
table.primobjlist tr th {
background-color: #BFD0EA;
}
table td, table th {
vertical-align: top;
padding-left: 1ex;
}
table.primobjlist td {
vertical-align: middle;
}
table td:first-child, table th:first-child {
padding-left: 15px;
}
table.primobjlist tr a {
display: block; /* make whole td clickable */
}
table.primobjlist tr.BeginLetter td, table.primobjlist tr.BeginSurname td {
border-top: solid 1px #BFD0EA;
}
td.ColumnLetter, td.ColumnRowLabel {
font-weight: bold;
}
td.ColumnBirth, td.ColumnDeath, td.ColumnPartner, td.ColumnParents {
font-size: 90%;
}
table.infolist tr td ol {
margin: 0px;
}
#summaryarea table.infolist td.ColumnAttribute,
#parents table.infolist td.ColumnAttribute,
#families table.infolist td.ColumnType,
#families table.infolist td.ColumnAttribute {
color: #204D91;
}
/* div summaryarea is missing for events, sources and repos! */
h3 + table.infolist td.ColumnAttribute {
color: #204D91;
}
table.primobjlist td.ColumnParents span.mother:before {
content: "+ ";
}
/* Surnames
----------------------------------------------------- */
table#SortByName td.ColumnSurname, table#SortByName th.ColumnSurname,
table#SortByCount td.ColumnQuantity, table#SortByCount th.ColumnQuantity {
background-color: #EAEEF4;
}
table#SortByName td.ColumnSurname a[href]:hover {
background-color: #BFD0EA;
}
/* make the whole cell light up on hover not just the a. */
table#SortByName td.ColumnSurname,
table#SortByName th.ColumnSurname,
table#SortByName th.ColumnQuantity {
padding-left: 0px;
}
table#SortByName td.ColumnSurname > a,
table#SortByName th.ColumnSurname > a,
table#SortByName th.ColumnQuantity > a {
padding-left: 1ex;
}
table#SortByName thead th.ColumnSurname a:after,
table#SortByCount thead th.ColumnQuantity a:after {
content: " \2193";
}
table.surname td.ColumnName {
background-color: #EAEEF4;
}
table.surname td.ColumnName a[href]:hover {
background-color: #BFD0EA;
}
/* make the whole cell light up on hover not just the a. */
table.surname td.ColumnName {
padding-left: 0px;
}
table.surname td.ColumnName > a {
padding-left: 15px;
}
/* Individuals
----------------------------------------------------- */
table.IndividualList td.ColumnSurname {
background-color: #EAEEF4;
}
/* Places
----------------------------------------------------- */
#Places table.infolist td.ColumnName {
background-color: #EAEEF4;
}
#Places table.infolist td.ColumnName a[href]:hover {
background-color: #BFD0EA;
}
/* make the whole cell light up on hover not just the a. */
#Places table.infolist td.ColumnName {
padding-left: 0px;
}
#Places table.infolist td.ColumnName > a {
padding-left: 1ex;
}
/* Events
----------------------------------------------------- */
#EventList table.infolist tr.BeginType td {
border-top:dashed 1px #BFD0EA;
}
#EventList table.infolist tr.BeginLetter td {
border-top:solid 1px #BFD0EA;
}
#EventList table.infolist td.ColumnType {
background-color: #EAEEF4;
}
#EventList td.ColumnPerson a {
display: inline;
}
#EventList td.ColumnPerson span.person:after,
#EventList td.ColumnPerson span.father:after,
#EventList td.ColumnPerson span.mother:after,
#EventDetail td.ColumnPerson span.person:after,
#EventDetail td.ColumnPerson span.father:after,
#EventDetail td.ColumnPerson span.mother:after {
content: ", ";
}
#EventList td.ColumnPerson span.fatherNmother:after,
#EventDetail td.ColumnPerson span.fatherNmother:after {
content: " + ";
}
#EventList td.ColumnPerson span.person:last-child:after,
#EventList td.ColumnPerson span.father:last-child:after,
#EventList td.ColumnPerson span.mother:last-child:after,
#EventDetail td.ColumnPerson span.person:last-child:after,
#EventDetail td.ColumnPerson span.father:last-child:after,
#EventDetail td.ColumnPerson span.mother:last-child:after {
content: "";
}
table.eventlist tbody tr td.ColumnSources {
width: 5%;
}
/* Gallery
----------------------------------------------------- */
#GalleryNav {
text-align: center;
margin: 2em 0px;
}
#GalleryNav a {
font-weight: bold;
background-color: #EAEEF4;
border: solid 1px #7CA3DD;
margin: 1em;
}
#GalleryNav a:hover {
background-color: #BFD0EA;
}
#GalleryNav a#Previous {
padding: .4em .7em .3em .7em;
}
#GalleryNav a#Next {
padding: .4em 1.9em .3em 1.9em;
}
#GalleryCurrent {
font-size: larger;
}
#GalleryTotal {
font-weight: normal;
}
#GalleryDisplay {
margin: 0px auto;
position: relative;
}
#GalleryDisplay img {
margin: 0px auto;
display: block;
border: solid 1px #7CA3DD;
max-width: 800px;
height: auto;
}
@media only screen and (max-width: 1080px) {
#GalleryDisplay img {
max-width: 100%;
}
}
#GalleryDetail h3 {
text-align: center;
}
/* Sources
------------------------------------------------------ */
div#SourceDetail {
margin: 0 auto;
}
/* Contact
----------------------------------------------------- */
#Contact {
overflow: hidden;
}
#Contact #summaryarea {
background-color: #EAEEF4;
border: solid 1px #7CA3DD;
}
#Contact #summaryarea #GalleryDisplay img {
float: right;
border: solid 1px #7CA3DD;
}
#Contact #researcher, #Contact #researcher h3 {
font-size: larger;
padding-left: 0px;
}
#Contact #streetaddress, #Contact #locality, #Contact #email {
display: block;
}
#Contact #locality, #Contact #city, #Contact #state, #Contact #postalcode,
#Contact #country {
white-space: nowrap;
}
#Contact #city:after {
content: ",";
}
/* Download
----------------------------------------------------- */
#Download table.download a {
display: block;
}
/* Subsection
----------------------------------------------------- */
#Home #GalleryDisplay, #Introduction #GalleryDisplay, #Contact #GalleryDisplay {
float: right;
margin: 0;
border: 0px;
}
#Home #GalleryDisplay img, #Introduction #GalleryDisplay img,
#Contact #GalleryDisplay img {
display: block;
max-width: 950px;
height: auto;
float: right;
}
@media only screen and (max-width: 1080px) {
#Home #GalleryDisplay img, #Introduction #GalleryDisplay img,
#Contact #GalleryDisplay img {
margin: 0 auto;
max-width: 100%;
}
}
#Home p, #Introduction p {
padding-left: 15px;
}
.subsection {
clear: both;
overflow: hidden;
}
.subsection p {
margin: 0px;
}
/* Subsection : Families
----------------------------------------------------- */
div#families table.fixed_subtables table.eventlist {
table-layout: fixed;
}
div#families table.fixed_subtables table.eventlist th:first-child {
width: 9em;
}
div#families table.fixed_subtables table.eventlist th:last-child {
width: 5em;
}
div#families table.attrlist td.ColumnType {
color: black;
}
/* Subsection : Gallery
----------------------------------------------------- */
#gallery {
background-color: green;
}
#indivgallery {
background-color: white;
}
#gallery .gallerycell {
float: left;
width: 130px;
height: 150px;
text-align: center;
margin: 0;
background-color: white;
border-top: solid 1px #999;
border-right: solid 1px #999;
}
#gallery .thumbnail {
font-size: smaller;
margin: 3em auto;
}
#indivgallery .thumbnail {
float: left;
width: 130px;
font-size: smaller;
text-align: center;
margin: 0.8em 0.5em;
background-color: white;
}
#indivgallery h4 + .thumbnail {
margin-left: 15px;
/* Problem: if there are more thumnails then fit on a single row, the
* first thumnail on each next row should also have a margin-left
* of 15 px. */
}
#gallery div.indexno {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #CCC;
color: #555;
margin: 0;
}
#indivgallery div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #CCC;
color: #555;
}
#indivgallery .thumbnail ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
#indivgallery .thumbnail ul li:first-child {
border-style: none;
}
#indivgallery .thumbnail ul li {
border-top: dashed 1px #CCC;
border-top-style: dashed;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
#gallery img {
border: solid 1px #999;
}
#indivgallery img {
border: solid 1px #7CA3DD;
}
#indivgallery span {
/* ## remove this line and the comment markers from the line below to hide description in Indivifual Gallery
display: none; */
}
div.snapshot div.thumbnail {
text-align: center;
}
/* Subsection : Narrative
----------------------------------------------------- */
h4 + div.grampsstylednote, a.familymap {
margin: 1em 15px;
}
i + div.grampsstylednote p {
margin: 0 0 0.3em 0;
}
div.grampsstylednote p {
margin-bottom: 0.5em;
}
/* Subsection : Family Map
----------------------------------------------------- */
a.familymap {
display: block;
}
/* Subsection : Source References
----------------------------------------------------- */
#sourcerefs ol li ol {
list-style-type: lower-alpha;
}
/* Subsection : Pedigree
----------------------------------------------------- */
.pedigreegen {
list-style-type: none;
padding-left: 15px;
}
.pedigreegen li ol {
list-style-type: none;
}
.pedigreegen li ol li ol {
list-style-type: decimal;
}
.pedigreegen ol.spouselist {
list-style-type: none;
}
.pedigreegen ol.spouselist li.spouse ol {
list-style-type: decimal;
}
.spouse:before {
content: "+ ";
}
.thisperson {
font-weight: bold;
}
.thisperson > ol {
font-weight: normal;
}
/* Footer
----------------------------------------------------- */
#footer {
clear: both;
padding-top: 1em;
background-color: #BFD0EA;
border-top: solid 1px #204D91;
}
#footer > * {
background-color: #EAEEF4;
font-size: 80%;
}
#footer p#createdate {
float: left;
width: 50%;
text-align: left;
padding-left: 15px;
margin-top: 1em;
}
#footer p#copyright {
float: right;
width: 40%;
text-align: right;
padding-right: 15px;
}
#footer a[href]:hover {
background-color: #BFD0EA;
}
/* Overwritten
----------------------------------------------------- */
body#FamilyMap {
background-color: #EAEEF4 ! important;
}
/* Calendar Styles
===================================================== */
table.calendar {
table-layout: fixed;
empty-cells: show;
}
.calendar thead th {
text-align: center;
border-top-style: none;
}
.calendar thead th.monthName {
font-size: xx-large;
font-weight: normal;
background-color: #FFF;
border-bottom-style: none;
padding-top: 1em;
}
.calendar thead th abbr {
border-bottom-style: none;
}
#CreatorInfo {
float: right;
margin: -1em 15px 0px 0px;
font-weight: bold;
color: #7CA3DD;
}
#CreatorInfo a[href]:hover {
background-color: #BFD0EA;
}
.calendar tfoot tr td {
border-top: solid 4px #7CA3DD;
vertical-align: middle;
}
/* Calendar : Date Numeral */
.calendar div.date {
float: right;
width: 1.8em;
font-size: large;
text-align: center;
background-color: #BFD0EA;
color: #204D91;
}
/* Calendar : Date Container */
.calendar td {
padding: 0px 0px 0px 1ex;
border-width: 1px 0px 0px 1px;
border-style: solid;
border-color: #BFD0EA;
background-color: #FFF;
}
.calendar td:first-child {
border-left-style: none;
padding: 0px 0px 0px 1ex;
}
.calendar tbody tr:first-child td {
border-top-style: none;
}
/* Calendar : Date Detail */
.calendar td ul {
font-size: smaller;
list-style: none;
padding: 0px;
}
.calendar td ul li {
border-top: dashed 1px #BFD0EA;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
.calendar td ul li:first-child {
border-style: none;
}
.calendar td ul a[href]:hover {
background-color: #BFD0EA;
}
/* Calendar : Birthday, Anniversary, Highlight */
.calendar td ul li em {
font-style: normal;
color: #7CA3DD;
}
.calendar td.highlight {
background-color: #EAEEF4;
}
.calendar td.highlight div.date {
color: black;
background-color: #BFD0EA;
}
/* Calendar : Previous-Next Month */
.calendar td.previous,
.calendar td.next,
.calendar td.previous div.date,
.calendar td.next div.date {
color: #BFD0EA;
background-color: #FFF;
}
/* Calendar : Full Year */
body#fullyearlinked div.content {
overflow: hidden;
}
body#fullyearlinked table.calendar {
float: left;
width: 33.3%;
height: 18em;
border: solid 1px black;
}
body#fullyearlinked table.calendar thead th {
height: 2em;
}
body#fullyearlinked table.calendar thead th.monthName {
font-size: large;
padding: 2px 0px;
}
body#fullyearlinked table.calendar tbody td {
height: 3em;
}
body#OneDay div.content {
overflow: hidden;
}