searxng/searx/static/themes/simple/src/less/style.less
Markus Heiser 8ac776765c [theme] simple: do not prefer arial over user's sans-serif font
The default *sans-serif* font from the browsers most often renders much better
compared to Arial font.

Signed-off-by: Markus Heiser <markus.heiser@darmarit.de>
2021-09-27 17:37:15 +02:00

799 lines
12 KiB
Plaintext

/*
* searx, A privacy-respecting, hackable metasearch engine
*
* To convert "style.less" to "style.css" run: $make styles
*/
// stylelint-disable no-descending-specificity
@stacked-bar-chart: rgb(0, 0, 0);
@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 "../generated/ion.less";
@import "definitions.less";
@import "mixins.less";
@import "code.less";
@import "toolkit.less";
@import "autocomplete.less";
// for index.html template
@import "index.less";
// for preferences.html template
@import "preferences.less";
// Search-Field
@import "search.less";
// ion-icon
.ion-icon-big {
.ion-icon;
font-size: 149%;
}
// Main LESS-Code
html {
font-family: sans-serif;
font-size: 0.9em;
.text-size-adjust;
color: @color-font;
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;
}
#main_preferences,
#main_about,
#main_stats {
margin: 2em auto;
width: 85em;
}
footer {
clear: both;
min-height: 4rem;
padding: 1rem 0;
width: 100%;
text-align: center;
background-color: @color-footer-background;
border-top: 1px solid @color-footer-border;
overflow: hidden;
p {
font-size: 0.9em;
}
}
#main_preferences h1,
#main_stats h1 {
background: url('../img/searx.png') no-repeat;
background-size: auto 75%;
min-height: 40px;
margin: 0 auto;
span {
visibility: hidden;
}
}
input[type="submit"],
#results button[type="submit"] {
padding: 0.5rem;
display: inline-block;
background: @color-download-button-background;
color: @color-download-button-font;
.rounded-corners;
border: 0;
cursor: pointer;
}
a {
text-decoration: none;
color: @color-url-font;
&:visited {
color: @color-url-visited-font;
.highlight {
color: @color-url-visited-font;
}
}
}
article[data-vim-selected] {
background: #f7f7f7;
}
article[data-vim-selected]::before {
position: absolute;
left: (@results-offset - 2rem);
padding: 2px;
content: ">";
font-weight: bold;
color: @color-base;
}
article.result-images[data-vim-selected] {
background: @color-base;
}
article.result-images[data-vim-selected]::before {
display: none;
content: "";
}
.result {
margin: 19px 0 18px 0;
padding: 0;
h3 {
font-size: 1.1em;
word-wrap: break-word;
margin: 5px 0 1px 0;
padding: 0;
margin-bottom: 0;
a {
color: @color-result-link-font;
font-weight: normal;
font-size: 1.1em;
&:visited {
color: @color-result-link-visited-font;
}
&:focus,
&:hover {
text-decoration: underline;
border: none;
-webkit-box-shadow: none;
box-shadow: 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: @color-black;
background: inherit;
font-weight: bold;
}
}
.codelines {
.highlight {
color: inherit;
background: inherit;
font-weight: normal;
}
}
.url {
font-size: 0.9em;
margin: 0 0 3px 0;
padding: 0;
max-width: 54em;
word-wrap: break-word;
color: @color-result-url-font;
}
.published_date {
font-size: 0.8em;
color: @color-result-publishdate-font;
}
img {
&.thumbnail {
float: left;
padding: 0 5px 10px 0;
width: 20em;
min-width: 20em;
min-height: 8em;
// background: @color-base-light;
}
&.image {
float: left;
padding: 0 5px 10px 0;
width: 100px;
max-height: 100px;
object-fit: scale-down;
object-position: right top;
}
}
.break {
clear: both;
}
}
.category-social .image {
width: auto !important;
min-width: 48px;
min-height: 48px;
padding: 0 5px 25px 0 !important;
}
.result-videos .content {
overflow: hidden;
}
.engines {
float: right;
color: @color-engines-font;
span {
font-size: smaller;
margin: 0 0.5em 0 0;
}
}
.small_font {
font-size: 0.8em;
}
.highlight {
color: @color-highlight;
background: inherit;
font-weight: bold;
}
.result-images {
display: inline-block;
margin: 0;
padding: 0;
position: relative;
max-height: 200px;
img {
float: inherit;
margin: 0;
padding: 0;
border: none;
max-height: 200px;
background: @color-base-dark;
}
span a {
display: none;
color: @color-result-image-span-font;
}
&:hover span a {
display: block;
position: absolute;
bottom: 0;
right: 0;
padding: 4px;
margin: 0 0 4px 4px;
background-color: @color-result-image-span-background-hover;
font-size: 0.7em;
}
}
.result-map {
img.image {
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;
text-align: left;
}
td {
vertical-align: top;
text-align: left;
}
}
}
.hidden {
display: none !important;
}
.torrent_result {
border-left: 10px solid @color-result-torrent-border;
padding-left: 3px;
p {
margin: 3px;
font-size: 0.8em;
}
a {
color: @color-result-link-font;
&:hover {
text-decoration: underline;
}
&:visited {
color: @color-result-link-visited-font;
}
}
}
#results {
margin: 2rem 2rem 0 @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 #answers *:first-child,
#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,
#answers,
#infoboxes,
#corrections {
input {
padding: 0;
margin: 3px;
font-size: 0.9em;
display: inline-block;
background: transparent;
color: @color-result-search-url-font;
cursor: pointer;
}
input[type="submit"],
.infobox .url a {
color: @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;
margin: 0 0.5em 0 0;
}
input[type="submit"]::after {
content: ", ";
}
}
#suggestions .title,
#search_url .title,
#apis .title {
margin: 2em 0 0.5em 0;
color: @color-font;
}
#answers {
grid-area: answers;
border: 1px solid #ddd;
padding: 0.9em;
box-shadow: 0 0 5px #ccc;
h4 {
display: none;
}
.answer {
display: block;
font-size: 1.2em;
font-weight: bold;
}
}
#answers,
#infoboxes {
form {
min-width: 210px;
}
}
#sidebar {
grid-area: sidebar;
word-wrap: break-word;
.infobox {
margin: 10px 0 10px;
border: 1px solid #ddd;
padding: 0.9em;
font-size: 0.9em;
box-shadow: 0 0 5px #ccc;
h2 {
margin: 0 0 0.5em 0;
}
img {
max-width: 100%;
max-height: 12em;
display: block;
margin: 0;
padding: 0;
}
dl {
margin: 0.5em 0;
}
dt {
display: inline;
margin: 0.5em 0.25em 0.5em 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;
right: 10px;
top: 0.9em;
padding: 0;
border: 0;
display: block;
font-size: 1.2em;
color: @color-search-font;
a:link *,
a:hover *,
a:visited *,
a:active * {
color: @color-search-font;
}
}
#pagination {
grid-area: pagination;
br {
clear: both;
}
}
#apis {
margin-top: 8px;
clear: both;
}
#backToTop {
border: 1px solid #ddd;
margin: 0;
padding: 0;
font-size: 1em;
box-shadow: 0 0 5px #ccc;
background: white;
position: fixed;
bottom: 8rem;
left: @results-width + @results-offset + (0.5 * @results-gap - 1.2em);
transition: opacity 0.5s;
opacity: 0;
a {
display: block;
margin: 0;
padding: 0.6em;
}
}
@media screen and (max-width: 80em) {
#main_preferences,
#main_about,
#main_stats {
margin: 2rem 0.5rem;
width: auto;
}
#infoboxes {
position: inherit;
max-width: inherit;
.infobox {
clear: both;
img {
float: left;
max-width: 10em;
margin: 0.5em 0.5em 0.5em 0;
}
}
}
#sidebar {
padding: 0;
float: none;
border: none;
width: auto;
input {
border: 0;
}
}
#apis {
display: none;
}
#search_url {
display: none;
}
.result {
border-bottom: 1px solid @color-result-top-border;
margin: 0;
padding-top: 8px;
padding-bottom: 6px;
h3 {
margin: 0 0 1px 0;
}
.thumbnail {
max-width: 98%;
}
.url {
span.url {
display: block;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
width: 100%;
}
a {
float: right;
padding: 0 0.5em;
}
}
.engines {
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: 2rem @results-tablet-offset 0 @results-tablet-offset;
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";
}
article[data-vim-selected]::before {
left: 0;
}
}
#main_results div#results.only_template_images {
margin: 2rem @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 {
left: auto;
right: 2rem;
}
#pagination {
margin-right: 4rem;
}
}
@media screen and (max-width: 50em) {
#main_results div#results {
grid-template-columns: 100%;
margin: 2rem 0 0 0;
}
article[data-vim-selected]::before {
display: none;
content: "";
}
#linkto_preferences {
display: none;
position: fixed !important;
top: 100px;
right: 0;
}
#sidebar {
margin: 0 5px 2px 5px;
}
#corrections,
#answers {
margin: 0 5px 1em 5px;
}
#results {
margin: 0;
padding: 0;
}
#pagination {
margin: 2rem 1rem 0 1rem !important;
}
.result {
padding: 8px 10px 6px 10px;
}
.result-images {
margin: 0;
padding: 0;
border: none;
}
}
@media screen and (max-width: 35em) {
.result-videos {
img.thumbnail {
float: none !important;
}
.content {
overflow: inherit;
}
}
}
pre code {
white-space: pre-wrap;
}