@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600');

body {
    font-family: 'Open Sans', sans-serif !important;
}

.nopad {
    padding: 0px !important;
    margin: 0px !important;
}

.left-area {
    min-height: 94vh;
    background: #11151b;
}

.logo-area {
    background: #222a35;
    padding: 10px;
    text-align: left;
}

.sidebar {
    background: #11151b;
    padding: 0px;
    margin: 0px;
}

.admin-bar {
    background: #394554;
    color: #fff;
    z-index: 999;
    padding: 0px 12px 0px 0px;
    position: relative;
}

.logo-area img {
    height: 39px;
}

.qr-rt-testimnial {
    clear: both;
    font-size: 50px;
    color: #dedede;
    margin-top: -20px;
}

.copyrite a {
    color: #fff;
}

.adm-navi-area ul {
    padding: 0px;
    margin: 0;
}

.adm-navi-area ul li {
    list-style: none;
    float: left;
}

.adm-navi-area ul li a {
    color: #fff;
    padding: 19px 12px;
    display: block;
}

.adm-navi-area {
    float: left;
}

.adm-log-bar {
    float: right;
    padding: 12px 0px
}

.social-media {
}

.social-media ul {
    padding: 0px;
    margin: 0px;
}

.social-media ul li {
    float: left;
    list-style: none;
    font-size: 20px;
}

.social-media ul li a {
    color: #fff;
    padding: 0px 6px 0px;
    display: block;
    position: relative;
    top: 2px;
}

.content-area {
    background: #ebebeb !important;
}

.cnt {
    background: #ebebeb;
    padding: 40px 20px 40px;
    min-height: 94vh;
    position: relative;
    top: 0;
    width: 100%;
}

.pf-imgs {
    width: 100px;
    height: 100px;
    border-radius: 100%;
    border: 2px solid #d8543b;
    float: left;
    overflow: hidden;
}

.pf-imgs img {
    height: 100%;
}

.profile-area {
    padding: 18px 38px;
    background: #09090a;
    color: #fff;
}

.pf-name {
    float: left;
    padding: 15px 12px;
}

.pf-name h4 {
    font-size: 26px !important;
    margin-bottom: 0px;
}

nav ul {
    padding: 0px;
    margin: 0px;
}

nav ul li {
    padding: 0px;
}

nav ul li a {
    color: #fff;
    text-decoration: none;
    padding: 15px 28px;
    display: block;
    border-bottom: 1px solid #09090a;
}

nav ul li:hover, nav ul li.active, nav ul li:focus {
    background: #d8543b !important;
    text-decoration: none;
}

nav ul li:hover a, nav ul li.active a, nav ul li:focus a {
    color: #fff;
    text-decoration: none;
}

nav ul li a .fa {
    margin-right: 9px;
}

nav ul li a:before {
    content: "\f105";
    font: normal normal normal 14px/1 FontAwesome;
    padding-right: 11px;
}

nav ul li ul.submenu {
    padding: 0px;
    margin: 0px;
    background: rgba(45, 45, 45, 0.58);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    display: none;
}

