/* GENERAL */
img{
    max-width: 100%;
    height: auto;
}
.table-bordered {
    border: 1px solid #ccc;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
    border: 1px solid #ccc;
}
form .hint-block {
    display: block;
    margin-top: 5px;
    font-style: italic;
    color: #999;
}
.date.input-sm{
    padding: 0;
}
.box{
    border-radius: 0;
}
.full-width{
    width: 100%;
    max-width: 100%;
}
/* GRID VIEW */
.grid-view{
    position: relative;
}
.grid-view .summary{
    position: absolute;
    right: 0;
    top: -35px;
}
.grid-nav{
    margin: 10px 0;
}

/* OPTION PAGE */
.options-form label{
    margin: 5px 0;
}
.options-form .control-label{
    margin: 0;
}

/* SELECTIZE */
.selectize-input,
.selectize-input.dropdown-active{
    border-radius: 0;
    margin-bottom: -5px;
}

/* MEDIA CREATE */
.media-create .dropzone {
    width: 100%;
    height: 250px;
    text-align: center;
    border: 5px dashed #DDDDDD;
    padding: 15px;
    margin-bottom: 15px;
}
.media-create .dropzone.hover {
    background: #FFFFFF;
}
.media-create .dropzone.fade {
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    opacity: 1;
}
.media-create .template-download ,
.media-create .template-upload {
    position: relative;
    margin-top: 6px;
}
.media-create .template-download .media-preview-wrap ,
.media-create .template-upload .media-preview-wrap {
    margin-right: 160px;
}
.media-create .template-upload .media-preview ,
.media-create .template-download .media-preview {
    float: left;
    margin-right: 6px;
    max-width: 80px;
}
.media-create .template-download .media-preview img{
    max-width: 100%;
}
.media-create .template-download .media-filename-wrap ,
.media-create .template-upload .media-filename-wrap {
    float: left;
}
.media-create .template-upload .media-progressbar,
.media-create .template-download .media-option {
    position: absolute;
    right: 0;
    top: 0;
    width: 160px;
}
#media-grid-view .media-mime-icon{
    display: block;
    text-align: center;
}
#media-grid-view .media-mime-icon img{
    max-width: 80px;
    width: 80px;
}

/* NOT SET */
.not-set {
    color: #c55;
    font-style: italic;
}

/* SORT */
a.asc:after, a.desc:after {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    padding-left: 5px;
}
a.asc:after {
    content: /*"\e113"*/ "\e151";
}
a.desc:after {
    content: /*"\e114"*/ "\e152";
}
.sort-numerical a.asc:after {
    content: "\e153";
}
.sort-numerical a.desc:after {
    content: "\e154";
}
.sort-ordinal a.asc:after {
    content: "\e155";
}
.sort-ordinal a.desc:after {
    content: "\e156";
}
.grid-view th {
    white-space: nowrap;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* SITE TERMS CONDITION */
#site-terms-conditions{
    margin-top: 20px;
}

/* THEME */
.theme-thumbnail{
    position: relative;
    border-radius: 0;
}
.theme-thumbnail .theme-name{
    position: absolute;
    top: 4px;
    right: 4px;
    left: 4px;
    margin: 0;
    padding: 6px 12px;
    background-color: #797979;
    background-color: rgba(0, 0, 0, 0.5);
    font-size: 14px;
    line-height: 1.42857;
    color: #ffffff;
    text-shadow: 1px 1px 0 #000;
    box-sizing: border-box;
}
.theme-thumbnail img{
    margin-bottom: 4px;
}

/* MODULE */
#module-configuration ul,
.widget-configuration ul{
    list-style: none outside;
    padding-left: 0;
}
#module-configuration ul ul,
.widget-configuration ul ul{
    padding-left: 30px;
}
.widget-configuration .form-group{
    margin-bottom: 10px;
}
.widget-configuration .form-group:last-child{
    margin-bottom: 0;
}

/* RESPONSIVE */
@media (max-width: 991px) {
    .grid-view{
        overflow-x: auto;
    }
    .grid-view .summary{
        position: relative;
        right: 0;
        top: 0;
    }
    .grid-nav > .form-group > * {
        margin-bottom: 15px;
    }
}
.skin-blue .wrapper, .skin-blue .main-sidebar, .skin-blue .left-side {
    background-color: #ffffff;
    /* background-color: var(--header-color); */
}
.skin-blue .sidebar-menu>li.header {
    color: #000;
    background: var(--header-color);
}
.skin-blue .sidebar-menu>li:hover>a, .skin-blue .sidebar-menu>li.active>a {
    color: #656575;
    background: #FAE7E6;
    border-left-color: #FF2727;
    text-decoration: none !important;
}
.skin-blue .sidebar-menu>li>.treeview-menu {
    margin: 0 1px;
    background: #2c3b41;
}
.login-header img{
    max-width: 350px;
}

.skin-blue .main-header .navbar {
    background-color: var(--header-color);
}

.skin-blue .main-header .logo {
    background-color: #ffffff;
    color: #a94442;
    border-bottom: 0 solid transparent;
}

