Испытание: первая раскладка [9/20]

Интересна критика ,мб можно оптимизировать не теряя читабельности и мне не нравиться
padding-left:9px; в .cards , мб я что-то упустил

html,
body {
     margin: 0;
     padding: 0;
     font-family: "Arial", sans-serif;
      }

body {
    min-width: 550px;
    min-height: 250px;
    padding: 10px;
}

.cards {
    width: 500px;
    padding-left:9px;
}

.cards li::before {
    font-family: "Courier", monospace;
}

ul li:not(.nine) {
    margin-left: -15px;
}

ul li:not(:nth-of-type(4)) {
    width: 36px;
    height: 54px;
}
ul li:nth-of-type(4) {
    margin-right: 30px;
    margin-left: 15px;
}

ul:not(:nth-of-type(4)) li:not(.nine).diamond {
    background-color: #0099ff;
}

ul li:not(.club).seven {
    background-color: #ff3300;
}
ul:last-of-type .eight,
ul:last-of-type .jack ,
ul:last-of-type .ace{
    background-color: #339933;
}

Честно говоря хотелось бы увидеть оригинал задумки как должно быть, твой код PAPAmidNIGHT у меня чето не хотел 100% выбивать,
не нра мне вот эта часть кода:

ul:last-of-type .eight,
ul:last-of-type .jack ,
ul:last-of-type .ace{
    background-color: #339933;
}

Хотелось бы поднять уровень свой без использования important и дублирования. наверно над по новой пройти уроки…
вот что у меня на сотку:



html,
body {
    margin: 0;
    padding: 0;
    font-family: "Arial", sans-serif;
}

body {
    min-width: 550px;
    min-height: 250px;
    padding: 10px;
}

.cards {
    width: 500px;
}

.cards li::before {
    font-family: "Courier", monospace;
}

ul li:not(.nine):not(.six) {
    margin-left: -15px;
}

ul li:not(.nine) {
    width: 36px;
    height: 54px;
}

ul li:nth-of-type(4) {
    margin-right: 30px;
    margin-left: 15px;
}

.seven:not(.club){
    background-color:#ff3300;
}
.diamond:not(.king):not(.nine):not(.seven){
    background-color:#0099ff;
}
ul:nth-of-type(4) li:nth-child(4) {
    background-color:#339933;
}
ul:nth-of-type(4) li:nth-child(7) {
    background-color:#339933 !important;
}
ul:last-of-type li:last-of-type {
    background-color:#339933;
}

li:not(:nth-of-type(1))
{ margin-left: -15px;
}

li:not(.nine) {
width: 36px;
height: 54px;
}

li.nine{
margin-right: 30px;
margin-left: 15px;
}

ul:not(:nth-of-type(4)) li.diamond:not(.nine){
background-color: #0099ff;
}

li:nth-of-type(2):not(.club) {
background-color: #ff3300;
}

ul:nth-of-type(4) li:nth-of-type(3n+3) {
background-color: #339933;
}