/* Custom styles for LibreTranslate page */ :root { --pri-bg-color: #fff; --sec-bg-color: #f3f3f3; --code-bg-color: #fbfbfb; --border-color: #ccc; --fg-color: #000; --nav-fg-color: #fff; --accent-color: #1565c0; } @media (prefers-color-scheme: dark) { :root { --pri-bg-color: #111; --sec-bg-color: #222; --code-bg-color: #222; --border-color: #444; --fg-color: #fff; } .token.atrule, .token.attr-value, .token.keyword { color: #40b5e8; } .language-css .token.string, .style .token.string, .token.entity, .token.operator, .token.url { color: #eecfab; background: hsla(0,0%, 15%, .5); } .token.attr-name, .token.builtin, .token.char, .token.inserted, .token.selector, .token.string { color: #acd25f; } .token.boolean, .token.constant, .token.deleted, .token.number, .token.property, .token.symbol, .token.tag { color: #ff8bcc; } .token.class-name, .token.function { color: #ff7994; } } html, body, select { font-size: 16px; font-family: Arial, Helvetica, sans-serif !important; } body { background-color: var(--pri-bg-color); color: var(--fg-color); } nav, #nav, #nav-mobile, .locale-panel, .page-footer { background-color: var(--accent-color); } nav, nav .material-icons { color: var(--nav-fg-color); } .material-icons { color: var(--fg-color); } a:not(.noline) { text-decoration: underline; } #app { min-height: 80vh; } .component{ visibility: hidden; } #app.loaded .component{ visibility: visible; } h3.header { margin-bottom: 2.5rem; } .mb-0 { margin-bottom: 0 !important; } .mt-0 { margin-top: 0 !important; } .mb-1 { margin-bottom: 1rem; } .position-relative { position: relative; } .top-nav .locale-panel { position: absolute; top: 64px; height: 68px; right: 0; padding: 0 16px; width: 240px; border-bottom-left-radius: 4px; border-bottom-right-radius: 4px; box-shadow: 0 2px 2px 0 rgb(0 0 0 / 14%), 0 3px 1px -2px rgb(0 0 0 / 12%), 0px 4px 5px 0 rgb(0 0 0 / 20%); } .locale-panel{ display: none; } .change-language.clicked + .locale-panel{ display: block; } .locale-panel select { display: block; height: 32px; font-size: 14px; color: var(--fg-color); background-color: var(--pri-bg-color); border: none; } .locale-panel a{ line-height: normal; font-size: 90%; padding: 0; margin-top: 6px; text-align: right; text-decoration: none; height: 28px; } .locale-panel a:hover{ text-decoration: underline; } .locale-panel a i.material-icons{ display: inline-block; line-height: initial; line-height: 14px; font-size: 100%; position: relative; top: 2px; left: 2px; } .locale-panel a:hover{ background-color: transparent !important; } #nav-mobile .locale-panel{ color: rgba(0,0,0,0.87); padding: 0 32px; padding-top: 12px; } #nav-mobile a, #nav-mobile a i.material-icons{ color: #fff; } #nav-mobile .locale-panel a{ padding: 0; } #nav-mobile .locale-panel a i.material-icons{ float: none; } select { color: var(--fg-color); background-color: var(--pri-bg-color); } .language-select { display: inline-flex; align-items: center; justify-content: flex-start; } .language-select select { border: none; width: auto; cursor: pointer; font-weight: 600; text-decoration: underline; -webkit-appearance: none; appearance: none; padding: 0; text-indent: 0.01px; text-overflow: ""; margin: 0; margin-left: 6px; height: 2rem; line-height: inherit; outline: none; position: relative; } .language-select:after { content: ""; width: 0.5em; height: 0.5em; margin: 0 0 0.25rem -0.75rem; border: solid var(--fg-color); border-width: 0 2px 2px 0; display: inline-block; padding: 3px; transform: rotate(45deg); z-index: -1; } .btn-switch-language { color: black; margin-left: -1.5rem; margin-right: 1rem; } .textarea-container { margin-top: 0; position: relative; } .textarea-container .material-icons { color: #666; } .btn-delete-text { position: absolute; right: 1.5rem; top: 0.75rem; border: 0; background: none; padding: 0; cursor: pointer; color: #666; } .btn-delete-text:focus, .btn-action:focus { background: none !important; } .characters-limit-container { position: absolute; right: 2rem; bottom: 1rem; color: #666; pointer-events: none; } .actions { position: absolute; right: 1.25rem; bottom: 1rem; display: flex; } .btn-switch-type { background-color: var(--sec-bg-color); color: var(--fg-color); display: flex; align-items: center; margin: .5rem; } .btn-switch-type:focus { background-color: inherit; } .btn-switch-type:hover { background-color: var(--sec-bg-color); } .btn-switch-type.active { background-color: var(--accent-color); color: #FFF; } .btn-switch-type.active .material-icons { color: #FFF; } .file-dropzone { font-size: 1.1rem; background: var(--sec-bg-color); border: 1px solid var(--border-color); padding: 1rem 2rem 1rem 1.5rem; min-height: 220px; position: relative; } .dropzone-content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } .btn-action { display: flex; align-items: center; color: #666; font-size: 0.85rem; background: none; border: none; cursor: pointer; } .btn-blue { color: #1565C0; } .btn-action:disabled { color: #666; } .btn-action span { padding-right: 0.5rem; } .btn-action .material-icons { font-size: 1.35rem; } #translation-type-btns { display: flex; flex-wrap: wrap; justify-content: center; margin: -.5rem; } .btn-text { display: none; margin-left: 1em; } #translation-form { padding-top: 1em; } .progress { background-color: #f3f3f3; } .progress.translate { position: absolute; } .progress .indeterminate { background-color: steelblue; } .textarea-container textarea { font-size: 1.25rem; resize: none; color: var(--fg-color); background: var(--sec-bg-color); border: 1px solid var(--border-color); padding: 1rem 2rem 1rem 1.5rem; overflow-y: hidden; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; } .code-row-wrapper { display: flex; flex-wrap: wrap; } .code-box { display: flex; flex-direction: column; } .code { font-size: 90%; padding: 1rem 1.5rem; background: var(--code-bg-color); border: 1px solid var(--border-color); overflow: auto; font-family: monospace; min-height: 280px; width: 100%; overflow: auto; flex-grow: 1; } code[class*="language-"], pre[class*="language-"] { color: var(--fg-color); text-shadow: 0 1px var(--pri-bg-color); } .page-footer .footer-copyright { justify-content: center; padding: 0.5rem 1rem; } #logo-container { height: 100%; } .logo { height: 32px; } .brand-logo { text-decoration: none; } .sidenav-trigger { background-color: transparent; border: none; color: white; } #download-btn-wrapper { display: flex; justify-content: center; margin: 2em 0; } #download-btn { display: flex; align-items: center; text-decoration: none; } #download-btn i{ color: #fff; } .card-content { background-color: var(--pri-bg-color); } .card-stacked, .card-stacked .card-content { background-color: var(--sec-bg-color) } @media (min-width: 280px) { .btn-text { display: inline; } } @media (max-width: 760px) { .language-select select { text-align: center; margin: auto; padding: 0; } .language-select:after { content: none; } .language-select span { display: none; } } @media (min-width: 993px) { nav button.sidenav-trigger { display: none; } }