/* Custom Admin Theme - Blue and Orange */
/* Power Plus Utility Admin Panel */

:root {
    --primary-blue: #1976D2;
    --primary-blue-dark: #1565C0;
    --primary-blue-light: #42A5F5;
    --accent-orange: #FF6F00;
    --accent-orange-dark: #E65100;
    --accent-orange-light: #FF9800;
    --text-dark: #212121;
    --text-light: #757575;
    --bg-light: #F5F5F5;
    --white: #FFFFFF;
}

/* Main sidebar styling */
.sidebar-dark-primary {
    background: linear-gradient(180deg, var(--primary-blue-dark) 0%, var(--primary-blue) 100%) !important;
}

.sidebar-dark-primary .nav-link.active {
    background-color: var(--accent-orange) !important;
    color: var(--white) !important;
}

.sidebar-dark-primary .nav-link:hover {
    background-color: rgba(255, 111, 0, 0.2) !important;
}

/* Brand/Logo area */
.brand-link {
    border-bottom: 1px solid rgba(255, 111, 0, 0.3) !important;
}

.brand-text {
    color: var(--white) !important;
    font-weight: 600 !important;
}

/* Navbar styling */
.navbar-white {
    background-color: var(--white) !important;
    border-bottom: 3px solid var(--primary-blue) !important;
}

/* Primary buttons */
.btn-primary {
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
}

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

/* Warning/Orange buttons */
.btn-warning {
    background-color: var(--accent-orange) !important;
    border-color: var(--accent-orange) !important;
    color: var(--white) !important;
}

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

/* Links */
a {
    color: var(--primary-blue);
}

a:hover {
    color: var(--primary-blue-dark) !important;
}

/* Accent elements */
.accent-warning {
    color: var(--accent-orange) !important;
}

/* Card headers */
.card-header {
    background: linear-gradient(90deg, var(--primary-blue) 0%, var(--primary-blue-light) 100%) !important;
    color: var(--white) !important;
}

/* Tables */
.table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(25, 118, 210, 0.05) !important;
}

/* Active page in pagination */
.pagination .page-item.active .page-link {
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
}

.pagination .page-link {
    color: var(--primary-blue) !important;
}

.pagination .page-link:hover {
    background-color: var(--accent-orange-light) !important;
    color: var(--white) !important;
}

/* Form controls focus */
.form-control:focus {
    border-color: var(--primary-blue) !important;
    box-shadow: 0 0 0 0.2rem rgba(25, 118, 210, 0.25) !important;
}

/* Submit row */
.submit-row {
    background: linear-gradient(90deg, var(--bg-light) 0%, var(--white) 100%) !important;
    border-top: 2px solid var(--primary-blue) !important;
}

/* Sidebar icons color */
.nav-icon {
    color: var(--accent-orange-light) !important;
}

.nav-link.active .nav-icon {
    color: var(--white) !important;
}

/* Dashboard stats cards */
.small-box {
    border-radius: 8px !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}

.small-box.bg-info {
    background: linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-blue-light) 100%) !important;
}

.small-box.bg-warning {
    background: linear-gradient(135deg, var(--accent-orange) 0%, var(--accent-orange-light) 100%) !important;
}

/* Login page */
.login-page {
    background: linear-gradient(135deg, var(--primary-blue-dark) 0%, var(--primary-blue-light) 50%, var(--accent-orange-light) 100%) !important;
}

.login-box .card {
    border-radius: 10px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.2) !important;
}

.login-card-body .btn-primary {
    background: linear-gradient(90deg, var(--primary-blue) 0%, var(--accent-orange) 100%) !important;
    border: none !important;
    font-weight: 600 !important;
}

/* Breadcrumb */
.breadcrumb-item.active {
    color: var(--accent-orange) !important;
}

/* Info boxes on dashboard */
.info-box-icon {
    border-radius: 8px !important;
}

.bg-primary {
    background-color: var(--primary-blue) !important;
}

.bg-warning {
    background-color: var(--accent-orange) !important;
}

/* Action checkboxes */
.action-checkbox:checked {
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
}

/* Success messages */
.alert-success {
    background-color: #4CAF50 !important;
    border-color: #4CAF50 !important;
    color: var(--white) !important;
}