nav ul li.active ul.submenu {
    display: block !important;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

nav ul li ul.submenu li a {
    padding: 12px 28px !important;
}

.adm-navi-area ul li a:hover, .adm-navi-area ul li.active a, .adm-navi-area ul li:focus a {
    background: #222a35;
    text-decoration: none;
}

.breadcrumb ol {
    padding: 0px;
    margin: 0px;
}

.breadcrumb ol li {
    list-style: none;
    padding: 5px 5px;
    float: left;
    color: #444343;
}

.breadcrumb ol li a {
    text-decoration: none;
    color: #000
}

.panel-default > .panel-heading {
    background: #222a35;
    color: #fff;
    border-radius: 0px;
    border: 0px;
    padding: 14px 19px;
    cursor: pointer;
}

.panel-collapse {
    padding: 15px 21px;
    box-shadow: none;
    border: 0px !important;
    border-radius: 0px !important;
    overflow: hidden;
}

.panel-group {
    margin-bottom: 20px !important;
}

.panel-group .panel {
    margin-bottom: 0;
    border-radius: 0;
    box-shadow: none;
    border: 0px;
}

.adm-log-bar .dropdown {
    margin-left: 9px;
}

button.btn.btn-primary.dropdown-toggle {
    background: #616f80;
    border: 0px;
    padding: 7px 35px 7px 11px;
    border-radius: 0px;
    position: relative;
    text-align: left;
}

span.fa.fa-angle-down.dd-down {
    position: absolute;
    background: #222a35;
    top: 0;
    right: 0;
    padding: 10px 7px;
}

.highlight {
    background: #fff;
    margin-bottom: 20px;
    padding: 16px;
}

.col-md-3.hl-data {
}

.dl-dt-icon {
    background: #222a35;
    text-align: center;
    color: #fff;
    vertical-align: middle;
    font-size: 42px;
    padding: 7px;
}

.dl-dt-txt {
    border: 1px solid #222a35;
    padding: 7px 14px 10px;
}

.dl-dt-txt .price {
    font-size: 25px;
}

.green .dl-dt-icon {
    background: #3bd8a6;
}

.green .dl-dt-txt {
    border: 1px solid #3bd8a6;
}

.blue .dl-dt-icon {
    background: #3b89d8;
}

.blue .dl-dt-txt {
    border: 1px solid #3b89d8;
}

.oringe .dl-dt-icon {
    background: #d8543b;
}

.oringe .dl-dt-txt {
    border: 1px solid #d8543b;
}

.purple .dl-dt-icon {
    background: #673bd8;
}

.purple .dl-dt-txt {
    border: 1px solid #673bd8;
}

span.bar {
    color: #ebecec;
    float: right;
    font-size: 27px;
    padding-right: 10px;
    display: none;
    cursor: pointer
}

a.closebtn {
    float: right;
    position: absolute;
    right: 19px;
    font-size: 35px;
    color: #d8543b;
    display: none;
}

.page-heading-sec h1 {
    padding: 13px;
    margin: 0px;
    font-size: 23px;
}

.page-heading-sec .label-danger {
    font-size: 14px;
    font-weight: normal;
}

.portlet-title h4 {
    color: #fff;
    border-radius: 0px;
    border: 0px;
    padding: 14px 19px;
    cursor: pointer;
}

.portlet-body .portlet-body {
    padding: 15px 21px;
    box-shadow: none !important;
    border: 0px !important;
    border-radius: 0px !important;
    background: #fff;
    margin-top: -10px;
}

.portlet-body {
    margin-bottom: 0;
    border-radius: 0;
    box-shadow: none;
    border: 0px;
    padding-right: 15px;
    padding-left: 15px;
}

.page-header.title {
    margin-bottom: 20px;
    padding: 16px;
    margin: 0px;
    clear: both;
    margin-left: 15px;
    margin-right: 15px;
    margin-bottom: 19px
}

.page-header.title h1 {
    padding: 0px;
    margin: 0px;
    font-size: 23px;
}

.portlet {
    margin-top: 22px;
}

.portlet.portlet-basic {
    margin-top: 0 !important;
}

div#dyntable_commission_list_wrapper {
    background: #fff;
    padding: 23px 23px 0px;
}

#loginbox .panel-info > .panel-heading {
    background-color: #394554;
    border-color: #394554;
    color: #ffffff;
}

#loginbox .panel-info {
    border-color: #394554;
}

#loginbox .panel-info > .panel-heading a {
    color: #fff !important
}

#loginbox .panel-body {
    background: #f3f3f3;
}

#loginbox .input-group-addon {
    background-color: #fff !important;
    border-color: #cccccc !important;
}

#loginbox form-group a {
    color: #12397e !important;
}

#loginbox .btn-danger {
    background-color: #394554;
    border-color: #394554;
}

.content-white-area .portlet {
    background: #fff;
    margin-left: 15px;
    margin-right: 15px;
    padding-bottom: 19px;
}

.content-white-area .alert {
    margin-left: 15px;
    margin-right: 15px;
}

.newpass {
    background: #fff;
    margin-left: 15px;
    margin-right: 15px;
    margin-top: -19px;
    padding-top: 22px;
}

.login-body {
    background: #222a35;
}

form.yt-share {
    display: inline-block !important;
}

section.contact-area.login-page {
    color: #fff;
    padding: 15vh 0px 5vh;
}

section.contact-area.login-page #welcome {
    margin: 0 auto;
    display: table;
    float: none;
    margin-top: 20px;
    padding: 20px 20px;
    background: #394554;
    margin-bottom: 21px;
}

.wt-href {
    color: #fff !important;
    clear: both;
    font-size: 13px;
}

a.returntoaff {
    color: #fff;
}

.dl-dt-txt {
    height: 74px;
    font-size: 13px !important;
}

.dl-dt-icon {
    height: 74px;
    font-size: 33px;
    padding: 12px;
}

.dl-dt-txt .price {
    font-size: 21px;
}

