xref: /webtrees/resources/css/webtrees.css (revision b315f3e1bccd89f38d8ab5d44d3cc6327d590a57)
1/**
2 * webtrees: online genealogy
3 * Copyright (C) 2021 webtrees development team
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 * You should have received a copy of the GNU General Public License
13 * along with this program. If not, see <http://www.gnu.org/licenses/>.
14 */
15
16/* The webtrees theme */
17@import "_base.css";
18
19:root {
20    --chart-line-radius: 1rem;
21    --chart-line: solid gray thin;
22    --link-color-hover: #f00;
23    --link-color: #555;
24    --link-decoration-hover: none;
25    --link-decoration: none;
26    --sex-f-bg: #e9daf1;
27    --sex-f-fg: #ff2080;
28    --sex-m-bg: #edf7fd;
29    --sex-m-fg: #81a9cb;
30    --sex-u-bg: #cceecc;
31    --sex-u-fg: #559955;
32    --sex-x-bg: #fceaa1;
33    --sex-x-fg: #ffab57;
34}
35
36/* Override Bootstrap formatting */
37.btn-link {
38    padding-left: 0.25rem;
39    padding-right: 0.25rem;
40}
41
42.table-given-name {
43    overflow-x: hidden;
44}
45
46.container-fluid {
47    padding-left: 5px;
48    padding-right: 5px;
49}
50
51table {
52    border-collapse: separate;
53}
54
55/*
56 * Pages have the following high-level structure:
57 *
58 * wt-global wt-theme-<THEME> wt-route-<ROUTE>
59 * +---wt-header-wrapper
60 * |   +---wt-header-container
61 * |       +---wt-header-content
62 * |           +---wt-accessibility-links
63 * |           +---wt-site-logo
64 * |           +---wt-site-title
65 * |           +---wt-header-search
66 * |           |   +---wt-header-search-form
67 * |           |       +---wt-header-search-field
68 * |           |       +---wt-header-search-button
69 * |           +---wt-secondary-navigation
70 * |           |   +---wt-user-menu
71 * |           +---wt-primary-navigation
72 * |               +---wt-genealogy-menu
73 * +---wt-main-wrapper
74 * |   +---wt-main-container
75 * |       +---wt-main-content
76 * |           +---wt-messages
77 * |           +---wt-page-title
78 * |           +---wt-page-options wt-page-options-xxxxx
79 * |           +---wt-page-content
80 * +---wt-footers
81 *     +---wt-footer wt-footer-xxxxx
82 */
83
84.wt-global {
85    color: #555;
86}
87
88.wt-header-wrapper {
89}
90
91.wt-header-container {
92}
93
94.wt-header-content {
95}
96
97.wt-accessibility-links {
98}
99
100.wt-site-logo {
101    order: 1;
102    flex: 0 0 272px;
103}
104
105.wt-site-logo:after {
106    height: 50px;
107    width: 242px;
108    content: url(webtrees/images/webtrees.png);
109}
110
111.wt-site-title {
112    order: 3;
113    flex: 0 0 calc(100% - 15rem);
114    font-size: 1.5rem;
115    font-weight: normal;
116}
117
118.wt-header-search {
119    order: 4;
120    flex: 0 0 15rem;
121    position: relative;
122    top: -0.75rem;
123}
124
125.wt-header-search-form {
126}
127
128.wt-header-search-field {
129}
130
131.wt-header-search-button {
132}
133
134.wt-secondary-navigation {
135    order: 2;
136    flex: 1 0 auto;
137    width: auto;
138    white-space: nowrap;
139    margin-bottom: 15px;
140}
141
142.wt-user-menu {
143    flex-wrap: nowrap;
144    justify-content: flex-end;
145}
146
147.wt-user-menu .nav-link {
148    display: inline-block;
149    padding: 0.5rem;
150}
151
152.wt-user-menu .nav-item + .nav-item::before {
153    content: "|";
154}
155
156.wt-user-menu .dropdown-toggle::after {
157    display: none;
158}
159
160.wt-primary-navigation {
161    order: 5;
162    /* Extend to full page width */
163    flex: 0 0 100vw;
164    max-width: 100vw;
165    /* Recalculate margins for content */
166    margin: 0 calc(50% - 50vw);
167    padding: 0 calc(50vw - 50%);
168    border-bottom: 2px solid #81a9cb;
169    border-top: 2px solid #81a9cb;
170}
171
172.wt-genealogy-menu {
173    justify-content: center;
174}
175
176.wt-genealogy-menu .nav-item {
177    text-align: center;
178    min-width: 5rem;
179}
180
181.wt-genealogy-menu .nav-link::before {
182    display: block;
183}
184
185.wt-genealogy-menu .dropdown-toggle::after {
186    display: none;
187}
188
189.wt-genealogy-menu .dropdown-menu {
190    border-radius: 0;
191    border: thin solid #aaa;
192}
193
194.wt-genealogy-menu .dropdown-item {
195    /* Space between icons and align with submenu icons */
196    padding: 0 5px 0 0;
197    line-height: 1.0;
198}
199
200.wt-genealogy-menu .dropdown-item::before {
201    vertical-align: text-top;
202    line-height: 2.4;
203    padding: 0 .25rem;
204}
205
206.menu-tree .nav-link::before {
207    content: url(webtrees/menu/tree.png);
208}
209
210.menu-tree .dropdown-item::before {
211    content: url(webtrees/menu/tree-tree.png);
212}
213
214.menu-chart .nav-link::before {
215    content: url(webtrees/menu/chart.png);
216}
217
218.menu-chart-ancestry::before {
219    content: url(webtrees/menu/chart-ancestors.png);
220}
221
222.menu-chart-compact::before {
223    content: url(webtrees/menu/chart-compact.png);
224}
225
226.menu-chart-descendants::before {
227    content: url(webtrees/menu/chart-descendants.png);
228}
229
230.menu-chart-familybook::before {
231    content: url(webtrees/menu/chart-family-book.png);
232}
233
234.menu-chart-fanchart::before {
235    content: url(webtrees/menu/chart-fanchart.png);
236}
237
238.menu-chart-hourglass::before {
239    content: url(webtrees/menu/chart-hourglass.png);
240}
241
242.menu-chart-lifespan::before {
243    content: url(webtrees/menu/chart-lifespan.png);
244}
245
246.menu-chart-pedigree::before {
247    content: url(webtrees/menu/chart-pedigree.png);
248}
249
250.menu-chart-pedigreemap::before {
251    content: url(webtrees/menu/chart-pedigree-map.png);
252}
253
254.menu-chart-relationship::before {
255    content: url(webtrees/menu/chart-relationship.png);
256}
257
258.menu-chart-statistics::before {
259    content: url(webtrees/menu/chart-statistics.png);
260}
261
262.menu-chart-timeline::before {
263    content: url(webtrees/menu/chart-timeline.png);
264}
265
266.menu-chart-tree::before {
267    content: url(webtrees/menu/chart-tree.png);
268}
269
270.menu-list .nav-link::before {
271    content: url(webtrees/menu/list.png);
272}
273
274.menu-branches::before {
275    content: url(webtrees/menu/branches.png);
276}
277
278.menu-list-fam::before {
279    content: url(webtrees/menu/list-fam.png);
280}
281
282.menu-list-indi::before {
283    content: url(webtrees/menu/list-indi.png);
284}
285
286.menu-list-loc::before {
287    content: url(webtrees/menu/list-plac.png);
288}
289
290.menu-list-note::before {
291    content: url(webtrees/menu/list-note.png);
292}
293
294.menu-list-obje::before {
295    content: url(webtrees/menu/list-obje.png);
296}
297
298.menu-list-plac::before {
299    content: url(webtrees/menu/list-plac.png);
300}
301
302.menu-list-repo::before {
303    content: url(webtrees/menu/list-repo.png);
304}
305
306.menu-list-sour::before {
307    content: url(webtrees/menu/list-sour.png);
308}
309
310.menu-list-subm::before {
311    content: url(webtrees/menu/list-indi.png);
312}
313
314.menu-calendar .nav-link::before {
315    content: url(webtrees/menu/calendar.png);
316}
317
318.menu-calendar-day::before {
319    content: url(webtrees/menu/calendar-calendar.png);
320}
321
322.menu-calendar-month::before {
323    content: url(webtrees/menu/calendar-calendar.png);
324}
325
326.menu-calendar-year::before {
327    content: url(webtrees/menu/calendar-calendar.png);
328}
329
330.menu-report .nav-link::before {
331    content: url(webtrees/menu/report.png);
332}
333
334.menu-report .dropdown-item::before {
335    content: url(webtrees/menu/report-report.png);
336}
337
338.menu-search .nav-link::before {
339    content: url(webtrees/menu/search.png);
340}
341
342.menu-search .dropdown-item::before {
343    content: url(webtrees/menu/search-search.png);
344}
345
346.menu-faq .nav-link::before {
347    content: url(webtrees/menu/faq.png);
348}
349
350.menu-clippings .nav-link::before {
351    content: url(webtrees/menu/clippings.png);
352}
353
354.menu-clippings-add::before {
355    content: url(webtrees/menu/clippings-add.png);
356}
357
358.menu-clippings-cart::before {
359    content: url(webtrees/menu/clippings-cart.png);
360}
361
362.menu-clippings-download::before {
363    content: url(webtrees/menu/edit-preferences.png);
364}
365
366.menu-clippings-empty::before {
367    content: url(webtrees/menu/edit-delete.png);
368}
369
370.menu-story .nav-link::before {
371    content: url(webtrees/menu/story.png);
372}
373
374.wt-main-container {
375    /* Space between the header/footer and the main content. */
376    padding-top: 1rem;
377    padding-bottom: 1rem;
378}
379
380.wt-main {
381}
382
383.wt-messages {
384}
385
386.wt-page-title {
387    color: #006;
388    font-size: 1.5rem;
389    font-weight: bold;
390    text-align: center;
391}
392
393.wt-page-options {
394}
395
396.wt-page-content {
397}
398
399.wt-page-options .form-group {
400    margin-bottom: 2px;
401}
402
403.wt-page-options-label {
404    color: #fff;
405    background-color: #81a9cb;
406    font-weight: bold;
407    border-left: 2px solid transparent;
408    border-right: 2px solid transparent;
409}
410
411.wt-page-options-value {
412    background-color: #edf7f9;
413    border: solid #81a9cb 1px;
414    padding: 0.25rem 0.75rem;
415}
416
417.wt-page-content {
418    margin-top: 1rem;
419}
420
421.wt-footers {
422}
423
424.wt-footer {
425}
426
427.wt-footer-contact {
428}
429
430.wt-footer-cookies {
431    background: #aaa;
432    color: #fff;
433    transition: height 0.5s;
434}
435
436.wt-footer-page-views {
437}
438
439.wt-footer-powered-by {
440}
441
442.wt-footer-powered-by-webtrees {
443    width: 100px;
444    height: 21px;
445    content: url(images/powered-by-webtrees.png);
446}
447
448/*
449 * The tree/user home pages
450 *
451 * wt-home-page / wt-user-page
452 * +---wt-main-blocks
453 * |   +---wt-block, wt-block-AAA
454 * |   +---wt-block, wt-block-BBB
455 * |   +---wt-block, wt-block-CCC
456 * +---wt-side-blocks
457 *     +---wt-block, wt-block-XXX
458 *     +---wt-block, wt-block-YYY
459 *     +---wt-block, wt-block-ZZZ
460 *
461 * Each block as the structure
462 * wt-block, wt-block-XXX
463 * +---wt-block-header, wt-block-header-XXX
464 * +---wt-block-content, wt-block-content-XXX
465 */
466
467.wt-block {
468    background-color: #edf7fd;
469    border: solid #81a9cb 1px;
470}
471
472.wt-block-header {
473    background-color: #edf7fd;
474    border-bottom: none;
475    font-weight: bold;
476}
477
478.wt-block-content {
479}
480
481.wt-block-content .list_table {
482    border-spacing: 1px;
483    border: solid #81a9cb 1px;
484    border-right: 0;
485}
486
487.wt-block-content .list_value,
488.wt-block-content .list_value_wrap {
489    border: 0;
490    border-top: solid #81a9cb 1px;
491    border-right: solid #81a9cb 1px;
492}
493
494/*
495 * The individual page.
496 *
497 * wt-route-individual
498 * +---wt-header-wrapper
499 */
500
501.wt-individual-silhouette-f {
502    content: url(images/individual-silhouette-female.png);
503}
504
505.wt-individual-silhouette-m {
506    content: url(images/individual-silhouette-male.png);
507}
508
509.wt-individual-silhouette-u,
510.wt-individual-silhouette-x {
511    content: url(images/individual-silhouette-unknown.png);
512}
513
514/*
515 * Chart-boxes are used to build the various charts.
516 * Each type of chart will set its own size and hide/show content.
517 *
518 * wt-chart-box
519 * +--- wt-chart-box-thumbnail
520 * +--- wt-chart-box-extra
521 *      +--- wt-chart-box-zoom
522 *           +--- wt-chart-box-icon
523 *           +--- wt-chart-box-dropdown wt-chart-box-zoom-dropdown
524 *      +--- wt-chart-box-links
525 *           +--- wt-chart-box-icon
526 *           +--- wt-chart-box-dropdown wt-chart-box-links-dropdown
527 * +--- wt-chart-box-name
528 * +--- wt-chart-box-lifespan
529 * +--- wt-chart-box-facts
530 *     +--- wt-chart-box-fact
531 */
532.wt-chart-box {
533    height: 5rem;
534    padding: 2px;
535    line-height: 1.1;
536}
537
538.wt-chart-box-f,
539.wt-chart-box-f .wt-chart-box-dropdown {
540    background: var(--sex-f-bg);
541    border: solid var(--sex-f-fg) thin;
542}
543
544.wt-chart-box-m,
545.wt-chart-box-m .wt-chart-box-dropdown {
546    background: var(--sex-m-bg);
547    border: solid var(--sex-m-fg) thin;
548}
549
550.wt-chart-box-u,
551.wt-chart-box-u .wt-chart-box-dropdown {
552    background: var(--sex-u-bg);
553    border: solid var(--sex-u-fg) thin;
554}
555
556.wt-chart-box-x,
557.wt-chart-box-x .wt-chart-box-dropdown {
558    background: var(--sex-x-bg);
559    border: solid var(--sex-x-fg) thin;
560}
561
562:focus {
563    outline-style: none;
564}
565
566.flash-messages {
567    clear: both;
568    text-align: center;
569}
570
571img {
572    border: 0;
573}
574
575legend img {
576    height: 20px;
577    vertical-align: middle;
578    width: 20px;
579}
580
581img.block {
582    border: 0;
583    height: 25px;
584    vertical-align: middle;
585}
586
587.button {
588    width: 60px;
589}
590
591.alpha_index {
592    color: #999;
593}
594
595.news_box:target,
596#gedcom_stats:target {
597    background-color: #ffc;
598}
599
600/* families tab person box */
601table.center {
602    margin-left: auto;
603    margin-right: auto;
604}
605
606.list_table {
607    margin: 0 auto;
608}
609
610.list_label,
611.list_label_wrap {
612    color: #fff;
613    background-color: #81a9cb;
614    font-weight: bold;
615    text-align: center;
616}
617
618.list_value,
619.list_value_wrap {
620    background-color: #edf7f9;
621    border: solid #81a9cb 1px;
622    vertical-align: top;
623    padding: 4px;
624}
625
626.list_label,
627.list_value {
628    white-space: nowrap;
629}
630
631.list_label_wrap,
632.list_value_wrap {
633    white-space: normal;
634}
635
636div.fact_SHARED_NOTE {
637    clear: both;
638}
639
640/* Table of genealogical facts */
641.wt-facts-table caption {
642    caption-side: top;
643}
644
645.wt-facts-table th {
646    background-color: #81a9cb;
647    border: solid #81a9cb 1px;
648    text-align: center;
649    font-weight: normal;
650    min-width: 20%;
651}
652
653.wt-facts-table td {
654    background-color: #edf7fd;
655    border: 1px solid #81a9cb;
656}
657
658.wt-facts-table .wt-sex-f > td {
659    background-color: var(--sex-f-bg);
660    border: solid #81a9cb thin;
661}
662
663.wt-facts-table .wt-sex-m > td {
664    background-color: var(--sex-m-bg);
665    border: solid var(--sex-m-fg) thin;
666}
667
668.wt-facts-table .wt-sex-u > td {
669    background-color: var(--sex-u-bg);
670    border: solid var(--sex-u-fg) thin;
671}
672
673.wt-facts-table .wt-sex-x > td {
674    background-color: var(--sex-x-bg);
675    border: solid var(--sex-x-fg) thin;;
676}
677
678.details_label {
679    font-weight: bold;
680}
681
682.date {
683    color: #337;
684}
685
686.label {
687    font-weight: bold;
688}
689
690.error {
691    color: #d00;
692    font-weight: bold;
693}
694
695.indent {
696    padding-left: 20px;
697}
698
699.parentdeath {
700    border: thin solid #888;
701    padding: 1px;
702}
703
704.journal_box {
705    padding: 3pt;
706    border: thin solid #aaa;
707    overflow: visible;
708}
709
710.news_box {
711    background-color: #edf7fd;
712    border-top: solid #81a9cb 1px;
713}
714
715.news_title {
716    font-weight: bold;
717}
718
719.news_date {
720    margin-bottom: 12px;
721}
722
723.current_day {
724    font-weight: bold;
725    font-size: 16px;
726}
727
728.cal_day {
729    font-weight: bold;
730}
731
732.rtl_cal_day {
733    color: #00f;
734    font-weight: bold;
735}
736
737#user-page h1 {
738    margin: 0.25em auto 0.6em;
739}
740
741.tvertline {
742    vertical-align: bottom;
743}
744
745#childbox {
746    padding: 5px;
747    position: absolute;
748    display: none;
749    text-align: start;
750    white-space: nowrap;
751    top: 20px;
752    left: 0;
753}
754
755.layout3 #childbox {
756    top: auto;
757    bottom: 20px;
758}
759
760.person0 {
761    background-color: #aaf;
762    border: outset #aaf 1px;
763    vertical-align: top;
764}
765
766.person1 {
767    background-color: #afa;
768    border: outset #afa 1px;
769    vertical-align: top;
770}
771
772.person2 {
773    background-color: #faa;
774    border: outset #faa 1px;
775    vertical-align: top;
776}
777
778.person3 {
779    background-color: #55f;
780    border: outset #55f 1px;
781    vertical-align: top;
782}
783
784.person4 {
785    background-color: #f55;
786    border: outset #f55 1px;
787    vertical-align: top;
788}
789
790.person5 {
791    background-color: #5f5;
792    border: outset #5f5 1px;
793    vertical-align: top;
794}
795
796.starredname {
797    text-decoration: underline;
798}
799
800.search_hit {
801    background-color: #ff0;
802}
803
804.descriptionbox {
805    color: #fff;
806    font-size: 12px;
807    background-color: #81a9cb;
808    border: solid #81a9cb 1px;
809    vertical-align: top;
810    padding: 3px;
811}
812
813.optionbox {
814    background-color: #d1d9ef;
815    font-size: 1rem;
816    border: solid #81a9cb 1px;
817    vertical-align: top;
818    white-space: nowrap;
819    padding: 3px;
820}
821
822.red {
823    color: #f00;
824}
825
826.wt-associate-fact,
827.wt-relation-fact,
828.wt-historic-fact {
829    opacity: 0.8;
830}
831
832.messagebox {
833    background-color: #c2ceef;
834    border: solid #81a9cb 1px;
835}
836
837/* ---Pending edits--- */
838.wt-new {
839    outline: solid blue 1px;
840}
841
842.wt-old {
843    outline: solid red 1px;
844}
845
846.nowrap {
847    white-space: nowrap;
848}
849
850.wrap {
851    white-space: normal;
852}
853
854.statistics-page {
855    text-align: center;
856}
857
858.gchart {
859    border: solid #81a9cb 1px;
860}
861
862#facts_content dd {
863    float: left;
864    width: 70%;
865}
866
867td.descriptionbox a {
868    color: #fff;
869}
870
871.filtersH,
872.filtersF {
873    margin: 4px;
874}
875
876.filtersH img {
877    margin-bottom: 2px;
878}
879
880.list-charts {
881    text-align: center;
882}
883
884#place-hierarchy h2,
885#place-hierarchy h4 {
886    text-align: center;
887}
888
889/* ==== FAQ table styles ===== */
890table.faq {
891    background-color: #e0e0e0;
892    margin: 5px 0 50px 5px;
893    width: 98%;
894}
895
896table.faq tr:nth-child(odd) td {
897    background-color: #e7eef3;
898}
899
900div.faq_title {
901    background-color: #e0e0e0;
902    margin: 1em 0;
903    padding: .25em;
904    font-weight: bold;
905    width: 98%;
906}
907
908div.faq_body {
909    clear: both;
910    padding: 0 1em;
911}
912
913.faq_top {
914    float: right;
915}
916
917#indi_note {
918    margin: 0 0 5px;
919}
920
921.indi_table {
922    clear: left;
923}
924
925#indi_note .fact_NOTE {
926    float: left;
927    margin: 0 5px 0 0;
928}
929
930#indi_note .fact_SOUR {
931    margin: 3px 0;
932}
933
934#indi_note .fact_SOUR a {
935    font-size: 100%;
936}
937
938#indi_note .fact_NOTE,
939#indi_note .fact_SOUR {
940    clear: both;
941}
942
943.odometer {
944    font-family: courier, monospace;
945    font-weight: bold;
946    background: #000;
947    color: #fff;
948}
949
950/* Sidebar - Family navigator */
951.wt-family-navigator-dropdown {
952    background: #edf7fd;
953}
954
955.wt-family-navigator-dropdown-heading {
956    font-weight: bold;
957    font-size: inherit;
958    color: inherit;
959}
960
961/* Sidebar - Descendants */
962#sb_content_descendancy {
963    margin-top: 5px;
964}
965
966#sb_desc_content {
967    margin-left: 3px;
968    font-size: 0.8em;
969}
970
971#sb_desc_content ul {
972    padding: 0;
973    margin: 0;
974}
975
976.sb_desc_indi_li {
977    list-style-type: none;
978}
979
980/* Individuals and Families */
981#sidebar-content-individuals,
982#sidebar-content-families {
983    margin-top: 5px;
984}
985
986.sb_indi_surname_li,
987.sb_fam_surname_li {
988    list-style-image: url(icons/plus.png);
989}
990
991.name_tree_div ul {
992    padding: 0;
993    margin: 0;
994}
995
996.name_tree_div li {
997    list-style: none;
998    margin: 0;
999    padding: 0;
1000}
1001
1002/* Clippings */
1003#sb_clippings_content ul {
1004    padding: 0;
1005    margin: 0;
1006}
1007
1008#sb_clippings_content li {
1009    list-style: none;
1010    margin: 0;
1011    padding: 0;
1012    white-space: nowrap;
1013}
1014
1015/* Stories module */
1016.story_title {
1017    padding-top: 12px;
1018    font-size: 13px;
1019    height: 32px;
1020    font-weight: bold;
1021}
1022
1023.story_body {
1024    padding: 20px;
1025    white-space: normal;
1026}
1027
1028.story_edit {
1029    padding: 12px;
1030}
1031
1032/*-- Fan chart ---- */
1033.fan_chart_menu {
1034    background: #fff;
1035    position: absolute;
1036    display: none;
1037    z-index: 100;
1038}
1039
1040#fan_chart ul {
1041    list-style-type: none;
1042    margin: 0;
1043}
1044
1045/* Lifespans chart */
1046.wt-lifespans-subtitle {
1047    text-align: center;
1048}
1049
1050.wt-lifespans-scale {
1051    white-space: nowrap;
1052}
1053
1054.wt-lifespans-decade {
1055    width: 70px;
1056    height: 60px;
1057    display: inline-block;
1058    background-image: url(images/lifespan-decade.png);
1059    background-position-y: bottom;
1060    background-repeat: no-repeat;
1061    background-size: 70px 37px;
1062}
1063
1064.wt-lifespans-individuals {
1065    background: #fafafa;
1066}
1067
1068.wt-lifespans-individual {
1069}
1070
1071.wt-lifespans-summary {
1072    background: #ffffff;
1073    border: thin solid #000;
1074    z-index: 1;
1075}
1076
1077.wt-lifespans-summary-link {
1078    font-weight: bold;
1079}
1080
1081/*-- timeline  --*/
1082#timeline_chart {
1083    position: relative;
1084    top: 0;
1085    left: 0;
1086}
1087
1088/*
1089 * Any element that is loaded dynamically has the class wt-ajax-load.
1090 * We can provide a "loading" placeholder for empty elements with this class.
1091 */
1092.wt-ajax-load:empty {
1093    height: 32px;
1094    background: url(images/loading-32x32.gif) no-repeat 50% 50%;
1095}
1096
1097/*
1098 * Default icons are provided by FontAwesome.
1099 */
1100.wt-icon-anniversary {
1101    content: url(icons/anniversary.png);
1102}
1103
1104.wt-icon-arrow-down {
1105    content: url(webtrees/icons/arrow-down.png);
1106}
1107
1108a > .wt-icon-arrow-down:hover {
1109    content: url(webtrees/icons/arrow-down-hover.png);
1110}
1111
1112.wt-icon-arrow-left {
1113    content: url(webtrees/icons/arrow-left.png);
1114}
1115
1116a > .wt-icon-arrow-left:hover {
1117    content: url(webtrees/icons/arrow-left-hover.png);
1118}
1119
1120.wt-icon-arrow-right {
1121    content: url(webtrees/icons/arrow-right.png);
1122}
1123
1124a > .wt-icon-arrow-right:hover {
1125    content: url(webtrees/icons/arrow-right-hover.png);
1126}
1127
1128.wt-icon-arrow-up {
1129    content: url(webtrees/icons/arrow-up.png);
1130}
1131
1132a > .wt-icon-arrow-up:hover {
1133    content: url(webtrees/icons/arrow-up-hover.png);
1134}
1135
1136.wt-icon-bing-maps {
1137    content: url(icons/bing-maps.png);
1138}
1139
1140.wt-icon-calendar {
1141    content: url(icons/calendar.png)
1142}
1143
1144.wt-icon-collapse {
1145}
1146
1147.wt-icon-coordinates {
1148    content: url(icons/coordinates.png)
1149}
1150
1151.wt-icon-copy {
1152    content: url(icons/copy.png)
1153}
1154
1155.wt-icon-delete {
1156    content: url(icons/delete.png);
1157}
1158
1159.wt-icon-edit {
1160    content: url(icons/edit.png);
1161}
1162
1163.wt-icon-expand {
1164}
1165
1166.wt-icon-family {
1167    content: url(icons/family.png);
1168}
1169
1170.wt-icon-google-maps {
1171    content: url(icons/google-maps.png);
1172}
1173
1174.wt-icon-help {
1175    content: url(webtrees/icons/help.png);
1176}
1177
1178.wt-icon-individual {
1179    content: url(icons/individual.png);
1180}
1181
1182.wt-icon-keyboard {
1183    content: url(icons/keyboard.png);
1184}
1185
1186.wt-icon-media {
1187    content: url(icons/media.png);
1188}
1189
1190.wt-icon-note {
1191    content: url(icons/note.png);
1192}
1193
1194.wt-icon-openstreetmap {
1195    content: url(icons/openstreetmap.png);
1196}
1197
1198.wt-icon-preferences {
1199    content: url(webtrees/icons/preferences.png);
1200}
1201
1202.wt-icon-reorder {
1203    content: url(icons/reorder.png);
1204}
1205
1206.wt-icon-repository {
1207    content: url(icons/repository.png);
1208}
1209
1210.wt-icon-sex {
1211    height: 1em;
1212}
1213
1214.wt-icon-sex-f {
1215    content: url(icons/sex-female.png);
1216}
1217
1218.wt-icon-sex-m {
1219    content: url(icons/sex-male.png);
1220}
1221
1222.wt-icon-sex-u {
1223    content: url(icons/sex-unknown.png);
1224}
1225
1226.wt-icon-sex-x {
1227    content: url(icons/sex-unknown.png);
1228}
1229
1230.wt-icon-source {
1231    content: url(icons/source.png);
1232}
1233
1234.wt-icon-submitter {
1235    content: url(icons/individual.png);
1236}
1237
1238.wt-icon-warning {
1239    content: url(icons/warning.png);
1240}
1241
1242.wt-icon-zoom-in {
1243    content: url(webtrees/icons/zoom-in.png);
1244}
1245
1246.wt-icon-zoom-out {
1247    content: url(webtrees/icons/zoom-out.png);
1248}
1249
1250/* Miscellaneous images */
1251.icon-cfamily {
1252    content: url(webtrees/images/family.png);
1253}
1254
1255.icon-childless {
1256    content: url(images/childless.png);
1257}
1258
1259.icon-children {
1260    content: url(images/children.png);
1261}
1262
1263.icon-edit_indi {
1264    content: url(webtrees/images/edit_indi.png);
1265}
1266
1267.icon-fam-list {
1268    content: url(webtrees/images/family.png);
1269}
1270
1271.icon-indi-list {
1272    content: url(webtrees/images/indis.png);
1273}
1274
1275.icon-loading-small {
1276    content: url(images/indicator.gif);
1277}
1278
1279.icon-minus {
1280    content: url(icons/minus.png);
1281}
1282
1283.icon-mypage {
1284    content: url(webtrees/images/mypage.png);
1285}
1286
1287.icon-plus {
1288    content: url(icons/plus.png);
1289}
1290
1291.icon-resn-confidential {
1292    content: url(images/resn_confidential.png);
1293}
1294
1295.icon-resn-locked {
1296    content: url(images/resn_locked.png);
1297}
1298
1299.icon-resn-none {
1300    content: url(images/resn_none.png);
1301}
1302
1303.icon-resn-privacy {
1304    content: url(images/resn_privacy.png);
1305}
1306
1307.icon-rings {
1308    content: url(images/rings.png);
1309}
1310
1311.icon-selected {
1312    content: url(webtrees/images/selected.png);
1313}
1314
1315/* Silhouettes on charts */
1316.icon-silhouette-f {
1317    content: url(webtrees/images/silhouette_female_small.png);
1318}
1319
1320.icon-silhouette-m {
1321    content: url(webtrees/images/silhouette_male_small.png);
1322}
1323
1324.icon-silhouette-u,
1325.icon-silhouette-x {
1326    content: url(webtrees/images/silhouette_unknown_small.png);
1327}
1328
1329.icon-indis {
1330    content: url(webtrees/images/indis.png);
1331}
1332
1333.icon-patriarch {
1334    content: url(webtrees/images/patriarch.png);
1335}
1336
1337.icon-pedigree {
1338    content: url(webtrees/images/pedigree.png);
1339}
1340
1341.icon-sfamily {
1342    content: url(webtrees/images/family.png);
1343}
1344
1345.icon-user_add {
1346    content: url(webtrees/images/user_add.png);
1347}
1348
1349/* Census assistant */
1350.wt-census-assistant-form-control:focus {
1351    min-width: 12rem;
1352}
1353
1354/* Some blocks show a reduced version on the right-hand side. */
1355.wt-side-blocks .wt-side-block-optional {
1356    display: none !important;
1357}
1358
1359/* my page chart enhancements */
1360.wt-block-content-charts {
1361    overflow: auto;
1362}
1363
1364/* Some charts are wider than the page. */
1365.wt-chart {
1366    overflow-x: auto;
1367    overflow-y: hidden;
1368}
1369
1370/* Some menus (e.g. languages) can be longer than a page */
1371.dropdown-menu {
1372    max-height: 30rem;
1373    overflow-x: hidden;
1374}
1375
1376/* Forms */
1377.col-form-label {
1378    font-weight: bold;
1379}
1380