/* This file contains SCSS used for creating the general structure of pages. Selectors should be things like body, h1, nav, etc which are used site-wide */ @import "scss/colours"; @import "scss/mixins"; @import "scss/typography"; @import "scss/controls"; .container { width: 100%; padding-right: 0.75rem; padding-left: 0.75rem; margin-right: auto; margin-left: auto; max-width: inherit; @include breakpoint(phablet) { } @include breakpoint(tablet) { max-width: 960px; } @include breakpoint(laptop) { max-width: 1200px; } @include breakpoint(desktop) { max-width: 1550px; } @include breakpoint(bigbig) { max-width: 1880px; } } .low_bandwidth { .dropdown-toggle::after { display: none; } } .skip-link { position: absolute; top: -40px; /* Adjust as needed to hide the link off-screen */ left: 0; background-color: #fff; /* Background color to cover the link for screen readers */ z-index: 999; /* Ensure it's above other content */ } .skip-link:focus { top: 0; /* Bring the link back into view when it receives focus */ } .form-group { margin-bottom: 1.1rem; } .card { max-width: 350px; margin-left: auto; margin-right: auto; .card-body > p > img, .card-body > p > a > img { max-width: 100%; } } #breadcrumb_nav { font-size: 87%; } @include breakpoint(tablet) { #breadcrumb_nav { display: block; font-size: 87%; .breadcrumb { padding: 0; margin-bottom: 0; background-color: inherit; .breadcrumb-item + .breadcrumb-item::before { content: ">"; } } } } .communities_table { tbody tr th { padding: 0; a { padding-top: 10px; padding-bottom: 10px; width: 100%; display: inline-block; } } } .community_header { background-repeat: no-repeat; background-position: center center; background-size: cover; border-radius: 5px 5px 0 0; /* top-left | top-right | bottom-right | bottom-left */ height: 176px; margin-left: -12px; margin-right: -12px; margin-top: -9px; @include breakpoint(tablet) { height: 240px; } #breadcrumb_nav { @include breakpoint(tablet) { padding-left: 13px; padding-top: 13px; } .breadcrumb { background-color: rgba(0,0,0,0.2); display: inline-block; padding: 5px 10px; @include breakpoint(tablet) { border-radius: 6px; } margin-bottom: 0; .breadcrumb-item { color: white; display: inline-block; a { color: white; } } .breadcrumb-item + .breadcrumb-item::before { content: ">"; color: white; } } } } .community_header_no_background, .community_header { .community_icon { width: 120px; height: auto; } } #choose_topics_card { label.form-control-label { display: none; } .form-group { margin-bottom: 0; } ul.form-control { border: none; list-style-type: none; padding-top: 0; margin-bottom: 0; li { vertical-align: center; label { height: 44px; } } } } .form-check .form-check-input { position: relative; top: 4px; } .post_reply_form { label { display: none; } .form-check { position: absolute; bottom: -14px; left: 122px; label { display: inherit; } } } .add_reply { .form-control-label { display: none; } .form-check { position: absolute; bottom: -14px; left: 122px; } } .post_list { .post_teaser { border-bottom: solid 2px $light-grey; padding-top: 8px; padding-bottom: 8px; h3 { font-size: 110%; margin-top: 4px; margin-bottom: 0; } .meta_row, .main_row, .utilities_row { a { text-decoration: none; } } .thumbnail { float: right; padding-left: 0; padding-right: 0; position: relative; .fe { display: block; position: absolute; right: 0; background-color: rgba(256,256,256, 0.7); padding-bottom: 1px; padding-left: 1px; border-radius: 2px; top: 0; } img { height: 60px; width: 60px; border-radius: 5px; object-fit: cover; margin-left: 5px; @include breakpoint(tablet) { height: 70px; width: 133px; } } &.lbw { .fe { background: none; } .fe::before { font-size: 28px; padding-right: 7px; } } } &.blocked { opacity: 0.2; font-size: 80%; .voting_buttons { width: 46px; line-height: 24px; .upvote_button, .downvote_button { font-size: 80%; } } } } } .post_list_masonry, .post_list_masonry_wide { -webkit-column-count: 2; -moz-column-count: 2; column-count: 2; -webkit-column-gap: 5px; -moz-column-gap: 5px; column-gap: 5px; clear: both; @include breakpoint(tablet) { -webkit-column-count: 3; -moz-column-count: 3; column-count: 3; -webkit-column-gap: 5px; -moz-column-gap: 5px; column-gap: 5px; } .post_teaser { margin-bottom: 5px; position: relative; img { width: 100%; height: auto; } .masonry_info { position: absolute; bottom: 0; background-color: rgba(0, 0, 0, 0.2); width: 100%; text-align: center; p { margin-bottom: 0; a { color: white; text-decoration: none; line-height: 40px; @include breakpoint(laptop) { line-height: 30px; } } } } .masonry_info_no_image { background-color: rgba(0, 0, 0, 0.2); width: 100%; text-align: center; p { margin-bottom: 0; a { color: var(--bs-body-color); text-decoration: none; } } } } } .post_list_masonry_wide { @include breakpoint(tablet) { -webkit-column-count: 5; -moz-column-count: 5; column-count: 5; -webkit-column-gap: 5px; -moz-column-gap: 5px; column-gap: 5px; } } .layout_switcher { @include breakpoint(tablet) { float: right; } } .url_thumbnail { float: right; margin-top: -6px; } .post_image { img { max-width: 100%; } } .render_username { display: inline; a img { width: 20px; height: 20px; border-radius: 50%; vertical-align: bottom; } } .comments > .comment { margin-left: 0; border-top: solid 1px $grey; margin-right: 8px; &:first-child { border-top: none; padding-top: 0; } } [data-bs-theme=dark] { .post_list .post_teaser { border-bottom: solid 1px $super-dark-grey; .thumbnail .fe { background-color: rgba(0,0,0,0.4); } } .comments > .comment { border-top-color: $super-dark-grey; } .downarea-textarea { .form-control { background-color: $super-dark-grey; color: whitesmoke; } } .comment .replies { border-left-color: $super-dark-grey; border-top-color: $super-dark-grey; } } .post_body { img { max-height: 40vh; max-width: 100%; height: auto; } } .comment_body { img { max-height: 40vh; max-width: 100%; height: auto; } } #replies { scroll-margin-top: 5em; } .post_replies > .col { padding-right: 5px; } .post_type_image { .post_image { img { max-width: 100%; height: auto; } } } .voting_buttons_new { display: inline-block; .upvote_button, .downvote_button { display: inline-block; padding: 5px 15px; position: relative; cursor: pointer; color: rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1)); &.digits_4 { width: 68px; } &.digits_5 { width: 76px; } &.digits_6 { width: 84px; } &.voted_up { color: green; font-weight: bold; } &.voted_down { color: darkred; font-weight: bold; } } .upvote_button { top: 1px; @include breakpoint(laptop) { padding-right: 5px; } .htmx-indicator { left: 13px; top: 7px; } } .downvote_button { top: 1px; .htmx-indicator { left: 12px; } @include breakpoint(laptop) { padding-left: 5px; .htmx-indicator { left: 2px; } } } .htmx-indicator{ position: absolute; left: 3px; width: 20px; height: 20px; top: 0; } .htmx-request .htmx-indicator{ display:inline; position: absolute; width: 20px; height: 20px; right: 14px; top: 5px; opacity: 1!important; } .htmx-request.htmx-indicator{ display:inline; } } .voting_buttons { float: right; display: block; width: 55px; padding: 0 0 5px 5px; line-height: 30px; font-size: 14px; @include breakpoint(laptop) { line-height: 25px; } div { border: solid 1px $primary-colour; } .upvote_button, .downvote_button { position: relative; padding-left: 3px; border-radius: 3px; cursor: pointer; &.digits_4 { width: 68px; } &.digits_5 { width: 76px; } &.digits_6 { width: 84px; } &.voted_up { color: green; font-weight: bold; } &.voted_down { color: darkred; font-weight: bold; } } .downvote_button { margin-top: 5px; } .htmx-indicator{ position: absolute; width: 20px; height: 20px; } .htmx-request .htmx-indicator{ display:inline; position: absolute; width: 20px; height: 20px; right: 14px; top: 5px; opacity: 1!important; } .htmx-request.htmx-indicator{ display:inline; } a { text-decoration: none; } } .comment { clear: both; margin-bottom: 20px; margin-left: 15px; padding-top: 8px; .limit_height { position: relative; &.expanded { max-height: none; .show-more { display: none; } } } .show-more { text-decoration: none; display: block; text-align: center; background-color: $dark-grey; color: white; margin-bottom: 15px; height: 30px; .fe-angles-down, .fe-angles-up { margin-top: 7px; display: inline-block; } @include breakpoint(laptop) { height: 23px; .fe-angles-down, .fe-angles-up { display: inline; } } } .comment_author { img { width: 25px; height: 25px; border-radius: 50%; vertical-align: middle; } a.unhide { display: none; text-decoration: none; padding: 5px 15px; position: relative; top: 3px; } } .comment_actions { margin-top: -10px; position: relative; a { text-decoration: none; padding: 5px 0; } .hide_button { display: inline-block; a { padding: 5px 15px; } } .notif_toggle { text-decoration: none; font-size: 87%; padding: 5px 15px; } } .replies { margin-top: 15px; border-left: solid 1px $light-grey; border-top: solid 1px $light-grey; } } #add_local_community_form { #url { width: 297px; display: inline-block; padding-left: 3px; } } #reasons { border: none; list-style-type: none; padding: 0; overflow-y: auto; height: 230px; } .table { tr th { vertical-align: middle; } } .show_menu { display: block!important; } .moderator_list { list-style-type: none; padding-left: 0; li { display: inline-block; padding-right: 5px; } } fieldset { legend { font-weight: bold; } } .profile_action_buttons, .rh_action_buttons { float: right; } .preview_image_shown { z-index: 1; position: relative; max-width: 92vw; height: auto; cursor: pointer; @include breakpoint(tablet) { max-width: 760px; } @include breakpoint(laptop) { max-width: 800px; } @include breakpoint(desktop) { max-width: 850px; } @include breakpoint(bigbig) { max-width: 1180px; } } .mobile_create_post { float: right; } .post_body, .comment_body { blockquote { border-left: 2px solid var(--bs-secondary); padding: 0.1em 5px; font-style: italic; } } .list-group-item:first-child { padding-top: 0; } .skip-link { position: absolute; top: -40px; left: 0; background-color: #fff; z-index: 999; } .skip-link:focus { top: 0; }