div#area-affiliate svg {
    width: 100% !important;
    overflow: hidden;
}

.dl-dt-txt .price .pull-right {
    font-size: 15px;
    position: absolute;
    right: 10px;
}

.dl-dt-txt .sub .pull-right {
    font-size: 12px !important;
    position: absolute;
    top: 26px;
    right: 12px;
}

.dl-dt-txt .sub {
    line-height: 15px;
    padding-top: 3px;
}

.tid-form select {
    margin-bottom: 15px;
}

.footer {
    clear: both;
    width: 100%;
    z-index: 9999;
    background: #09090a;
    position: relative;
    bottom: 0;
    text-align: center;
    padding: 14px;
    color: #fff;
}

nav ul li ul.submenu li a.active {
    background: rgba(23, 23, 23, 0.65);
}

.portlet-footer {
    background: #fff;
    padding: 16px 22px;
}

.portlet-basic.testimonials .widget {
    border: 1px solid #ccc;
}

.dataTables_wrapper label, .dataTables_filter input[type=text] {
    width: 100%;
}

.dataTables_processing {
    padding: 3px 19px;
}

@media only screen and (max-height: 450px) {
    .sidenav {
        padding-top: 15px;
    }

    .sidenav a {
        font-size: 18px;
    }
}

@media only screen and (max-width: 1507px) {
    .dl-dt-icon {
        padding: 18px 7px;
        font-size: 27px;
    }

    .dl-dt-txt .sub .pull-right {
        font-size: 10px !important;
    }

    .dl-dt-txt .sub .pull-left {
        width: 70px;
    }

    .dl-dt-txt .price {
        font-size: 18px;
    }
}

body.home span.bar {
    display: none;
}

@media only screen and (max-width: 1200px) {
    .sidenav {
        height: 100%;
        width: 0;
        position: absolute;
        z-index: 9999;
        top: 0;
        left: 0;
        background-color: #111;
        overflow-x: hidden;
        padding-top: 60px;
        transition: 0.5s;
    }

    a.closebtn, span.bar {
        display: block;
    }

    .dl-dt-txt, .dl-dt-icon {
        height: 69px;
        padding: 9px 9px;
    }

    .dl-dt-txt {
        padding: 5px 9px
    }

    .logo-area img {
        width: 78%;
    }
}

.portlet .portlet-body img {
    max-width: 100%;
    height: auto;
}

