:root {
    --dp3-side: 260px;
}

html,
body {
    min-height: 100%;
}

body {
    margin: 0;
    background: #f4f6f9;
}

.dp3-login {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background:
        radial-gradient(
            circle at 20% 10%,
            rgba(13,110,253,.22),
            transparent 35%
        ),
        #111827;
    padding: 24px;
}

.dp3-login-card {
    width: 100%;
    max-width: 420px;
    border: 0;
    border-radius: 18px;
    box-shadow:
        0 30px 80px
        rgba(0,0,0,.35);
}

.dp3-logo {
    width: 52px;
    height: 52px;
    display: grid;
    place-items: center;
    border-radius: 15px;
    color: #fff;
    background:
        linear-gradient(
            135deg,
            #0d6efd,
            #6f42c1
        );
    font-size: 1.4rem;
}

.dp3-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: var(--dp3-side);
    background: #172033;
    color: #fff;
    padding: 18px 14px;
    z-index: 1030;
}

.dp3-sidebar .nav-link {
    color:
        rgba(255,255,255,.68);
    border-radius: 9px;
    padding: 10px 12px;
    margin: 2px 0;
}

.dp3-sidebar .nav-link:hover,
.dp3-sidebar .nav-link.active {
    color: #fff;
    background:
        rgba(255,255,255,.09);
}

.dp3-main {
    margin-left:
        var(--dp3-side);
    min-height: 100vh;
}

.dp3-topbar {
    height: 68px;
    position: sticky;
    top: 0;
    z-index: 1020;
    background: #fff;
    border-bottom:
        1px solid #dee2e6;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 26px;
}

.dp3-workspace {
    padding: 26px;
}

.dp3-card {
    border: 0;
    border-radius: 14px;
    box-shadow:
        0 2px 12px
        rgba(17,24,39,.06);
}

.dp3-stat {
    font-size: 1.8rem;
    font-weight: 700;
}

.dp3-empty {
    padding: 70px 20px;
    text-align: center;
}

.dp3-empty i {
    font-size: 2.5rem;
    color: #adb5bd;
}

.table
>
:not(caption)
>
*
>
* {
    padding: .85rem;
}

.dp3-project-title {
    font-weight: 600;
}

@media (
    max-width: 991.98px
) {

    .dp3-sidebar {
        display: none;
    }

    .dp3-main {
        margin-left: 0;
    }

    .dp3-workspace {
        padding: 16px;
    }
}