/* With help from https://github.com/ForEvolve/bootstrap-dark too */
:root {
    --bg-color-dark: #1B1B22; /*was: #121212*/
    --bg-color-medium: #16161D; /*was #181818*/
    --bg-color-light: #13131A; /*was #1e1e1e*/
    --text-color: #e0e0e0 !important;
    --accent-color: #026a81 !important;
    --accent-hover-color: #004b5c !important;
    --accent-dark-hover: #006e86 !important;
    --accordion-header-bg: var(--accent-dark-hover) !important;
    --accordion-body-bg: var(--accent-hover-color) !important;
}

html{
	scroll-behavior: smooth !important;
}

body {
    background-color: var(--bg-color-medium) !important;
    animation: fadeIn 0.5s ease-in-out !important;
    color: var(--text-color) !important;
    margin: 0;
    padding: 0;
}

/* Change highlight colour site-wide */
::selection {
    background-color: var(--accent-color) !important;
    color: var(--bg-color-dark) !important;
}

button {
    background-color: var(--accent-color) !important;
    border-color: var(--accent-color) !important;
    color: var(--bg-color-dark) !important;
}



h1, h2, h3, h4, h5, h6, p {
    color: var(--text-color) !important;
    margin-bottom: 20px !important;
}

a {
    color: var(--accent-color) !important;
    text-decoration: none !important;
}

a:hover {
    color: var(--accent-hover-color) !important;
}

header {
    background-color: var(--bg-color-dark) !important;
    padding: 10px 0 !important;
}

.logo-img {
	max-width: 150px !important;
	max-height: 150px !important;
    width: 150px !important;
    height: 150px !important;
}

.navbar-nav .nav-link {
    color: var(--text-color) !important;
    font-size: 1.2rem !important;
}

.navbar-nav .nav-link:hover {
    color: var(--accent-color) !important;
}

.master-breadcrumb {
    background-color: var(--bg-color-dark) !important;
    padding: 10px 0 !important;
    margin-bottom: 20px !important;
    color: var(--accent-color) !important;
}
.breadcrumb-item {
    color: var(--accent-color) !important;
}

.btn-primary {
    background-color: var(--accent-color) !important;
    border-color: var(--accent-color) !important;
}

.btn-primary:hover {
    background-color: var(--accent-dark-hover) !important;
    border-color: var(--accent-dark-hover) !important;
}

.card-columns {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
    gap: 20px !important;
    padding: 20px 0 !important;
}

.card-body {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
}

.card {
    background-color: var(--bg-color-light) !important;
    border: 1px solid var(--accent-hover-color) !important;
    transition: all 0.3s ease !important;
}

.card:hover {
    background-color: var(--bg-color-medium) !important;
    transform: scale(1.05) !important;
}

footer {
    padding: 20px 0 !important;
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    text-align: center !important;
}

footer a {
    color: var(--accent-color) !important;
}

footer a:hover {
    color: var(--accent-hover-color) !important;
}

#main-body {
    padding: 50px 0 !important;
}

#main-body .container {
    max-width: 1200px !important;
}

h2 {
    font-size: 2rem !important;
    margin-top: 20px !important;
    text-align: center !important;
}

.action-icon-btns .col-lg {
    margin-bottom: 20px !important;
}

.action-icon-btns a {
    display: block !important;
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    border-radius: 8px !important;
    padding: 20px !important;
    text-align: center !important;
    transition: 0.3s ease !important;
}

.action-icon-btns a:hover {
    background-color: var(--accent-color) !important;
    color: var(--bg-color-dark) !important;
}


.list-group-item.active {
    background-color: var(--accent-color) !important;
    color: var(--bg-color-dark) !important;
}

.list-group-item {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
}


/* Client Area */
.verification-banner {
    background-color: var(--bg-color-light) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

a.tile[href^="clientarea.php"],
a.tile[href^="supporttickets.php"] {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
}

.card-header {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
}

/* services */
table#tableServicesList {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
}

thead tr th {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
}

tbody tr td {
    background-color: var(--bg-color-light) !important;
    color: var(--text-color) !important;
}






/* Announcements page */
.announcements .announcement article {
    margin-bottom: 1rem;
    padding: 1rem;
    background-color: var(--bg-color-light);
    border-left: 4px solid var(--accent-color);
    color: var(--text-color);
  }

    .announcements .announcement ul li,
    .list-inline li {
        color: var(--text-color) !important;
    }