@media only screen and (max-width: 991px) {
    .logo-area img {
        width: auto !important;
    }

    .logo-area {
        height: auto !important;
    }

    .adm-navi-area {
        width: 100%;
        border-bottom: 1px solid #556273;
    }

    .adm-navi-area ul {
        display: table;
        margin: 0 auto;
    }

    .adm-log-bar {
        float: none;
        margin: 0 auto;
        display: table;
    }

    .dl-dt-icon {
        height: 55px;
    }

    .dl-dt-txt {
        margin-bottom: 10px;
    }

    .banner-port img {
        width: 100%;
    }

    .dataTable-scroll {
        overflow-x: scroll;
    }

    .dataTable-scroll .dataTable {
        min-width: 900px !important;
    }

    body.home .logo-area {
        text-align: center;
    }

    input[type=file] {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    .form-group input.btn.btn-sm.btn-primary {
        margin-top: 10px;
    }

    .dataTable-scroll {
        overflow-x: scroll;
    }

    .dataTable-scroll .dataTable {
        min-width: 900px !important;
    }

    .portlet-footer .btn {
        width: 100%;
        margin-bottom: 5px;
    }

    .page-header.title {
        margin-left: 0;
        margin-right: 0;
    }

    .content-area .panel-group.col-md-12 { /*padding:0px;*/
    }

    body.home span.bar {
        display: none;
    }

    body.home .logo-area {
        text-align: center;
    }

    .well span.pull-right {
        float: none !important;
    }

    span.pull-right.md-full {
        float: right !important;
    }
}

@media only screen and (max-width: 321px) {
    .logo-area img {
        width: 74% !important;
    }
}

@media only screen and (max-width: 598px) {
    .adm-navi-area, .adm-log-bar {
        width: 100%;
        border-bottom: 1px solid #222a35;
    }

    .adm-navi-area ul {
        margin: 0 auto;
        display: table;
    }

    .logo-area img {
        width: 68%;
    }

    .adm-navi-area ul li a {
        font-size: 12px;
        padding: 15px 9px;
    }

    .col-md-3.hl-data {
        width: 100%;
        padding: 0px;
    }

    .social-media {
        width: 100%;
        border-top: 1px solid #222a35;
        margin-top: 10px;
        padding-top: 10px;
    }

    .social-media ul {
        display: table;
        margin: 0 auto;
    }

    .dropdown.pull-right.mb-left {
        float: left !important;
    }

    .page-heading-sec:after {
        content: '';
        clear: both;
        display: block;
    }

    .page-heading-sec .pull-right {
        float: left !important;
    }

    .table-scroll .table {
        width: 200% !important;
    }

    .table-scroll {
        overflow: auto;
    }

    .keywords-google {
        word-wrap: break-word;
        width: 100%;
    }

    .list-group-item {
        word-wrap: break-word;
    }

    .dataTable-scroll {
        overflow-x: scroll;
    }

    .dataTable-scroll .dataTable {
        min-width: 900px !important;
    }

    span.pull-right.mb-sects {
        clear: both;
        float: left;
        width: 100%;
    }

    .pull-left.md-full {
        width: 100%;
        clear: both !important;
        display: block;
    }

    .login-page-logo img {
        width: 100%;
    }

    .text-center.footer-logo img {
        width: 80%;
        padding-top: 20px;
    }

    .login-block .input-group {
        width: 100%;
    }

    .dropdown.pull-right.mb-left > .dropdown-menu {
        left: 0;
        right: inherit;
    }

    .dataTables_wrapper {
        overflow-x: scroll !important;
    }

    .dataTables_wrapper .table.table-bordered {
        width: 150% !important;
        max-width: 150% !important;
    }

    .idevads-container_1 {
        width: 100% !important;
        margin: 0 !important;
    }
}

/*--------- Additional Style 5-18-2018 ---------*/
i.icon-search:before {
    content: "\f002";
    font: normal normal normal 14px/1 FontAwesome;
}

.morris-hover.morris-default-style {
    position: absolute;
}

a[data-pin-log="button_pinit"] {
    float: left;
    margin-right: 5px;
}

.dataTables_length select {
    width: 98px;
}

.dataTables_paginate.paging_bootstrap {
    text-align: right;
}

/*--------- Additional Style 5-18-2018 ---------*/
#dyntable_Pending_Debits_filter .form-control {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" version="1.1" id="spyglass" viewBox="0 0 22 22" height="22" width="22"><path d="m 10.011718,5.0898489 c -2.7000005,0 -4.9003915,2.2004 -4.9003915,4.9003996 0,2.6999995 2.200391,4.8983995 4.9003915,4.8983995 1.154374,0 2.204251,-0.4184 3.042969,-1.0898 l 3.207031,3.1113 0.626953,-0.6465 -3.185547,-3.0879 c 0.743242,-0.8594 1.208984,-1.964 1.208984,-3.1854995 0,-2.6999996 -2.20039,-4.9003996 -4.90039,-4.9003996 z m 0,1 c 2.2,0 3.90039,1.7004 3.90039,3.9003996 0,2.1999995 -1.70039,3.8983995 -3.90039,3.8983995 -2.2000005,0 -3.9003915,-1.6984 -3.9003915,-3.8983995 0,-2.1999996 1.700391,-3.9003996 3.9003915,-3.9003996 z" style="fill:#808080"/></svg>');
    background-repeat: no-repeat;
    background-color: #fff;
    background-position: 0px 5px !important;
    padding-left: 22px;
}

/*--------- Additional Style 7-4-2018 ---------*/
.dataTables_filter label:before
{
    content: "\f002";
    font: normal normal normal 14px/1 FontAwesome;
    position: absolute;
    z-index: 9;
    left: 0;
    background: #dcdcdc;
    padding: 10px 12px;
}
.dataTables_filter {}

div.dataTables_wrapper div.dataTables_filter label{
    width: auto;
    position: relative;
}
.dataTables_filter span.input-group-addon {
    display: none;
}

.dataTables_filter input.form-control.form-control-sm {
    float: right;
}

.dataTables_filter .input-group {
    display: block;
}

.dataTables_filter .form-control.form-control-sm {
    padding-left: 37px;
}


@media screen And (max-width:375px){
    .page-header > h1 > span {float:none !important;}

}

