metasearch/src/web/assets/style.css

376 lines
6.5 KiB
CSS
Raw Normal View History

2024-04-03 02:33:14 +00:00
:root {
/* body background */
--bg-1: #0b0e14;
/* background of the content */
--bg-2: #0d1017;
/* input suggestions background */
--bg-3: #0f131a;
/* mostly borders */
--bg-4: #234;
/* main text color */
--fg-1: #bfbdb6;
/* search result description */
--fg-2: #bba;
--fg-3: #998;
/* focus outline */
--accent: #e6b450;
--link: #29e;
--link-visited: #92e;
--positive: #7fd962;
--syntax-string: #aad94c;
--syntax-special: #e6b673;
--syntax-constant: #d2a6ff;
--syntax-comment: #acb6bf8c;
2024-04-13 05:52:28 +00:00
--syntax-func: #ffb454;
2024-04-03 02:33:14 +00:00
}
2023-12-20 08:03:29 +00:00
html {
height: 100%;
}
2023-12-20 06:18:09 +00:00
body {
font-family: monospace;
2024-04-03 02:33:14 +00:00
background-color: var(--bg-1);
color: var(--fg-1);
2023-12-20 06:18:09 +00:00
margin: 0;
line-height: 1.2;
2023-12-20 08:03:29 +00:00
height: 100%;
2023-12-20 06:18:09 +00:00
}
.results-container {
/* enough space for the infobox */
max-width: 73.5rem;
margin: 0 auto;
word-break: break-word;
}
2023-12-20 06:18:09 +00:00
main {
max-width: 40rem;
/* margin: 0 0 0 10rem; */
2023-12-20 06:18:09 +00:00
padding: 1rem 0.5rem;
2024-04-03 02:33:14 +00:00
background-color: var(--bg-2);
min-height: 100%;
}
2023-12-21 08:11:21 +00:00
@media screen and (max-width: 74rem) {
/* small screens */
.results-container {
margin: 0 auto;
max-width: 40rem;
}
2023-12-20 06:18:09 +00:00
}
input {
font-family: monospace;
2024-04-03 02:33:14 +00:00
background-color: var(--bg-2);
color: var(--fg-1);
border: 1px solid var(--bg-4);
2023-12-20 06:18:09 +00:00
font-size: inherit;
padding: 0.25rem;
}
2023-12-21 08:11:21 +00:00
input:focus-visible {
2023-12-21 06:19:52 +00:00
outline: none;
2024-04-03 02:33:14 +00:00
border-color: var(--accent);
2023-12-21 06:19:52 +00:00
}
2023-12-21 08:11:21 +00:00
:focus-visible {
2024-04-03 02:33:14 +00:00
outline: 1px solid var(--accent);
2023-12-21 06:19:52 +00:00
}
2023-12-20 06:18:09 +00:00
input[type="submit"] {
cursor: pointer;
}
a {
2024-04-03 02:33:14 +00:00
color: var(--link);
text-decoration: none;
}
a:visited {
2024-04-03 02:33:14 +00:00
color: var(--link-visited);
}
2023-12-21 09:00:18 +00:00
pre {
white-space: pre-wrap;
}
2024-01-03 07:48:02 +00:00
blockquote {
margin: 0;
padding-left: 0.5em;
2024-04-03 02:33:14 +00:00
border-left: 0.25em solid var(--bg-4);
2024-01-03 07:48:02 +00:00
}
2023-12-20 06:18:09 +00:00
2023-12-20 08:03:29 +00:00
/* index page */
.main-container {
display: flex;
flex-direction: column;
min-height: 100%;
2023-12-20 08:03:29 +00:00
height: 100%;
justify-content: center;
margin: 0 auto;
2023-12-21 08:11:21 +00:00
padding: 0 0.5em;
2023-12-20 08:03:29 +00:00
text-align: center;
2023-12-21 08:11:21 +00:00
max-width: 30em;
2023-12-20 08:03:29 +00:00
}
h1 {
margin-top: 0;
}
/* header */
2023-12-20 06:18:09 +00:00
.search-form {
margin-bottom: 1rem;
2023-12-21 05:43:58 +00:00
display: flex;
gap: 0.5rem;
2023-12-20 06:18:09 +00:00
}
2023-12-20 09:28:38 +00:00
#search-input {
2023-12-21 05:43:58 +00:00
max-width: 30em;
flex: 1;
2023-12-20 08:03:29 +00:00
}
2023-12-21 08:11:21 +00:00
#search-input-suggestions {
position: absolute;
text-align: left;
margin-top: calc(1.9em + 1px);
2024-04-03 02:33:14 +00:00
background: var(--bg-3);
2023-12-21 08:11:21 +00:00
padding: 0.1em 0 0.3em 0;
2024-04-03 02:33:14 +00:00
border: 1px solid var(--bg-4);
2023-12-21 08:11:21 +00:00
border-top: transparent;
z-index: 10;
2023-12-21 08:11:21 +00:00
}
.search-input-suggestion {
cursor: pointer;
padding: 0.3em 0.3em;
2023-12-31 07:19:57 +00:00
white-space: nowrap;
2023-12-21 08:11:21 +00:00
}
2023-12-31 07:19:57 +00:00
.search-input-suggestion.focused,
.search-input-suggestion:hover {
2024-04-03 02:33:14 +00:00
background: var(--bg-4);
2023-12-21 08:11:21 +00:00
}
2023-12-20 06:18:09 +00:00
2023-12-20 08:03:29 +00:00
/* search result */
2023-12-20 06:18:09 +00:00
.search-result {
padding-top: 1rem;
2024-04-03 02:33:14 +00:00
border-top: 1px solid var(--bg-4);
2023-12-20 08:03:29 +00:00
font-size: 1rem;
2023-12-20 06:18:09 +00:00
}
.search-result-anchor {
2023-12-20 08:03:29 +00:00
display: block;
2023-12-31 07:19:57 +00:00
word-break: break-all;
2023-12-20 06:18:09 +00:00
}
.search-result-url {
margin: 0;
font-size: 0.8rem;
2024-04-03 02:33:14 +00:00
color: var(--fg-3);
2023-12-20 06:18:09 +00:00
}
.search-result-title {
margin: 0;
2023-12-20 08:03:29 +00:00
font-size: 1rem;
2023-12-20 06:18:09 +00:00
}
.search-result-description {
margin: 0;
2023-12-20 08:03:29 +00:00
font-size: 0.8em;
2024-04-03 02:33:14 +00:00
color: var(--fg-2);
2023-12-20 06:18:09 +00:00
}
2023-12-20 08:03:29 +00:00
/* engine list */
.engine-list {
2023-12-20 06:18:09 +00:00
opacity: 0.5;
2023-12-20 08:03:29 +00:00
justify-content: end;
2023-12-20 06:18:09 +00:00
display: flex;
gap: 0.5em;
2023-12-20 08:03:29 +00:00
font-size: 0.8rem;
2023-12-20 06:18:09 +00:00
}
2023-12-20 08:03:29 +00:00
/* featured snippet */
.featured-snippet {
margin-bottom: 1rem;
2024-04-03 02:33:14 +00:00
border: 1px solid var(--bg-4);
2023-12-20 08:03:29 +00:00
padding: 0.5rem;
font-size: 1.2rem;
}
.featured-snippet .search-result-description {
margin-bottom: 1rem;
}
/* progress update */
2023-12-20 06:18:09 +00:00
.progress-updates {
margin-bottom: 1rem;
2024-04-03 02:33:14 +00:00
border: 1px solid var(--bg-4);
2023-12-20 06:18:09 +00:00
padding: 0.5rem;
2023-12-20 08:03:29 +00:00
min-height: 5em;
2023-12-20 06:18:09 +00:00
}
.progress-update {
margin: 0;
white-space: pre-wrap;
2023-12-20 08:03:29 +00:00
}
.progress-update-time {
opacity: 0.5;
2023-12-20 06:18:09 +00:00
}
2023-12-20 09:28:38 +00:00
.progress-update-done {
2024-04-03 02:33:14 +00:00
color: var(--positive);
2023-12-20 09:28:38 +00:00
font-weight: bold;
}
2023-12-20 23:17:46 +00:00
/* answer */
.answer {
margin-bottom: 1rem;
2024-04-03 02:33:14 +00:00
border: 1px solid var(--bg-4);
2023-12-20 23:17:46 +00:00
padding: 0.5rem;
2023-12-31 07:19:57 +00:00
word-break: break-word;
2023-12-20 23:17:46 +00:00
}
.answer h3 {
margin: 0;
font-weight: normal;
font-size: 1.2rem;
}
2024-01-15 01:07:53 +00:00
/* styles that are somewhat answer-specific but get reused across other styles sometimes */
.answer-query {
2023-12-20 23:17:46 +00:00
margin: 0;
opacity: 0.5;
}
2024-01-15 01:07:53 +00:00
.answer-comment {
2024-04-03 02:33:14 +00:00
color: var(--syntax-comment);
2024-01-15 01:07:53 +00:00
font-weight: normal;
}
/* styles for specific answers */
2023-12-20 23:17:46 +00:00
.answer-calc-constant {
2024-04-03 02:33:14 +00:00
color: var(--syntax-constant);
white-space: pre-wrap;
2023-12-20 23:17:46 +00:00
}
2023-12-20 23:45:16 +00:00
.answer-calc-string {
2024-04-03 02:33:14 +00:00
color: var(--syntax-string);
2023-12-20 23:45:16 +00:00
}
.answer-calc-special {
2024-04-03 02:33:14 +00:00
color: var(--syntax-special);
2023-12-20 23:45:16 +00:00
}
2024-04-13 05:52:28 +00:00
.answer-calc-func {
color: var(--syntax-func);
}
2024-04-04 04:51:19 +00:00
.answer-dictionary-word,
.answer-thesaurus-word {
2024-01-03 07:48:02 +00:00
margin-top: 0;
}
.answer-dictionary-part-of-speech {
font-style: italic;
opacity: 0.8;
}
.answer-dictionary-example {
margin-bottom: 0.5em;
}
2024-04-04 04:51:19 +00:00
.answer-thesaurus-item:not(:last-child) {
border-bottom: 1px solid var(--bg-4);
margin-bottom: 1rem;
padding-bottom: 1rem;
}
.answer-thesaurus-word-description {
font-style: italic;
opacity: 0.8;
}
.answer-thesaurus-part-of-speech {
font-weight: bold;
}
.answer-thesaurus-as-in {
font-style: italic;
}
h3.answer-thesaurus-category-title {
margin-top: 0.5rem;
}
.answer-thesaurus-strongest {
opacity: 1;
}
.answer-thesaurus-strong {
opacity: 0.8;
}
.answer-thesaurus-weak {
opacity: 0.6;
}
.answer-thesaurus-list {
margin: 0;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 0.8em;
list-style-type: none;
}
.answer-thesaurus-list a {
text-decoration: underline;
}
.answer-notepad {
width: calc( 100% - 4px );
height: fit-content;
overflow-y: show;
background-color: transparent;
color: white;
border: none;
outline: none;
min-height: 4em;
font-size: 12px;
resize: none;
}
2024-04-04 04:51:19 +00:00
/* infobox */
.infobox {
margin-bottom: 1rem;
2024-04-03 02:33:14 +00:00
border: 1px solid var(--bg-4);
padding: 0.5rem;
position: absolute;
top: 3.5rem;
max-width: 30rem;
margin-left: 42rem;
}
2023-12-21 08:11:21 +00:00
@media screen and (max-width: 74rem) {
/* small screens */
.infobox {
position: static;
margin: 0;
max-width: unset;
margin-bottom: 1rem;
}
.postsearch-infobox {
/* displaying these properly is too hard so don't */
display: none;
}
}
.infobox h2 {
margin-top: 0;
margin-bottom: 0.5em;
}
.infobox p {
margin: 0;
}
2023-12-21 09:57:49 +00:00
.infobox pre {
2024-04-03 02:33:14 +00:00
border: 1px solid var(--bg-4);
2023-12-21 06:19:52 +00:00
padding: 0.5rem;
display: block;
2023-12-21 09:57:49 +00:00
}
.infobox pre > code {
2023-12-21 06:19:52 +00:00
font-weight: normal;
}
2023-12-21 09:57:49 +00:00
.infobox code {
2023-12-21 06:19:52 +00:00
font-weight: bold;
}
2023-12-31 06:15:18 +00:00
.infobox img {
max-width: 100%;
}
2023-12-21 09:57:49 +00:00
.infobox-docs_rs-version {
opacity: 0.5;
font-weight: normal;
font-size: 0.8em;
}
.infobox-github-readme .markdown-alert {
padding-left: 0.5em;
2024-04-03 02:33:14 +00:00
border-left: 0.25em solid var(--bg-4);
}
.infobox-github-readme .markdown-alert-title {
font-weight: bold;
}
.postsearch-infobox p {
margin-bottom: 1em;
}
.infobox-minecraft_wiki-article > .notaninfobox {
display: none !important;
}
.noexcerpt, .navigation-not-searchable {
display: none !important;
}
.mcw-mainpage-icon {
display: inline-block;
}