/* 
* Default Theme for Property Management System
*/

/* Base colors */
:root {
    --primary: #2c3e50;
    --secondary: #34495e;
    --success: #27ae60;
    --info: #3498db;
    --warning: #f39c12;
    --danger: #e74c3c;
    --light: #ecf0f1;
    --dark: #2c3e50;
    
    --body-bg: #f5f8fa;
    --body-color: #2c3e50;
    
    --sidebar-bg: #2c3e50;
    --sidebar-color: #ecf0f1;
    --sidebar-active-bg: #34495e;
    --sidebar-active-color: #fff;
    --sidebar-hover-bg: #34495e;
    --sidebar-hover-color: #fff;
    --sidebar-header-bg: #243342;
    --sidebar-header-color: #ecf0f1;
    
    --header-bg: #2c3e50;
    --header-color: #ffffff;
    
    --card-bg: #ffffff;
    --card-border: 1px solid rgba(0, 0, 0, 0.125);
    --card-cap-bg: #f8f9fa;
    --card-cap-color: #2c3e50;
    
    --input-bg: #ffffff;
    --input-color: #495057;
    --input-border: #ced4da;
    --input-focus-border: #80bdff;
    
    --btn-primary-bg: #3498db;
    --btn-primary-color: #ffffff;
    --btn-secondary-bg: #95a5a6;
    --btn-secondary-color: #ffffff;
}

/* Apply base colors */
body {
    background-color: var(--body-bg);
    color: var(--body-color);
}

/* Header styling */
header.navbar {
    background-color: var(--header-bg);
    color: var(--header-color);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.8);
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: #fff;
}

/* Sidebar styling */
.sidebar {
    background-color: var(--sidebar-bg);
    color: var(--sidebar-color);
    box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
}

.sidebar-header {
    background-color: var(--sidebar-header-bg);
    color: var(--sidebar-header-color);
}

.sidebar-menu li.header {
    color: rgba(255, 255, 255, 0.5);
}

.sidebar-menu a {
    color: var(--sidebar-color);
}

.sidebar-menu a:hover {
    background-color: var(--sidebar-hover-bg);
    color: var(--sidebar-hover-color);
}

.sidebar-menu li.active > a {
    background-color: var(--sidebar-active-bg);
    color: var(--sidebar-active-color);
    border-left: 4px solid var(--info);
}

.sidebar-footer {
    color: rgba(255, 255, 255, 0.5);
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* Card styling */
.card {
    background-color: var(--card-bg);
    border: var(--card-border);
}

.card-header {
    background-color: var(--card-cap-bg);
    color: var(--card-cap-color);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

/* Stats card styling */
.stat-card .stat-icon {
    background: linear-gradient(135deg, rgba(52, 152, 219, 0.15) 0%, rgba(52, 152, 219, 0.25) 100%);
    color: #2980b9;
    border: 2px solid rgba(52, 152, 219, 0.1);
}

.stat-card.stat-primary .stat-icon {
    background: linear-gradient(135deg, rgba(52, 152, 219, 0.15) 0%, rgba(52, 152, 219, 0.25) 100%);
    color: #2980b9;
    border: 2px solid rgba(52, 152, 219, 0.1);
}

.stat-card.stat-success .stat-icon {
    background: linear-gradient(135deg, rgba(39, 174, 96, 0.15) 0%, rgba(39, 174, 96, 0.25) 100%);
    color: #229954;
    border: 2px solid rgba(39, 174, 96, 0.1);
}

.stat-card.stat-warning .stat-icon {
    background: linear-gradient(135deg, rgba(243, 156, 18, 0.15) 0%, rgba(243, 156, 18, 0.25) 100%);
    color: #d68910;
    border: 2px solid rgba(243, 156, 18, 0.1);
}

.stat-card.stat-danger .stat-icon {
    background: linear-gradient(135deg, rgba(231, 76, 60, 0.15) 0%, rgba(231, 76, 60, 0.25) 100%);
    color: #c0392b;
    border: 2px solid rgba(231, 76, 60, 0.1);
}

/* Form control styling */
.form-control {
    background-color: var(--input-bg);
    color: var(--input-color);
    border-color: var(--input-border);
}

.form-control:focus {
    border-color: var(--input-focus-border);
    box-shadow: 0 0 0 0.25rem rgba(52, 152, 219, 0.25);
}

/* Button styling */
.btn-primary {
    background-color: var(--btn-primary-bg);
    border-color: var(--btn-primary-bg);
    color: var(--btn-primary-color);
}

.btn-secondary {
    background-color: var(--btn-secondary-bg);
    border-color: var(--btn-secondary-bg);
    color: var(--btn-secondary-color);
}

/* Status colors */
.status-indicator.status-active {
    background-color: #27ae60;
}

.status-indicator.status-inactive {
    background-color: #95a5a6;
}

.status-indicator.status-pending {
    background-color: #f39c12;
}

.status-indicator.status-danger {
    background-color: #e74c3c;
}

/* Theme preview for settings page */
.theme-preview.theme-default .theme-preview-header,
.theme-preview.theme-default .theme-preview-sidebar {
    background-color: #2c3e50;
}

.theme-preview.theme-default .theme-preview-main {
    background-color: #f5f8fa;
}

/* Pagination styling */
.pagination .page-item.active .page-link {
    background-color: var(--btn-primary-bg);
    border-color: var(--btn-primary-bg);
}

.pagination .page-link {
    color: var(--btn-primary-bg);
}

/* Table styling */
.table-hover tbody tr:hover {
    background-color: rgba(52, 152, 219, 0.05);
}

.table th {
    background-color: var(--card-cap-bg);
    border-top: none;
}

/* Custom scroll bar */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.05);
}

::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}
