@custom-media --viewport-desktop (width >=62.5rem); @custom-media --viewport-mobile (width < 62.5rem); :root { --main-width: 1000px; --main-background-color: #fdfdfe; --background-color: #f8f8f8; --border-color: #eee; --text-background-color: #fff; --text-color: #363636; --link-color: #3c77aa; --dimmed-link-color: #88958d; } @media (prefers-color-scheme: dark) { :root { --main-background-color: #222; --background-color: #333; --text-background-color: #383838; --border-color: #4c4c4c; --text-color: #ccc; --link-color: #c38855; --dimmed-link-color: #88958d; } } * { box-sizing: border-box; } html, body, div, h1, h2, ul, li, p, form, input, textarea, pre { margin: 0; padding: 0; } html, body { width: 100%; height: 100%; } body { background: var(--main-background-color); text-size-adjust: 100%; word-break: break-word; color: var(--text-color); line-height: 1.4; text-rendering: optimizeLegibility; -webkit-overflow-scrolling: touch; } html, input, textarea, button { font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; -webkit-font-smoothing: subpixel-antialiased; } input, textarea, button { font-size: 1em; } h1, h2 { font-weight: normal; padding: 24px; } ul { list-style-type: none; } legend { color: var(--dimmed-link-color); margin: 0; padding: 12px; width: 100%; } fieldset { border: 0; padding: 12px; margin: 0; min-width: 0; } body:not(:-moz-handler-blocked) fieldset { display: table-cell; } a { color: var(--link-color); text-decoration: none; } img, hr { border: none; } #app { display: grid; grid-template-areas: "header" "content" "footer"; grid-template-columns: 100%; grid-template-rows: auto 1fr auto; min-height: 100%; max-height: 100%; } #header { grid-area: header; background: var(--text-background-color); border-bottom: 1px solid var(--border-color); transition: transform 0.2s; overflow-x: hidden; } .header--hidden { transform: translateY(-100%); } #header_wrapper, .footer_container { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; } #sidebar { grid-area: footer; display: flex; flex-direction: row; justify-content: space-around; border-top: 1px solid var(--border-color); } .nav_content { padding: 10px; } #content { grid-area: content; margin-top: 12px; overflow-y: scroll; } #footer { display: none; background: var(--background-color); border-top: 1px solid #ccc; color: var(--text-color); padding: 10px; transition: margin-left 0.4s; overflow-x: hidden; } .desktop { display: none; } .card { padding: 6px 24px; } #logo { height: 36px; width: 110px; } #logo a { background: url("./ui/assets/logo@2x.png") no-repeat; background-size: cover; border: 0; display: block; height: 36px; overflow: hidden; text-indent: 100%; white-space: nowrap; width: 110px; } #ctitle { display: flex; } #ctitle:first-child { margin-right: 5px; vertical-align: middle; max-width: 48px; max-height: 48px; } #global { display: flex; } .l { display: flex; flex-direction: row; flex-wrap: wrap; } #global a, #ctitle a { display: flex; align-items: center; } #global a { color: var(--dimmed-link-color); padding: 14px 16px; } #sidebar > a, .l > a { color: var(--link-color); display: flex; padding: 14px; align-items: center; vertical-align: middle; } #sidebar > a:hover { background-color: var(--background-color); border-top: 2px solid #ff339a; cursor: pointer; } #ctitle a { padding: 2px 20px; } #global a, #ctitle a, .l a, .msg-button { border-bottom: 2px solid transparent; } #global a:hover, #ctitle a:hover, .l a:hover, .msg-button:hover { background-color: var(--background-color); border-bottom: 2px solid #ff339a; cursor: pointer; } .icon { vertical-align: middle; } #search input { background: var(--background-color); border: 1px solid #ccc; outline: none !important; padding: 4px; -webkit-appearance: none; border-radius: 0; } .lds-ripple { display: inline-block; position: relative; width: 64px; height: 64px; } .lds-ripple div { position: absolute; border: 4px solid #ff339a; opacity: 1; border-radius: 50%; animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; } .lds-ripple div:nth-child(2) { animation-delay: -0.5s; } @keyframes lds-ripple { 0% { top: 28px; left: 28px; width: 0; height: 0; opacity: 1; } 100% { top: -1px; left: -1px; width: 58px; height: 58px; opacity: 0; } } .page { background: var(--main-background-color); border: 1px solid var(--border-color); margin-bottom: 12px; padding: 6px; text-align: center; } .page a { color: var(--dimmed-link-color); } ::-webkit-scrollbar { width: 6px; } /* this targets the default scrollbar (compulsory) */ ::-webkit-scrollbar-track { background-color: var(--main-background-color); } /* the new scrollbar will have a flat appearance with the set background color */ ::-webkit-scrollbar-thumb { background-color: #ff339a; } /* this will style the thumb, ignoring the track */ ::-webkit-scrollbar-button { background-color: var(--border-color); } /* optionally, you can style the top and the bottom buttons (left and right for horizontal bars) */ ::-webkit-scrollbar-corner { background-color: black; } @media (--viewport-mobile) { #content { margin-bottom: 12px; } #sidebar { background: var(--text-background-color); } } @media (--viewport-desktop) { #app { grid-template-areas: "header header header header"". footer content ."; grid-template-columns: auto 240px 760px auto; grid-template-rows: auto 1fr; } #header_wrapper, .footer_container { margin: 0 auto; width: var(--main-width); } .desktop { display: block; } .mobile { display: none; } #content { margin-bottom: 12px; } #sidebar { flex-direction: column; justify-content: initial; border-top: initial; margin: 12px; border: 1px solid var(--border-color); } #sidebar a, .l a { border-right: 2px solid transparent; } #sidebar > a:hover { border-top: initial; border-right: 2px solid #ff339a; } }