/* PRODUCTS PAGE */
.product {
    background-color: var(--bg-color-light) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

.product * {
    color: var(--text-color) !important;
}

.product:hover {
    transform: scale(1.05) !important;
}


/* Login Form */
.login-form *:not(input) {
    color: var(--text-color) !important;
}

/* Cart */
.cart-item {
    background-color: var(--bg-color-light) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

.cart-item * {
    color: var(--text-color) !important;
}

.cart-item:hover {
    transform: scale(1.05) !important;
}

.secondary-cart-body {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

.secondary-cart-body .view-cart-tabs {
    background-color: var(--bg-color-light) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

.secondary-cart-body .view-cart-tabs .tab-content {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}


.order-summary {
    background-color: var(--bg-color-light) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

.order-summary .summary-container {
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    padding: 20px !important;
    border-radius: 8px !important;
    transition: 0.3s ease !important;
}

.order-summary .summary-container * {
    color: var(--text-color) !important;
}

/**
 * -------------------------
 * Markdown Editor
 * -------------------------
 */

.md-editor {
    border: 1px solid var(--accent-hover-color) !important;
    border-radius: 3px !important;
}
.md-editor > .btn-toolbar {
    background-color: var(--bg-color-dark) !important;
}
.md-editor > textarea.markdown-editor,
.md-editor > .md-preview {
    padding: 15px !important;
    border-top: 1px solid var(--accent-hover-color) !important;
    border-bottom: 1px solid var(--accent-hover-color) !important;
    background-color: var(--bg-color-medium) !important;
    color: var(--text-color) !important;
}
div.md-editor.active {
    display: block !important;
    border: 1px solid var(--accent-color) !important;
    outline: 0 !important;
    -webkit-box-shadow: 0 0 5px var(--accent-color) !important;
    box-shadow: 0 0 5px var(--accent-color) !important;
}
.markdown-editor-status {
    padding: 2px 10px !important;
    font-size: 9pt !important;
    color: var(--text-color) !important;
    text-align: right !important;
    background-color: var(--bg-color-dark) !important;
}

.small-font {
    font-size: 0.9em !important;
}

/**
 * -------------------------
 * Markdown Content Formatting
 * -------------------------
 */

.markdown-content h1 {
    font-size: 1.6em !important;
    color: var(--text-color) !important;
}
.markdown-content h2 {
    font-size: 1.4em !important;
    color: var(--text-color) !important;
    text-align: left !important; /* Override center alignment from general h2 */
}
.markdown-content h3 {
    font-size: 1.2em !important;
    color: var(--text-color) !important;
}
.markdown-content h4 {
    font-size: 1.1em !important;
    color: var(--text-color) !important;
}

.markdown-content pre {
    padding: 15px !important;
    background-color: var(--bg-color-dark) !important;
    color: var(--text-color) !important;
    border: 0 !important;
    border-left: 4px solid var(--accent-color) !important;
}
.markdown-content pre code {
    white-space: pre !important;
    word-break: normal !important;
    word-wrap: normal !important;
}

.markdown-content blockquote {
    font-size: 1em !important;
    border-left: 4px solid var(--accent-color) !important;
    background-color: var(--bg-color-light) !important;
    padding: 10px 15px !important;
}

.markdown-content table {
    margin: 10px 0 !important;
    background-color: var(--bg-color-light) !important;
    border: 1px solid var(--accent-hover-color) !important;
}
.markdown-content table > thead > tr > th {
    padding: 4px 10px !important;
    background-color: var(--bg-color-dark) !important;
    border: 1px solid var(--accent-hover-color) !important;
    font-weight: bold !important;
    text-align: center !important;
    color: var(--text-color) !important;
}
.markdown-content table > tbody > tr > td {
    padding: 3px 8px !important;
    border: 1px solid var(--accent-hover-color) !important;
    color: var(--text-color) !important;
}

@media (max-width: 768px) {
    .navbar-nav .nav-item {
        margin-bottom: 10px !important;
    }

    .navbar-nav .nav-link {
        font-size: 1.1rem !important;
    }

    .card-columns {
        grid-template-columns: 1fr !important;
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0 !important;
        transform: translateY(10px) !important;
    }

    100% {
        opacity: 1 !important;
        transform: translateY(0) !important;
    }
}