/*==================================================================================================
  Homepage Redesign (index.tpl) — youstable.com inspired
  Scoped to .affiliate-home-shell / .home-* / #loginbox so nothing outside index.tpl is affected.
==================================================================================================*/
.affiliate-home-shell {
    --home-primary: #5d48eb;
    --home-primary-dark: #2b1654;
    --home-primary-light: #efeaff;
    --home-accent: #774eff;
    --home-indigo: #4f46e5;
    --home-text-main: #0f172a;
    --home-text-body: #4b5563;
    --home-text-muted: #64748b;
    --home-border: #e0e7ff;
    --home-bg-soft: #f8faff;
    --home-success: #00b67a;
    --home-radius-lg: 20px;
    --home-radius-md: 14px;
    --home-shadow-soft: 0 14px 32px rgba(78, 49, 173, 0.08);
    --home-shadow-card: 0 6px 16px rgba(16, 24, 40, 0.06);
    font-family: 'DM Sans', 'Open Sans', sans-serif;
}

.affiliate-home-shell h1,
.affiliate-home-shell h2,
.affiliate-home-shell h3,
.affiliate-home-shell h4,
.affiliate-home-shell h5 {
    font-family: 'DM Sans', 'Open Sans', sans-serif;
}

.home-canvas {
    background: linear-gradient(180deg, #f4f2ff 0%, #ebebeb 320px);
    padding: 28px 24px 40px;
    min-height: 0;
}

/* ---------- Hero ---------- */
.home-hero {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    background: linear-gradient(180deg, #ffffff 0%, var(--home-bg-soft) 100%);
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius-lg);
    padding: 32px;
    box-shadow: var(--home-shadow-soft);
    margin-bottom: 24px;
}

.home-hero:before,
.home-hero:after {
    content: none;
}

.home-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--home-primary-light);
    color: var(--home-primary);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 7px 16px;
    border-radius: 999px;
    margin-bottom: 18px;
}

.home-kicker-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--home-primary);
    display: inline-block;
}

.home-intro-card.portlet.portlet-basic {
    background: transparent;
    box-shadow: none;
    border: 0;
    margin-top: 0 !important;
}

.home-intro-card .portlet-body {
    padding: 0;
}

.home-hero-heading,
.home-section-heading {
    font-size: 22px;
    font-weight: 800;
    color: var(--home-text-main);
    margin: 0 0 10px;
}

.home-hero-lead {
    font-size: 15px;
    line-height: 1.65;
    color: var(--home-text-body);
}

.home-copy-column p {
    margin: 0;
}

.home-seal-column {
    display: flex;
    align-items: center;
    justify-content: center;
}

.home-seal-link {
    display: inline-block;
    border-radius: 50%;
    transition: transform 0.25s ease;
}

.home-seal-link:hover {
    transform: translateY(-4px);
}

.home-feature {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px 0;
    border-top: 1px solid var(--home-border);
}

.home-feature-badge {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: var(--home-primary-light);
    color: var(--home-primary);
    font-weight: 800;
    font-size: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.home-feature-text {
    flex: 1;
}

.home-feature .home-section-heading {
    font-size: 17px;
    margin-bottom: 6px;
}

.home-feature p {
    color: var(--home-text-body);
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}

.home-hero-cta {
    margin-top: 22px;
}

.home-cta-btn.btn {
    background: var(--home-primary);
    border-color: transparent;
    color: #fff;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 12px 24px rgba(93, 72, 235, 0.28);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.home-cta-btn.btn:hover,
.home-cta-btn.btn:focus {
    background: var(--home-indigo);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 16px 30px rgba(93, 72, 235, 0.34);
}

.home-modal-content {
    border-radius: var(--home-radius-md);
    overflow: hidden;
    border: 0;
}

/* ---------- Login card ---------- */
.home-login-column {
    display: flex;
}

#loginbox.home-login-column .home-login-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    align-self: stretch;
    border: 1px solid var(--home-border);
    border-radius: var(--home-radius-lg);
    box-shadow: var(--home-shadow-soft);
    overflow: hidden;
}

#loginbox .home-login-card .panel-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#loginbox .panel-info.home-login-card > .panel-heading {
    background: linear-gradient(135deg, var(--home-primary) 0%, var(--home-accent) 100%);
    border-color: transparent;
    padding: 22px 20px;
}

#loginbox .panel-info.home-login-card .panel-title {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 700;
}

.home-login-icon {
    width: 32px;
    height: 32px;
    border-radius: 9px;
    background: rgba(255, 255, 255, 0.18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
}

#loginbox .home-login-card .panel-body {
    background: #ffffff;
    padding: 22px 20px 20px !important;
}

#loginbox .home-login-card .input-group-addon {
    background-color: var(--home-primary-light) !important;
    border-color: var(--home-border) !important;
    color: var(--home-primary);
}

