/* * SearXNG, A privacy-respecting, hackable metasearch engine * * To convert "style.less" to "style.css" run: $make styles */ // stylelint-disable no-descending-specificity @import "../../__common__/less/new_issue.less"; @import "../../__common__/less/stats.less"; @import "../../__common__/less/result_templates.less"; @import (inline) "../../node_modules/normalize.css/normalize.css"; @import "definitions.less"; @import "mixins.less"; @import "code.less"; @import "toolkit.less"; @import "autocomplete.less"; @import "detail.less"; @import "animations.less"; @import "embedded.less"; // for index.html template @import "index.less"; // for preferences.html template @import "preferences.less"; // Search-Field @import "search.less"; // ion-icon .ion-icon { display: inline-block; vertical-align: bottom; line-height: 1; text-decoration: inherit; .ltr-transform(); } .ion-icon-small { width: 1rem; height: 1rem; .ion-icon; } .ion-icon-big { width: 1.5rem; height: 1.5rem; .ion-icon; } // Main LESS-Code html { font-family: sans-serif; font-size: 0.9em; .text-size-adjust; color: var(--color-base-font); background-color: var(--color-base-background); padding: 0; margin: 0; } body, main { padding: 0; margin: 0; } body { display: flex; flex-direction: column; height: 100vh; margin: 0; } main { width: 100%; margin-bottom: 2rem; flex: 1; } .page_with_header { margin: 2em auto; width: 85em; } footer { clear: both; min-height: 4rem; padding: 1rem 0; width: 100%; text-align: center; background-color: var(--color-footer-background); border-top: 1px solid var(--color-footer-border); overflow: hidden; p { font-size: 0.9em; } } .page_with_header .logo { height: 40px; } input[type="submit"], #results button[type="submit"] { padding: 0.7rem; display: inline-block; background: var(--color-btn-background); color: var(--color-btn-font); .rounded-corners; border: 0; cursor: pointer; } a { text-decoration: none; color: var(--color-url-font); &:visited { color: var(--color-url-visited-font); .highlight { color: var(--color-url-visited-font); } } } article[data-vim-selected] { background: var(--color-result-vim-selected); .ltr-border-left(0.2rem solid var(--color-result-vim-arrow)); .ltr-rounded-right-corners(10px); } article.result-images[data-vim-selected] { background: var(--color-result-vim-arrow); border: none; .rounded-corners; .image_thumbnail { filter: opacity(60%); } } article[data-vim-selected].category-videos, article[data-vim-selected].category-news, article[data-vim-selected].category-map, article[data-vim-selected].category-music, article[data-vim-selected].category-files, article[data-vim-selected].category-social { border: 1px solid var(--color-result-vim-arrow); .rounded-corners; } .result { margin: @results-margin 0; padding: @result-padding; .ltr-border-left(0.2rem solid transparent); h3 { font-size: 1.2rem; word-wrap: break-word; margin: 0.4rem 0 0.4rem 0; padding: 0; a { color: var(--color-result-link-font); font-weight: normal; font-size: 1.1em; &:visited { color: var(--color-result-link-visited-font); } &:focus, &:hover { text-decoration: underline; border: none; outline: none; } } } .cache_link, .proxyfied_link { font-size: 0.9em !important; } .content, .stat, .altlink { font-size: 0.9em; margin: 0; padding: 0; max-width: 54em; word-wrap: break-word; line-height: 1.24; .highlight { color: var(--color-result-description-highlight-font); background: inherit; font-weight: bold; } } .codelines { .highlight { color: inherit; background: inherit; font-weight: normal; } } .url_wrapper { display: flex; font-size: 1rem; color: var(--color-result-url-font); flex-wrap: nowrap; overflow: hidden; flex-direction: row; margin: 0; padding: 0; .url_o1 { white-space: nowrap; flex-shrink: 1; } .url_o1::after { content: " "; width: 1ch; display: inline-block; } .url_o2 { overflow: hidden; white-space: nowrap; flex-basis: content; flex-grow: 0; flex-shrink: 1; text-align: right; .url_i2 { float: right; } } } .published_date { font-size: 0.8em; color: var(--color-result-publishdate-font); } img { &.thumbnail { .ltr-float-left(); padding-top: 0.6rem; .ltr-padding-right(1rem); width: 20rem; height: unset; // remove heigth value that was needed for lazy loading } &.image { .ltr-float-left(); padding-top: 0.6rem; .ltr-padding-right(1rem); width: 7rem; max-height: 7rem; object-fit: scale-down; object-position: right top; } } .break { clear: both; } } .category-videos, .category-news, .category-map, .category-music, .category-files, .category-social { border: 1px solid var(--color-result-border); margin: 1rem 0; .rounded-corners; } .category-social .image { width: auto !important; min-width: 48px; min-height: 48px; padding: 0 5px 25px 0 !important; } .audio-control audio { width: 100%; padding: 10px 0 0 0; } .embedded-content iframe { width: 100%; padding: 10px 0 0 0; } .result-videos .content { overflow: hidden; } .result-videos .embedded-video iframe { width: 100%; aspect-ratio: 16 / 9; padding: 10px 0 0 0; } @supports not (aspect-ratio: 1 / 1) { // support older browsers which do not have aspect-ratio // https://caniuse.com/?search=aspect-ratio .result-videos .embedded-video iframe { height: calc(@results-width * 9 / 16); } } .engines { .ltr-float-right(); color: var(--color-result-engines-font); span { font-size: smaller; margin-top: 0; margin-bottom: 0; .ltr-margin-right(0.5rem); .ltr-margin-left(0); } } .small_font { font-size: 0.8em; } .highlight { color: var(--color-result-link-font-highlight); background: inherit; } .empty_element { font-style: italic; } .result-images { display: inline-block; margin: 0; padding: 0; position: relative; max-height: 200px; border: none !important; img { float: inherit; margin: 0.125rem; padding: 0; border: none; max-height: 200px; background: var(--color-result-image-background); } span.title { display: none; color: var(--color-result-image-span-font); } &:hover span.title { display: block; position: absolute; bottom: 0; .ltr-right(0); padding: 4px; margin-top: 0; .ltr-margin-right(0); margin-bottom: 4px; .ltr-margin-left(4px); // color: @color-result-image-span-font; background-color: var(--color-result-image-span-background-hover); font-size: 0.7em; } } .result-map { img.image { .ltr-float-right() !important; height: 100px !important; width: auto !important; } table { font-size: 0.9em; width: auto; border-collapse: separate; border-spacing: 0 0.35rem; th { font-weight: inherit; width: 17rem; vertical-align: top; .ltr-text-align-left(); } td { vertical-align: top; .ltr-text-align-left(); } } } .hidden { display: none !important; } #results { margin-top: 1rem; .ltr-margin-right(2rem); margin-bottom: 0; .ltr-margin-left(@results-offset); display: grid; grid-template-columns: @results-width 25rem; grid-template-rows: min-content min-content 1fr min-content; gap: 0 @results-gap; grid-template-areas: "corrections sidebar" "answers sidebar" "urls sidebar" "pagination sidebar"; } #results #sidebar *:first-child, #results #urls *:first-child { margin-top: 0; } #urls { padding: 0; grid-area: urls; } #suggestions { .wrapper { display: flex; flex-flow: row wrap; justify-content: flex-end; form { display: inline-block; flex: 1 1 50%; } } } #suggestions, #infoboxes { input { padding: 0; margin: 3px; font-size: 0.9em; display: inline-block; background: transparent; color: var(--color-result-search-url-font); cursor: pointer; } input[type="submit"], .infobox .url a { color: var(--color-result-link-font); text-decoration: none; font-size: 0.9rem; &:hover { text-decoration: underline; } } } #corrections { grid-area: corrections; display: flex; flex-flow: row wrap; margin: 0 0 1em 0; h4, input[type="submit"] { display: inline-block; padding: 0.5rem; margin: 0.5rem; } input[type="submit"] { font-size: 0.8rem; .rounded-corners-tiny; } } #suggestions .title, #search_url .title, #apis .title { margin: 2em 0 0.5em 0; color: var(--color-base-font); } #answers { grid-area: answers; border: 1px solid var(--color-answer-border); background: var(--color-answer-background); padding: @result-padding; margin: 1rem 0; margin-top: 0; color: var(--color-answer-font); .rounded-corners; h4 { display: none; } } #infoboxes { form { min-width: 210px; } } #sidebar { grid-area: sidebar; word-wrap: break-word; color: var(--color-sidebar-font); .infobox { margin: 10px 0 10px; border: 1px solid var(--color-sidebar-border); padding: 1rem; font-size: 0.9em; .rounded-corners; h2 { margin: 0 0 0.5em 0; } img { max-width: 100%; max-height: 12em; display: block; margin: 0 auto; padding: 0; } dl { margin: 0.5em 0; } dt { display: inline; margin-top: 0.5em; .ltr-margin-right(0.25em); margin-bottom: 0.5em; .ltr-margin-left(0); padding: 0; font-weight: bold; } dd { display: inline; margin: 0.5em 0; padding: 0; } input { font-size: 1em; } br { clear: both; } .attributes, .urls { clear: both; } } } #search_url { margin-top: 8px; div.selectable_url { pre { width: 200em; } } } #linkto_preferences { position: absolute; .ltr-right(1.8rem); top: 2.2rem; padding: 0; border: 0; display: block; font-size: 1.2em; color: var(--color-search-font); a:link *, a:hover *, a:visited *, a:active * { color: var(--color-search-font); } } #pagination { grid-area: pagination; br { clear: both; } } #apis { margin-top: 8px; clear: both; } #backToTop { border: 1px solid var(--color-backtotop-border); margin: 0; padding: 0; font-size: 1em; background: var(--color-backtotop-background); position: fixed; bottom: 8rem; .ltr-left(@results-width + @results-offset + (0.5 * @results-gap - 1.2em)); transition: opacity 0.5s; opacity: 0; .rounded-corners; a { display: block; margin: 0; padding: 0.7em; } a, a:visited, a:hover, a:active { color: var(--color-backtotop-font); } } #results.scrolling #backToTop { opacity: 1; } @media screen and (max-width: @tablet) { .page_with_header { margin: 2rem 0.5rem; width: auto; } #infoboxes { position: inherit; max-width: inherit; .infobox { clear: both; img { .ltr-float-left(); max-width: 10em; margin-top: 0.5em; .ltr-margin-right(0.5em); margin-bottom: 0.5em; .ltr-margin-left(0); } } } #sidebar { margin-bottom: @results-margin; padding: 0; float: none; border: none; width: auto; input { border: 0; } } #apis { display: none; } #search_url { display: none; } .result { .thumbnail { max-width: 98%; } .url { span.url { display: block; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; width: 100%; } } .engines { .ltr-float-right(); padding: 0 0 3px 0; } } .result-images { border-bottom: none !important; } .image_result { max-width: 98%; img { max-width: 98%; } } #backToTop { display: none; } #pagination { margin: 2rem 0 0 0 !important; } #main_results div#results { margin: 1rem auto 0 auto; justify-content: center; display: grid; grid-template-columns: @results-width; grid-template-rows: min-content min-content min-content 1fr min-content min-content; gap: 0; grid-template-areas: "corrections" "answers" "sidebar" "urls" "pagination"; } } #main_results div#results.only_template_images { margin: 1rem @results-tablet-offset 0 @results-tablet-offset; display: grid; grid-template-columns: 100%; grid-template-rows: min-content min-content 1fr min-content min-content; gap: 0; grid-template-areas: "corrections" "urls" "answers" "sidebar" "pagination"; #urls { width: inherit; margin: 0; } #backToTop { .ltr-left(auto); .ltr-right(1rem); } #pagination { .ltr-margin-right(4rem); } } @media screen and (max-width: @phone) { #main_results div#results { grid-template-columns: 100%; margin: 2rem @results-tablet-offset 0 @results-tablet-offset; } #linkto_preferences { top: 0.8rem; .ltr-right(0.7rem); } #main_index #linkto_preferences { top: 0.5rem; .ltr-right(0.5rem); } #results { margin: 0; padding: 0; } #pagination { margin: 2rem 1rem 0 1rem !important; } article[data-vim-selected] { border: 1px solid var(--color-result-vim-arrow); .rounded-corners; } .result { border: 1px solid var(--color-result-border); margin: 1rem 0; .rounded-corners; } .result-images { margin: 0; padding: 0; border: none; } } @media screen and (max-width: @small-phone) { .result-videos { img.thumbnail { float: none !important; } .content { overflow: inherit; } } } pre code { white-space: pre-wrap; }