.skin-blue .sidebar a {
    color: #656575;
    font-weight: 700;
}
.main-footer {
    background: var(--header-color);
    padding: 15px;
    color: #000;
    border-top: 1px solid #d2d6de;
}
.ui-widget-content{
    float: right;
    position: absolute;
    left: 40%;
    top: 25%;
}
.skin-blue .main-header .logo:hover{
    background-color: white;
}
.skin-blue .main-header .navbar .sidebar-toggle:hover{
    background-color: var(--hover-color);
    text-decoration: none;
}
.skin-blue .main-header .navbar .nav>li>a,
.skin-blue .main-header .navbar .sidebar-toggle {
    color: #000;
}
.skin-blue .main-header .navbar .nav>li>a:hover, .skin-blue .main-header .navbar .nav>li>a:active, .skin-blue .main-header .navbar .nav>li>a:focus, .skin-blue .main-header .navbar .nav .open>a, .skin-blue .main-header .navbar .nav .open>a:hover, .skin-blue .main-header .navbar .nav .open>a:focus, .skin-blue .main-header .navbar .nav>.active>a {
    background: var(--hover-color);
    color: #fff;
}

 .finance-dashboard {
    font-family: "Inter", "Segoe UI", sans-serif;
    color: #1f2937;
}

/* Card */
.finance-card {
    background: #ffffff;
    border-radius: 14px;
    padding: 12px 14px 16px;
    margin-bottom: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
}

.card-title {
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.4px;
    color: #374151;
    margin-bottom: 18px;
}

/* Grid */
.finance-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.finance-grid-wallet {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.finance-grid.two {
    grid-template-columns: repeat(2, 1fr);
}

/* Stat Box */
.stat {
    background: #f9fafb;
    border-radius: 12px;
    padding: 18px 16px;
    border-left: 5px solid transparent;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    margin-bottom: 5px;
}

.stat:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.08);
}

/* Text */
.label {
    display: block;
    font-size: 12px;
    color: #6b7280;
    margin-bottom: 6px;
    text-align: left;
}

.value {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.2px;
}

/* Color Variants */
.success {
    border-color: #16a34a;
}

.success .value {
    color: #15803d;
}

.danger {
    border-color: #dc2626;
}

.danger .value {
    color: #b91c1c;
}

.primary {
    border-color: #2563eb;
}

.primary .value {
    color: #1d4ed8;
}

.warning {
    border-color: #d97706;
}

.warning .value {
    color: #b45309;
}

.info {
    border-color: #0284c7;
}

.info .value {
    color: #0369a1;
}

.neutral {
    border-color: #6b7280;
}

.neutral .value {
    color: #374151;
}

/* Responsive */
@media (max-width: 992px) {
    .finance-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .finance-grid,
    .finance-grid.two {
        grid-template-columns: 1fr;
    }

    .value {
        font-size: 18px;
    }
}


        /* Stations Grid */
        .stations-container {
            margin: 0 auto;
            padding: 0 2rem 3rem;
        }

        .stations-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
            gap: 1.5rem;
        }

        /* Station Card */
        .station-card {
            background: white;
            border-radius: 0.75rem;
            overflow: hidden;
            border: 1px solid #e2e8f0;
            transition: all 0.3s;
        }

        .station-card:hover {
            box-shadow: 0 10px 25px rgba(0,0,0,0.1);
            transform: translateY(-2px);
        }

        .card-header {
            background: #18385f;
            padding: 1.5rem;
            color: white;
        }

        .card-header-top {
            display: flex;
            justify-content: space-between;
            align-items: start;
        }

        .card-title-online {
            font-size: 16px;
            font-weight: 600;
            margin-bottom: 0.25rem;
            color: #fff;
        }

        .charger-id {
            color: #d1fae5;
        }

        .status-badge {
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }

        .status-dot {
            width: 0.75rem;
            height: 0.75rem;
            background: #6ee7b7;
            border-radius: 50%;
            animation: pulse 2s infinite;
        }

        @keyframes pulse {
            0%, 100% { opacity: 1; }
            50% { opacity: 0.5; }
        }

        /* Card Body */
        .card-body {
            padding: 1.5rem;
        }

        .info-section {
            margin-bottom: 1rem;
        }

        .info-label {
            font-size: 0.75rem;
            color: #64748b;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            margin-bottom: 0.25rem;
        }

        .info-value {
            color: #0f172a;
            font-weight: 500;
        }

        .contact-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin: 1rem 0;
        }

        .contact-item {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            color: #334155;
        }

        .icon {
            width: 1rem;
            height: 1rem;
            color: #94a3b8;
        }

        /* Connectors */
        .connectors {
            margin-top: 1rem;
            height: 100px;
        }

        .connector-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0.75rem;
            background: #f8fafc;
            border-radius: 0.5rem;
            margin-bottom: 0.5rem;
        }

        .connector-left {
            display: flex;
            align-items: center;
            gap: 0.75rem;
        }

        .connector-id {
            color: #64748b;
            font-family: 'Courier New', monospace;
        }

        .connector-status {
            padding: 0.25rem 0.75rem;
            border-radius: 9999px;
            font-size: 13px;
            font-weight: 500;
        }

        .status-charging {
            background: #3b82f6;
        }

        .status-available {
            background: #10b981;
        }

        .status-unknown {
            background: #94a3b8;
        }

        /* Card Footer */
        .card-footer {
            padding: 1rem 1.5rem;
            background: #f8fafc;
            border-top: 1px solid #e2e8f0;
        }

        .view-btn {
            width: 100%;
            padding: 0.625rem 1rem;
            background: #a94442;
            color: white;
            border: none;
            border-radius: 0.5rem;
            font-weight: 500;
            cursor: pointer;
            transition: all 0.2s;
        }

        .view-btn:hover {
            background: #059669;
        }

        /* SVG Icons */
        svg {
            display: inline-block;
        }

        /* Responsive */
        @media (max-width: 768px) {
            .header-content {
                flex-direction: column;
                gap: 1rem;
            }

            .stations-grid {
                grid-template-columns: 1fr;
            }

            .search-filter {
                flex-direction: column;
            }

            .search-box {
                min-width: 100%;
            }
        }