#loginbox .home-login-card .form-control {
    border-color: var(--home-border);
    box-shadow: none;
}

#loginbox .home-login-card .form-control:focus {
    border-color: var(--home-primary);
    box-shadow: 0 0 0 3px rgba(93, 72, 235, 0.12);
}

#loginbox .home-login-card .btn-danger {
    background-color: var(--home-primary);
    border-color: var(--home-primary);
    font-weight: 700;
    border-radius: 10px;
    transition: background 0.2s ease, transform 0.2s ease;
}

#loginbox .home-login-card .btn-danger:hover {
    background-color: var(--home-indigo);
    border-color: var(--home-indigo);
    transform: translateY(-1px);
}

#loginbox .home-login-card .btn-primary {
    background-color: #fff;
    color: var(--home-primary);
    border: 1px solid var(--home-border);
    font-weight: 700;
    border-radius: 10px;
    transition: background 0.2s ease, color 0.2s ease;
}

#loginbox .home-login-card .btn-primary:hover {
    background-color: var(--home-primary-light);
    color: var(--home-primary-dark);
}

/* ---------- Program details / leaderboard cards ---------- */
.home-panel {
    margin-bottom: 24px !important;
}

.home-panel .home-panel-card {
    border-radius: var(--home-radius-lg) !important;
    border-color: var(--home-border) !important;
    overflow: hidden;
    box-shadow: var(--home-shadow-card);
}

.home-panel-heading {
    background: linear-gradient(135deg, var(--home-primary) 0%, var(--home-accent) 100%) !important;
    border-radius: 0 !important;
    padding: 16px 22px !important;
}

.home-panel-heading .panel-title,
.home-panel-heading .panel-title a,
.home-panel-heading .portlet-title,
.home-panel-heading .portlet-title h4 {
    color: #fff !important;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.home-panel-table {
    margin-bottom: 0 !important;
    font-size: 14px;
}

.home-panel-table td,
.home-panel-table th {
    border-color: var(--home-border) !important;
    vertical-align: middle;
}

/* ---------- Charts ---------- */
.home-charts-row {
    margin-top: 4px;
}

.home-chart-card.portlet {
    background: #fff;
    border: 1px solid var(--home-border) !important;
    border-radius: var(--home-radius-lg);
    box-shadow: var(--home-shadow-card);
    overflow: hidden;
    margin-top: 0;
}

.home-chart-card .portlet-body {
    padding: 20px 22px;
}

@media only screen and (max-width: 991px) {
    .home-hero {
        padding: 24px;
    }

    .home-login-column {
        margin-top: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .home-canvas {
        padding: 18px 14px 30px;
    }

    .home-hero {
        padding: 20px;
    }

    .home-feature {
        flex-direction: column;
        gap: 10px;
    }
}

/*==================================================================================================
  Site footer (footer.tpl / blue_crush "footer_nav" + "footer" sections) — global, all pages.
  These classes/ids only exist inside footer.tpl, so this is safe to style broadly.
==================================================================================================*/
.footer_nav {
    padding: 16px 24px;
}

.footer_nav .container {
    display: flex;
    justify-content: center;
}

#footer_nav.navbar-collapse.collapse {
    display: flex !important;
    height: auto !important;
    overflow: visible !important;
    float: none;
    width: 100%;
}

.footer_nav .navbar-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 4px;
    float: none;
    margin: 0;
}

.footer_nav .navbar-nav > li {
    float: none;
}

.footer_nav .navbar-nav > li > a {
    padding: 8px 18px !important;
    font-size: 13px;
    font-weight: 600;
    font-family: 'DM Sans', 'Open Sans', sans-serif;
    border-radius: 999px;
    opacity: 0.82;
    transition: background 0.2s ease, opacity 0.2s ease;
}

.footer_nav .navbar-nav > li > a:hover,
.footer_nav .navbar-nav > li > a:focus {
    background: rgba(255, 255, 255, 0.14);
    opacity: 1;
    text-decoration: none;
}

.footer_main .footer {
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.footer .copyright p {
    margin: 0;
    font-size: 13px;
    font-family: 'DM Sans', 'Open Sans', sans-serif;
    opacity: 0.85;
    letter-spacing: 0.01em;
}

.footer .copyright a {
    color: #fff;
    font-weight: 600;
    text-decoration: underline;
}

@media only screen and (max-width: 598px) {
    .footer_nav .navbar-nav > li > a {
        padding: 6px 12px !important;
        font-size: 12px;
    }
}