Skip to content

Typing.com Dark Mode by retro

Screenshot of Typing.com Dark Mode

Details

Authorretro

LicenseNo License

Categoryuserstyles

Created

Updated

Size11 kB

Statistics

Learn how we calculate statistics in the FAQ.

Failed to fetch stats.

Description

A sitewide dark mode experience for Typing.com!

Notes

This style features a dark keyboard, typing-card, lesson overview and more! Any issues or funky colouring, let me know and I'll amend as necessary, else keep an eye for any updates! :) Enjoy and Type away~!

Release Version - 1.0.0
Release! There may be certain elements or pages that are yet to be fully re-coloured, but the main typing pages are pretty much done.

Source code

Source code has over 10K characters, so we truncated it. You can inspect the full source code on install link.
/* ==UserStyle==
@name           Typing.com Dark Mode
@namespace      Typing.com
@version        1.0.0
@description    A full sitewide dark mode experience for Typing.com. Features a dark keyboard, typing-card, lesson overview and more! Any issues or funky colouring, let me know and I'll ammend as necessary, else keep an eye for any updates! :) Enjoy and Type away~!
@author         retro 
==/UserStyle== */

@-moz-document domain("typing.com") {
html {
    color: #4a4a4a;
    font-family: museo-sans-rounded,sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.5;
}
body {
    background: #212121;
    min-height: 100% !important;
}
h1, h2, h3, h4 {
    color: #fff !important;
}
dl, ol, p, ul {
    color: #fff !important;
}
.bg {
    background: #262626 !important;
}
.header {
    background-color: #212121;
    border-bottom: 1px solid #212122 !important;
}
.wrapper {
    background: #212121;
    border-right: 5px solid #212121;
    border-left: 5px solid #212121;
    box-shadow: 0 0 25px rgba(0,0,0,.1);
    display: flex;
    flex-flow: column nowrap;
    max-width: 1800px;
    margin: 0 auto;
    min-height: 100vh;
    position: relative !important;
}
.hero {
    background-image: linear-gradient(to bottom,#212121,#212121);
    background-color: #3295db;
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center !important;
}
.link {
    color:#fff !important;
}
.fixedNav {
    background: #212121;
    box-shadow: 0 10px 30px rgba(0,0,0,.1);
    box-sizing: border-box;
    left: 0;
    position: fixed;
    top: 0;
    transition: all .25s ease-in-out;
    transform: translateY(-200%);
    width: 100%;
    z-index: 9998 !important;
}
.navLink {
    color: #fff !important;
    /*font-size: 12px;*/
    /*margin-top: 10px;*/
    position: relative;
}
.navLink.is-active {
    color: #eac435 !important;
    font-family: rubik,sans-serif;
    text-shadow: none;
}
.navLink:active, .navLink:focus, .navLink:hover {
    color: #ddb31a !important;
}
.navLink.is-active:before {
    background-color: #fff !important;
    height: 2px;
}
.navLink.is-active.navLink--b {
    color: #fff !important;
}
.navLink--b {
    color: #fff !important;
}
.dropdown--a .dropdown-link:hover {
    background: #565656 !important;
}
.dropdown--a.is-active, .dropdown--a:not(.dropdown--js):hover {
    background: #2e2e2e;
    color: #4a4a4a;
    transition: all .25s ease-in-out;
}
.dropdown--a.dropdown--r .dropdown-items {
    border-top-right-radius: 0;
    border-top-left-radius: 10px;
    background: #424242 !important;
}
.dropdown--b {
    border-radius: 10px 10px 0 0;
    border: 1px solid transparent;
    color: #fff;
    padding: 5px !important;
}
.popdown-items {
    background-color: #424242 !important;
    border: 1px solid #343434 !important;
    border-radius: 5px;
    box-shadow: 0 10px 30px rgb(0 0 0 / 10%);
    display: none;
    min-width: 140px;
    opacity: 1;
    -webkit-padding-start: 0;
    padding-inline-start: 0;
    top: calc(100% + 10px);
    transition: all .25s ease-in-out;
    z-index: 5;
}
.path {
    background: #2f2f2f !important;
}
.is-active {
    background-color: #4e4e4e !important;
    font-weight: bold;
}
.path-title {
    font-size: 16px;
    margin-bottom: 0;
    color: #fff !important;
}
.paths-heading {
    /*display: none;*/
    margin-bottom: 10px;
    margin-top: 30px;
    color: #fff !important;
}
.path.is-active {
    /*background-color: #3295db !important;*/
    border-radius: 10px 0 0 10px;
    border-color: transparent;
    box-shadow: 0 10px 30px rgba(0,0,0,.1);
    margin-left: -10px;
    margin-right: -20px;
    padding-right: 50px;
    position: relative;
    z-index: 2 !important;
}
.lesson.is-complete .lesson-stat {
    color: #46c7c1 !important;
}
.lesson.is-complete .lesson-btn {
    background-color: #fff;
    color: #000000;
}
.star--circle text {
    fill: #fff !important;
}
.tss {
    font-size: 14px;
    color: #cdcdcd !important;
}
.progress--b .progress-lt {
    background: #484848 !important;
    transition: none;
}
.split-cell {
    color: #fff !important;
    font-weight: bold !important;
}
.chunks--screen .chunk-text {
    color: rgb(255 255 255);
    font-size: 12px;
}
.bubble--bg .bubble-arrow {
    background-position-y: -6px;
}
.bubble {
    background: #484848 !important;
}
.progress--a .progress-lt {
    background: #3295db;
    color: #fff;
    transition: all .25s ease-in-out !important;
}
.progress--a {
    background: #2f2f2f;
    border: 1px solid #d5d5d5;
    transition: all .25s ease-in-out !important;
}
.lesson {
    background: #383838 !important;
    border-radius: 10px;
    border: 1px solid #383838 !important;
    counter-increment: lesson;
    margin-bottom: 20px;
    position: relative;
    padding: 0 20px 20px !important;
}
.btn--b {
    background: #3295db;
    border-radius: 5px;
    color: #fff !important;
}
.btn--a {
    background: #fff !important;
    border-radius: 5px;
    color: #000 !important;
}
.chunk {
    background: #6a6969 !important;
    flex: 1;
    margin-right: 2px;
    transition: all .25s ease-in-out;
    text-align: center;
    width: 100% !important;
}
.chunk.is-complete {
    background: #3295db !important;
}

/* Support Pop-Up */
.modal-content {
    margin-left: auto;
    margin-right: auto;
    max-height: calc(var(--vh, 1vh)*100 - 260px);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 20px 20px 0;
    background-color: #2f2f2f !important;
}
.flash--subdued {
    background-color: #1e1e1e;
    color: #266260;
}
.search-input.search--fw {
    width: calc(100% - 95px);
    background: #2f2f2f;
}
.modal-title {
    border-bottom: 1px solid #5e5e5e;
    margin-bottom: 0;
    padding-top: 20px;
    padding-bottom: 20px;
    background: #2f2f2f !important;
    padding-left: 20px;
}
.row {
    /*overflow: hidden;*/
    padding-left: 0px;
    padding-right: 0px;
}

/* language Settings Pop-Up */
.modal-footer {
    border-top: 1px solid #2f2f2f;
    padding-top: 20px;
    padding-bottom: 20px;
    background: #2F2F2F;
}

/* Typing Goal Circle */
.goal-radial-progress {
    box-shadow: 0 5px 15px rgb(0 0 0 / 5%);
    border-radius: 9999px;
    fill: #000000cf !important;
    height: 100%;
    left: 0;
    overflow: visible;
    position: absolute;
    top: 0;
    transition: all .25s ease-in-out;
    width: 100%;
}
.goal-progress-text {
    color: #f7f7f7 !important;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}
.goal-info {
    color: #cbcbcb !important;
    cursor: default;
    font-size: 14px;
    line-height: 1;
}
.mtxs {
    margin-top: 10px;
    color: #fff !important;
}

/* Progress Bar */
.progress--a .progress--total .progress-lt {
    background: #eac435 !important;
}

/* Log-In Page */
.to-blue-500 {
    --tw-gradient-to: #212121;
}
.from-blue-300 {
    --tw-gradient-from: #141414 !important;
    --tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to,rgba(144,205,244,0));
}
.session-content {
    display: flex;
    flex: 1;
    position: relative;
    flex-direction: column;
    justify-content: space-between;
    background: #2f2f2f !important;
}
.sessionInput-label {
    font-size: 16px;
    font-weight: 500;
    color: #fff !important;
}
.btn--microsoft {
    background-color: #575cf1;
    border-color: #575cf1;
}

/* Home Page */
.bg-white {
    --tw-bg-opacity: 1;
    /* background-color: rgba(255,255,255,var(--tw-bg-opacity)); */
    background-color: #212121 !important;
}
.bg-gray-50 {
    --tw-bg-opacity: 1;
    /* background-color: rgba(249,249,250,var(--tw-bg-opacity)); */
}
.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    background: #212121 !important;
}
.legacy .bg--gxxlt {
    background: #1c1c1c !important;
}

/* Typing Card */
.screen-card {
    border-radius: 10px;
    background-color: #2a2a2a !important;
    margin-bottom: 20px;
    position: relative;
    padding: 5px 10px;
}
.screenBasic--1 .screenBasic-lines {
    position: relative;
    background: #2A2A2A !important;
}
.screenBasic-lines {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    will-change: transform;
    /*background-color: #2a2a2a;*/
    background: #2a2a2a;
    background-size: 100% 43px !important;
}
.screenBasic-letter {
    border-bottom: 3px solid transparent;
    display: inline-block;
    line-height: 1.5;
    margin: 5px 2px 5px 0;
    min-width: 14px !important;
    color: #5a5a5a; /* Letter when not typed, do not set to important else it will override active letter colouring. */
}
.screenBasic-letter.is-active {
    background-color: transparent;
    color: #009aff; /* Letter when active */
    border-color: #08629d;
    border-radius: 0;
}
.letter.is-right {
    /*background: #a5fff3;*/
    background: #212121; /* Nice dark grey color. Optional. */
    color: #317267;
    transition: color .12s ease-in-out;
}
.screenBasic-letter.is-wrong {
    /*background-color: #fddce2;*/
    background-color: #0e0e0e; /* Nice black color. Optional. */
    color: #ab1a34;
}
.key.is-active {
    background-color: #00aaa4;
    /*border-color: #1ab3ad #00aaa4 #009994; Original colours. Change colour to change border colours of the active key! */
    border-color: #fff #fff #fff;
    color: #fff;
}
.keyboard--a {
    background-color: transparent;
    border: 1px solid transparent !important;
}
.key--a {
    background-color: #0e0e0e;
    border-bottom: 1px solid #000;
    border-top: 1px solid #000;
    color: #fff !important;
}
.key--special .key-label {
    color: ...

Reviews

No reviews yet.