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