:root{
    --color-primary: #751028;
    --color-danger: #9e0918;
    --color-success: #28a745;
    --color-warning: #ffae0d;
    --color-white: #fff;
    --color-info-dark: #7d8da1;
    --color-info-light: #dce1eb;
    --color-dark: #363949;
    --color-light: rgba(132,139,200,0.18);
    --color-primary-variant: #b42645;
    --color-dark-variant: #677483;
    --color-background: #f6f6f9;
    --color-btn-bg: #28a745;
    --color-btn-hover: #218838;

    --card-border-radius: 1rem;
    --border-radius-1: 0.4rem;
    --border-radius-2: 0.8rem;
    --border-radius-3: 1.2rem;

    --card-padding: 1.8rem;
    --padding-1: 1.2rem;

    --box-shadow: 0 2rem 3rem var(--color-light)
}

* {
    margin: 0;
    padding: 0;
    outline: 0;
    border: 0;
    text-decoration: none;
    list-style: none;
    box-sizing: border-box;
}

html {
    font-size: 14px;
}

body {
    width: 100vw;
    height: 100vh;
    font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
    font-size: 0.88rem;
    background: var(--color-background);
    overflow-x: hidden;
    color: var(--color-dark);
}

.container {
    width: 100%;
    height: 100%;
    display: grid;
    grid-template-columns: 20rem auto;
}

/* ========== GENERAL STYLES ========== */

a {
    color: var(--color-dark);
}

img {
    display: block;
    width: 100%;
}

h1 {
    font-weight: 800;
    font-size: 2.4rem;
}

h2 {
    font-size: 1.6rem;
}

h3 {
    font-size: 1.2rem;
}

h4 {
    font-size: 0.88rem;
}

h5 {
    font-size: 0.75--rem;
}

small {
    font-size: 0.30rem;
}

.text-muted {
    color: var(--color-info-dark);
}

p {
    color: var(--color-dark-variant);
}

b {
    color: var(--color-dark);
}

.primary {
    color: var(--color-primary);
}

.success {
    color: var(--color-success);
}

.warning {
    color: var(--color-warning);
}

.danger {
    color: var(--color-danger);
}


aside {
    background: var(--color-dark);
    padding-top: 1rem;
    width: 20rem;
    height: 100%;
    position:fixed;
}


.sidebar h1 {
    color: var(--color-white);
    margin-bottom: 2rem;
    padding-left: 2rem;
}

.sidebar a {
    color: white;
    text-decoration: none;
    display: block;
    padding: 10px;
    margin: 5px 0;
    transition: background 0.3s;
}

.sidebar h3 {
    color: var(--color-white);
    padding-left: 2rem;
}

main {
    width: 100%;
    grid-column-start: 2;
}

.content {
    padding:0px 20px;
    flex: 1;
}

header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--color-primary);
    color: white;
    padding: 10px 20px;
    
}