:root {
    /* =========================================
       GLOBAL BRAND COLORS
       Future mein sirf yahan colors change karein
       ========================================= */

    --primary: #051F44;
    --primary-rgb: 5, 31, 68;

    --accent: #8B0000;
    --accent-rgb: 233, 31, 37;

    --white: #ffffff;
    --black: #000000;
}


/* =========================================
   GENERAL
   ========================================= */

html {
    max-width: 100vw;
    overflow-x: hidden;
}

*:not(.dropdown-menu) {
    transition: all 0.3s ease;
}

body {
    overflow-x: hidden;
}

body > * {
    transform: translateX(0);
}

body.active > * {
    transform: translateX(300px);
}

body.active #contentArea {
    opacity: 0.5 !important;
}

#contentArea {
    overflow-x: hidden;
    overflow-y: overlay;
}


/* =========================================
   NAVIGATION
   ========================================= */

nav {
    position: fixed;
    top: 0;
    left: -300px;
    width: 300px;
    height: 100vh;
    overflow-y: auto;
    background: white;
    box-shadow: -50px 50px 50px rgba(0, 0, 0, 0.5);
    z-index: 100;
}

body.active > nav {
    box-shadow: -20px 50px 50px rgba(0, 0, 0, 0.5);
}

#navTrigger {
    cursor: pointer;
}

header {
    box-shadow: 0px -20px 50px rgba(0, 0, 0, 0.5);
    clip-path: polygon(
        0% 0%,
        100% 0%,
        100% 100vh,
        0% 100vh,
        0% 0%
    );
}

.shadow {
    box-shadow: 0px 20px 27px 0 rgba(0, 0, 0, 0.05);
    z-index: 1;
}


/* =========================================
   NAVIGATION LINKS
   ========================================= */

nav * {
    transition: none !important;
}

nav label {
    line-height: 50px;
    padding: 0 15px;
}

nav a {
    line-height: 50px;
    padding: 0 15px;
    margin: 0;
    text-decoration: none !important;
    color: inherit !important;
    display: block;
}

nav a i {
    font-size: 21px;
    width: 30px;
}

nav a * {
    vertical-align: middle;
}

nav a:hover {
    color: var(--primary) !important;
    background-color: whitesmoke;
}

nav a.active {
    color: var(--white) !important;
    background-color: var(--primary);
}

nav a.active span {
    font-weight: 500;
}

nav a + a {
    border-top: 1px solid whitesmoke;
}

nav .divider {
    padding: 0 15px;
    line-height: 25px;
    background-color: whitesmoke;
}


/* =========================================
   CHECKBOX
   ========================================= */

.checkbox {
    width: 10px;
    height: 10px;
    margin-right: 20px;
}

.checkbox:before {
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;

    content: "\f00c";

    display: block;
    background: #f8f9fa;

    width: 20px;
    height: 20px;

    margin: -5px 0;

    line-height: 20px;
    text-align: center;

    color: transparent;

    box-shadow:
        inset 0 0 0px 2px var(--primary);
}

.checkbox[type="checkbox"]:before {
    border-radius: 5px;
}

.checkbox[type="radio"]:before {
    border-radius: 50%;
}

.checkbox:checked:before {
    color: var(--white);
    background: var(--primary);
}


select[size] {
    overflow-y: auto;
}


/* =========================================
   FIELDSET
   ========================================= */

fieldset {
    border-width: 1px;
    border-color: var(--primary);
    margin: 0;
    border-style: solid;
}

button.form-control {
    cursor: pointer;
}


/* =========================================
   PRIMARY BUTTON
   ========================================= */

.btn-primary {
    color: var(--white);
    background-color: var(--primary);
    border-color: var(--primary);
}

.btn-primary:hover,
.btn-outline-primary:hover {
    color: var(--white);
    background-color: var(--primary);
    border-color: var(--primary);
}

.btn-primary.focus,
.btn-primary:focus {
    box-shadow:
        0 0 0 .2rem rgba(var(--primary-rgb), 0.75);
}


/* =========================================
   OUTLINE PRIMARY BUTTON
   ========================================= */

.btn-outline-primary {
    color: var(--primary);
    border-color: var(--primary);
}


/* =========================================
   FORM FOCUS
   ========================================= */

.form-control:focus {
    border-color: var(--primary);

    box-shadow:
        0 0 0 0.2rem rgba(var(--primary-rgb), 0.3);
}


/* =========================================
   GLOBAL PRIMARY CLASSES
   ========================================= */

.bg-primary {
    background-color: var(--primary) !important;
}

.text-primary {
    color: var(--primary) !important;
}


/* =========================================
   ACCENT / RED CLASSES
   ========================================= */

.bg-accent {
    background-color: var(--accent) !important;
}

.text-accent {
    color: var(--accent) !important;
}

.border-accent {
    border-color: var(--accent) !important;
}


/* =========================================
   LINKS
   ========================================= */

a {
    color: black;
}