@font-face { font-family: 'Roboto Mono'; font-style: normal; font-weight: 400; src: local('Roboto Mono'), local('RobotoMono-Regular'), url('https://cdn.jsdelivr.net/npm/@hsjs/fonts@0.0.1/robotomono/v5/L0x5DF4xlVMF-BfR8bXMIjhLq3-cXbKD.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; } .relative { position: relative; } /* .absolute { */ /* position: absolute; */ /* } */ .border-left, .border-top, .border-bottom { position: relative; } %border { position: absolute; content: ''; height: 1px; width: 100%; transform: scaleY(0.5) translateZ(0); left: 0; right: 0; background: #555; } %border1 { position: absolute; content: ''; height: 100%; width: 1px; transform: scaleX(0.5) translateZ(0); top: 0; bottom: 0; background: #555; } .border-top::before { @extend %border; top: 0; } .border-bottom::after { @extend %border; bottom: 0; } .border-left::before { @extend %border1; left: 0; } *, *:before, *:after { box-sizing: border-box; } :root { --font-mono: 'Roboto Mono', Menlo, monospace; --font-normal: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, 'PingFang SC', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif; --color-focus-blue: #1a73e8; } body { font-family: 'Merriweather Sans', -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, 'PingFang SC', 'Microsoft YaHei', '微软雅黑', Arial, sans-serif; margin: 0; padding: 0; } body, body.dark { --color-background: #202020; --color-text: #ddd; --color-text-secondary: #ccc; --color-bg-sidebar: #2d2d30; --color-sb-active-row-bg: #494b4e; --color-input-bg: #2d2d30; --color-input-border: #3f3f3f; --color-toggle-bg: #353535; --color-toggle-selected: #181818; --color-icon: #c7c7c7; --color-btn-bg: #232323; --color-btn-fg: #bebebe; --color-bg-proxy-selected: #303030; --color-row-odd: #282828; --bg-modal: #1f1f20; } body.light { --color-background: #fbfbfb; --color-text: #222; --color-text-secondary: #646464; --color-bg-sidebar: #e7e7e7; --color-sb-active-row-bg: #d0d0d0; --color-input-bg: #ffffff; --color-input-border: #c0c0c0; --color-toggle-bg: #ffffff; --color-toggle-selected: #d7d7d7; --color-icon: #5b5b5b; --color-btn-bg: #f4f4f4; --color-btn-fg: #101010; --color-bg-proxy-selected: #cfcfcf; --color-row-odd: #f5f5f5; --bg-modal: #fbfbfb; } .flexCenter { display: flex; align-items: center; justify-content: center; } /* TODO remove fabgrp in component css files */ .fabgrp { position: fixed; z-index: 3; right: 20px; bottom: 20px; } .dot_loading, .dot_loading:before, .dot_loading:after { display: inline-block; vertical-align: middle; width: 6px; height: 6px; border-radius: 50%; background-color: rgba(0, 0, 0, 0.3); font-size: 0; } .dot_loading { position: relative; animation: dot2 1.6s step-start infinite; &:before { content: ''; position: absolute; left: -12px; background-color: rgba(0, 0, 0, 0.1); animation: dot1 1.6s step-start infinite; } &:after { content: ''; position: absolute; right: -12px; background-color: rgba(0, 0, 0, 0.5); animation: dot3 1.6s step-start infinite; } } @keyframes dot1 { 0%, 100% { background-color: rgba(0, 0, 0, 0.1); } 30% { background-color: rgba(0, 0, 0, 0.5); } 60% { background-color: rgba(0, 0, 0, 0.3); } } @keyframes dot2 { 0%, 100% { background-color: rgba(0, 0, 0, 0.3); } 30% { background-color: rgba(0, 0, 0, 0.1); } 60% { background-color: rgba(0, 0, 0, 0.5); } } @keyframes dot3 { 0%, 100% { background-color: rgba(0, 0, 0, 0.5); } 30% { background-color: rgba(0, 0, 0, 0.3); } 60% { background-color: rgba(0, 0, 0, 0.1); } } .dot_loading_white { background-color: rgba(255, 255, 255, 0.3); animation: dotw2 1.6s step-start infinite; &:before { background-color: rgba(255, 255, 255, 0.5); animation: dotw1 1.6s step-start infinite; } &:after { background-color: rgba(255, 255, 255, 0.1); animation: dotw3 1.6s step-start infinite; } } @keyframes dotw1 { 0%, 100% { background-color: rgba(255, 255, 255, 0.5); } 30% { background-color: rgba(255, 255, 255, 0.1); } 60% { background-color: rgba(255, 255, 255, 0.3); } } @keyframes dotw2 { 0%, 100% { background-color: rgba(255, 255, 255, 0.3); } 30% { background-color: rgba(255, 255, 255, 0.5); } 60% { background-color: rgba(255, 255, 255, 0.1); } } @keyframes dotw3 { 0%, 100% { background-color: rgba(255, 255, 255, 0.1); } 30% { background-color: rgba(255, 255, 255, 0.3); } 60% { background-color: rgba(255, 255, 255, 0.5); } }