/* Info messages */
.alert-info {
    background-color: var(--primary-blue) !important;
    border-color: var(--primary-blue) !important;
    color: var(--white) !important;
}

/* Warning messages */
.alert-warning {
    background-color: var(--accent-orange) !important;
    border-color: var(--accent-orange) !important;
    color: var(--white) !important;
}

/* Inline forms styling */
.form-row {
    border-bottom: 1px solid rgba(25, 118, 210, 0.1) !important;
}

.form-row:hover {
    background-color: rgba(25, 118, 210, 0.05) !important;
}

/* Add/change form tabs */
.nav-tabs .nav-link.active {
    background-color: var(--primary-blue) !important;
    color: var(--white) !important;
    border-color: var(--primary-blue) !important;
}

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

/* Required field asterisks */
.required:after {
    color: var(--accent-orange) !important;
}

/* Help text */
.help {
    color: var(--text-light) !important;
}

/* Module headers in admin index */
.module h2 {
    background: linear-gradient(90deg, var(--primary-blue) 0%, var(--primary-blue-light) 100%) !important;
    color: var(--white) !important;
    padding: 10px 15px !important;
    border-radius: 5px !important;
}

/* Change list filters */
#changelist-filter h2 {
    background-color: var(--primary-blue) !important;
    color: var(--white) !important;
    padding: 10px !important;
    border-radius: 5px 5px 0 0 !important;
}

#changelist-filter li.selected a {
    color: var(--accent-orange) !important;
    font-weight: 600 !important;
}

/* Search box */
#searchbar {
    border: 2px solid var(--primary-blue) !important;
    border-radius: 20px !important;
}

#searchbar:focus {
    border-color: var(--accent-orange) !important;
    box-shadow: 0 0 0 0.2rem rgba(255, 111, 0, 0.25) !important;
}

/* Object tools (add buttons, etc) */
.object-tools a {
    background-color: var(--accent-orange) !important;
    color: var(--white) !important;
    border-radius: 5px !important;
}

.object-tools a:hover {
    background-color: var(--accent-orange-dark) !important;
}

/* Inline model styling */
.inline-group {
    border: 2px solid var(--primary-blue) !important;
    border-radius: 8px !important;
    margin: 20px 0 !important;
    padding: 15px !important;
    background-color: var(--white) !important;
}

.inline-group h2 {
    background: linear-gradient(90deg, var(--primary-blue) 0%, var(--primary-blue-light) 100%) !important;
    color: var(--white) !important;
    padding: 10px 15px !important;
    border-radius: 5px !important;
    margin: -15px -15px 15px -15px !important;
}

/* Tabular inline tables */
.inline-group .tabular {
    border: none !important;
}

.inline-group .tabular thead th {
    background-color: var(--primary-blue) !important;
    color: var(--white) !important;
    padding: 10px !important;
}

.inline-group .tabular tbody tr {
    border-bottom: 1px solid rgba(25, 118, 210, 0.1) !important;
}

.inline-group .tabular tbody tr:hover {
    background-color: rgba(25, 118, 210, 0.05) !important;
}

/* Stacked inline styling */
.inline-related {
    background-color: var(--bg-light) !important;
    border: 1px solid rgba(25, 118, 210, 0.2) !important;
    border-radius: 5px !important;
    padding: 15px !important;
    margin-bottom: 15px !important;
}

.inline-related h3 {
    background: linear-gradient(90deg, var(--accent-orange) 0%, var(--accent-orange-light) 100%) !important;
    color: var(--white) !important;
    padding: 8px 12px !important;
    border-radius: 4px !important;
    margin: -15px -15px 15px -15px !important;
    font-size: 14px !important;
}

/* Add another inline button */
.add-row a, .add-row td a {
    background-color: var(--accent-orange) !important;
    color: var(--white) !important;
    padding: 8px 15px !important;
    border-radius: 5px !important;
    text-decoration: none !important;
    display: inline-block !important;
    margin-top: 10px !important;
}

.add-row a:hover, .add-row td a:hover {
    background-color: var(--accent-orange-dark) !important;
}

/* Delete inline checkbox styling */
.inline-deletelink {
    color: #d32f2f !important;
}

/* Empty form template */
.empty-form {
    display: none !important;
}
