/* Dark Mode Styles */
:root {
    --dark-bg-color: #121212;
    --dark-card-bg: #1e1e1e;
    --dark-text-color: #e0e0e0;
    --dark-link-color: #90caf9;
    --dark-border-color: #333;
    --dark-input-bg: #2c2c2c;
    --dark-input-text: #e0e0e0;
    --dark-btn-primary: #1976d2;
    --dark-btn-primary-hover: #1565c0;
    --dark-btn-success: #2e7d32;
    --dark-btn-success-hover: #1b5e20;
    --dark-btn-danger: #c62828;
    --dark-btn-danger-hover: #b71c1c;
    --dark-btn-warning: #f57c00;
    --dark-btn-warning-hover: #ef6c00;
    --dark-btn-info: #0288d1;
    --dark-btn-info-hover: #0277bd;
    --dark-table-header-bg: #333;
    --dark-table-row-hover: #2c2c2c;
    --dark-flash-success-bg: rgba(46, 125, 50, 0.2);
    --dark-flash-danger-bg: rgba(198, 40, 40, 0.2);
    --dark-flash-warning-bg: rgba(245, 124, 0, 0.2);
    --dark-flash-info-bg: rgba(2, 136, 209, 0.2);
}

body.dark-mode {
    background-color: var(--dark-bg-color);
    color: var(--dark-text-color);
}

/* Navigation */
body.dark-mode nav {
    background-color: var(--dark-card-bg);
    border-bottom: 1px solid var(--dark-border-color);
}

body.dark-mode nav ul li a {
    color: var(--dark-text-color);
}

body.dark-mode nav ul li a:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

/* Cards */
body.dark-mode .card {
    background-color: var(--dark-card-bg);
    border: 1px solid var(--dark-border-color);
}

body.dark-mode .card-header {
    background-color: rgba(0, 0, 0, 0.2);
    border-bottom: 1px solid var(--dark-border-color);
}

/* Links */
body.dark-mode a {
    color: var(--dark-link-color);
}

body.dark-mode a:hover {
    color: #bbdefb;
}

/* Tables */
body.dark-mode table {
    border-color: var(--dark-border-color);
}

body.dark-mode table th {
    background-color: var(--dark-table-header-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode table td {
    border-color: var(--dark-border-color);
}

body.dark-mode table tr:hover {
    background-color: var(--dark-table-row-hover);
}

/* Forms */
body.dark-mode input[type="text"],
body.dark-mode input[type="password"],
body.dark-mode input[type="email"],
body.dark-mode input[type="number"],
body.dark-mode input[type="url"],
body.dark-mode select,
body.dark-mode textarea {
    background-color: var(--dark-input-bg);
    color: var(--dark-input-text);
    border-color: var(--dark-border-color);
}

body.dark-mode input[type="text"]:focus,
body.dark-mode input[type="password"]:focus,
body.dark-mode input[type="email"]:focus,
body.dark-mode input[type="number"]:focus,
body.dark-mode input[type="url"]:focus,
body.dark-mode select:focus,
body.dark-mode textarea:focus {
    border-color: var(--dark-link-color);
    box-shadow: 0 0 0 0.2rem rgba(144, 202, 249, 0.25);
}

/* Buttons */
body.dark-mode .btn-primary {
    background-color: var(--dark-btn-primary);
    border-color: var(--dark-btn-primary);
}

body.dark-mode .btn-primary:hover {
    background-color: var(--dark-btn-primary-hover);
    border-color: var(--dark-btn-primary-hover);
}

body.dark-mode .btn-success {
    background-color: var(--dark-btn-success);
    border-color: var(--dark-btn-success);
}

body.dark-mode .btn-success:hover {
    background-color: var(--dark-btn-success-hover);
    border-color: var(--dark-btn-success-hover);
}

body.dark-mode .btn-danger {
    background-color: var(--dark-btn-danger);
    border-color: var(--dark-btn-danger);
}

body.dark-mode .btn-danger:hover {
    background-color: var(--dark-btn-danger-hover);
    border-color: var(--dark-btn-danger-hover);
}

body.dark-mode .btn-warning {
    background-color: var(--dark-btn-warning);
    border-color: var(--dark-btn-warning);
    color: white;
}

body.dark-mode .btn-warning:hover {
    background-color: var(--dark-btn-warning-hover);
    border-color: var(--dark-btn-warning-hover);
    color: white;
}

body.dark-mode .btn-info {
    background-color: var(--dark-btn-info);
    border-color: var(--dark-btn-info);
}

body.dark-mode .btn-info:hover {
    background-color: var(--dark-btn-info-hover);
    border-color: var(--dark-btn-info-hover);
}

/* Flash Messages */
body.dark-mode .flash-success {
    background-color: var(--dark-flash-success-bg);
    border-color: var(--dark-btn-success);
    color: var(--dark-text-color);
}

body.dark-mode .flash-danger {
    background-color: var(--dark-flash-danger-bg);
    border-color: var(--dark-btn-danger);
    color: var(--dark-text-color);
}

body.dark-mode .flash-warning {
    background-color: var(--dark-flash-warning-bg);
    border-color: var(--dark-btn-warning);
    color: var(--dark-text-color);
}

body.dark-mode .flash-info {
    background-color: var(--dark-flash-info-bg);
    border-color: var(--dark-btn-info);
    color: var(--dark-text-color);
}

/* Modal */
body.dark-mode .modal-content {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .close {
    color: var(--dark-text-color);
}

/* Dark mode toggle */
.dark-mode-toggle {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    margin-left: 10px;
}

.dark-mode-toggle input {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

.dark-mode-toggle .toggle {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 20px;
    background-color: #ccc;
    border-radius: 20px;
    transition: all 0.3s;
    margin-left: 8px;
}

.dark-mode-toggle .toggle:after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: white;
    top: 2px;
    left: 2px;
    transition: all 0.3s;
}

.dark-mode-toggle input:checked + .toggle {
    background-color: #2196F3;
}

.dark-mode-toggle input:checked + .toggle:after {
    left: calc(100% - 18px);
}

/* Book cards in dark mode */
body.dark-mode .book-card {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .book-card a {
    color: var(--dark-text-color);
}

body.dark-mode .badge {
    background-color: var(--dark-btn-info);
}

/* QR code containers */
body.dark-mode .qr-code-container {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

/* Shelf cards */
body.dark-mode .shelf-card {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

/* Code blocks */
body.dark-mode code {
    background-color: #2d2d2d;
    color: #e0e0e0;
}

/* Task Management Dark Mode Styles */
body.dark-mode .task-list {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .task-list h3 {
    color: var(--dark-link-color);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .task-item {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .task-item:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .task-title {
    color: var(--dark-text-color);
}

body.dark-mode .task-description {
    color: var(--dark-text-color);
    opacity: 0.8;
}

body.dark-mode .task-due {
    color: var(--dark-btn-warning);
}

body.dark-mode .task-priority {
    color: var(--dark-btn-info);
}

body.dark-mode .task-meta {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .no-tasks {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .no-tasks a {
    color: var(--dark-link-color);
}

body.dark-mode .task-list-footer {
    border-top-color: var(--dark-border-color);
}

/* Task detail pages */
body.dark-mode .task-meta-panel,
body.dark-mode .actions-panel {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .task-meta-panel h4,
body.dark-mode .actions-panel h4 {
    color: var(--dark-link-color);
}

body.dark-mode .meta-item {
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .detail-section h4 {
    color: var(--dark-link-color);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .completion-item {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

/* Task Notes Dark Mode */
body.dark-mode .note-item {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .note-content p {
    color: var(--dark-text-color);
}

body.dark-mode .note-timestamp {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .add-note-form {
    border-top-color: var(--dark-border-color);
}

body.dark-mode .no-notes {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Priority badges in dark mode */
body.dark-mode .priority-badge.priority-1 {
    background: #2d2d2d;
    color: #adb5bd;
}

body.dark-mode .priority-badge.priority-2 {
    background: #1e4d3a;
    color: #75b798;
}

body.dark-mode .priority-badge.priority-3 {
    background: #1e3a5f;
    color: #6bb6ff;
}

body.dark-mode .priority-badge.priority-4 {
    background: #5d4e37;
    color: #ffc107;
}

body.dark-mode .priority-badge.priority-5 {
    background: #5d2e2e;
    color: #ff6b6b;
}

/* Status badges in dark mode */
body.dark-mode .status-badge.completed {
    background: #1e4d3a;
    color: #75b798;
}

body.dark-mode .status-badge.pending {
    background: #5d4e37;
    color: #ffc107;
}

/* Alert messages in dark mode */
body.dark-mode .alert {
    border-color: var(--dark-border-color);
}

body.dark-mode .alert.alert-success {
    background-color: var(--dark-flash-success-bg);
    color: var(--dark-text-color);
    border-color: var(--dark-btn-success);
}

/* Dashboard Stats Cards */
body.dark-mode .stat-card {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .stat-card h3 {
    color: var(--dark-link-color);
}

body.dark-mode .stat-card p {
    color: var(--dark-text-color);
}

body.dark-mode .text-warning {
    color: var(--dark-btn-warning) !important;
}

body.dark-mode .text-success {
    color: var(--dark-btn-success) !important;
}

/* Activity List */
body.dark-mode .activity-list {
    background-color: var(--dark-card-bg);
    border: 1px solid var(--dark-border-color);
    border-radius: 8px;
    padding: 1rem;
}

body.dark-mode .activity-item {
    border-bottom-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .activity-item strong {
    color: var(--dark-link-color);
}

body.dark-mode .activity-time {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Dashboard Bookmarks Sidebar */
body.dark-mode .bookmarks-sidebar {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .bookmarks-sidebar h4 {
    color: var(--dark-link-color);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .compact-bookmark {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .compact-bookmark:hover {
    background-color: rgba(255, 255, 255, 0.05);
    color: var(--dark-link-color);
}

body.dark-mode .compact-bookmark-title {
    color: var(--dark-text-color);
}

body.dark-mode .compact-badge {
    background-color: var(--dark-btn-info);
    color: var(--dark-text-color);
}

/* Dashboard section headers */
body.dark-mode h3 {
    color: var(--dark-link-color);
}

/* QR Scanner Instructions Card */
body.dark-mode .card {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .card-header {
    background-color: var(--dark-input-bg);
    border-bottom-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .card-body {
    color: var(--dark-text-color);
}

body.dark-mode .card-body ul li {
    color: var(--dark-text-color);
}

body.dark-mode .card-body code {
    background-color: var(--dark-input-bg);
    color: var(--dark-link-color);
    border: 1px solid var(--dark-border-color);
    padding: 0.2rem 0.4rem;
    border-radius: 3px;
}

/* Contacts Dark Mode Styles */
body.dark-mode .contact-card {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .contact-card:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .contact-name a {
    color: var(--dark-link-color);
}

body.dark-mode .contact-company {
    color: var(--dark-btn-info);
}

body.dark-mode .contact-title {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .contact-header {
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .detail-text {
    color: var(--dark-text-color);
}

body.dark-mode .no-contacts {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Contact View Dark Mode */
body.dark-mode .contact-info-section,
body.dark-mode .contact-section {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .contact-info-section h3,
body.dark-mode .contact-section h3 {
    color: var(--dark-link-color);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .notes-content {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .add-form {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .form-row input,
body.dark-mode .form-row select {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .contact-item {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .item-label {
    color: var(--dark-btn-info);
}

body.dark-mode .item-type {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .primary-badge {
    background-color: var(--dark-btn-success);
}

body.dark-mode .no-items {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .sidebar-section {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .sidebar-section h4 {
    color: var(--dark-link-color);
}

/* Checklists Dark Mode Styles */
body.dark-mode .checklist-card,
body.dark-mode .checklist-item {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .checklist-card:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .checklist-name a {
    color: var(--dark-link-color);
}

body.dark-mode .checklist-description {
    color: var(--dark-text-color);
    opacity: 0.8;
}

body.dark-mode .checklist-header {
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .progress-bar {
    background-color: var(--dark-border-color);
}

body.dark-mode .progress-fill {
    background-color: var(--dark-btn-success);
}

body.dark-mode .progress-text {
    color: var(--dark-text-color);
}

body.dark-mode .checklist-date {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .no-checklists {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Checklist Table Dark Mode */
body.dark-mode .checklists-table {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .checklists-table thead {
    background-color: var(--dark-input-bg);
}

body.dark-mode .checklists-table th {
    color: var(--dark-text-color);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .checklists-table tbody tr {
    background-color: var(--dark-card-bg);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .checklists-table tbody tr:hover {
    background-color: var(--dark-input-bg);
}

body.dark-mode .checklists-table td {
    color: var(--dark-text-color);
}

body.dark-mode .checklist-link {
    color: var(--dark-link-color);
}

body.dark-mode .checklist-link:hover {
    color: #bbdefb;
}

body.dark-mode .description-text {
    color: var(--dark-text-color);
}

body.dark-mode .no-description {
    color: var(--dark-text-color);
    opacity: 0.6;
}

body.dark-mode .progress-stats {
    color: var(--dark-text-color);
}

body.dark-mode .public-badge {
    background-color: var(--dark-btn-success);
}

body.dark-mode .owner-badge {
    background-color: var(--dark-btn-info);
}

/* Dashboard Checklist Table Dark Mode */
body.dark-mode .dashboard-checklists-table {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .dashboard-checklists-table thead {
    background-color: var(--dark-input-bg);
}

body.dark-mode .dashboard-checklists-table th {
    color: var(--dark-text-color);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .dashboard-checklists-table tbody tr {
    background-color: var(--dark-card-bg);
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .dashboard-checklists-table tbody tr:hover {
    background-color: var(--dark-input-bg);
}

body.dark-mode .dashboard-checklists-table td {
    color: var(--dark-text-color);
}

/* Checklist View Dark Mode */
body.dark-mode .progress-overview,
body.dark-mode .add-form {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .form-row input {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .checklist-item:hover {
    background-color: var(--dark-card-bg);
}

body.dark-mode .checklist-item.completed {
    background-color: rgba(40, 167, 69, 0.2);
}

body.dark-mode .checklist-item.completed .item-text {
    color: var(--dark-text-color);
    opacity: 0.6;
}

body.dark-mode .item-text {
    color: var(--dark-text-color);
}

body.dark-mode .no-items {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Recipes Dark Mode Styles */
body.dark-mode .filters-section,
body.dark-mode .recipe-card,
body.dark-mode .recipe-overview,
body.dark-mode .ingredients-section,
body.dark-mode .instructions-section,
body.dark-mode .tags-section,
body.dark-mode .notes-section {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .recipe-card:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .recipe-title a {
    color: var(--dark-link-color);
}

body.dark-mode .recipe-description {
    color: var(--dark-text-color);
    opacity: 0.9;
}

body.dark-mode .recipe-header {
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .meta-item {
    background-color: var(--dark-card-bg);
}

body.dark-mode .filter-group input,
body.dark-mode .filter-group select,
body.dark-mode .rating-input select,
body.dark-mode .review-input textarea {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .ingredients-list li {
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .ingredients-section h3,
body.dark-mode .instructions-section h3 {
    color: var(--dark-link-color);
}

body.dark-mode .recipe-times span,
body.dark-mode .recipe-servings,
body.dark-mode .recipe-rating,
body.dark-mode .no-content {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .no-recipes {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .favorite-btn {
    background-color: var(--dark-input-bg) !important;
    border-color: var(--dark-border-color) !important;
    color: var(--dark-text-color) !important;
}

body.dark-mode .recipe-actions {
    border-top-color: var(--dark-border-color);
}

body.dark-mode .rating-section {
    border-top-color: var(--dark-border-color);
}

/* Health Logs Dark Mode Styles */
body.dark-mode .filters-section,
body.dark-mode .entry-overview,
body.dark-mode .vital-card,
body.dark-mode .notes-section {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .table {
    color: var(--dark-text-color);
}

body.dark-mode .table th {
    background-color: var(--dark-input-bg);
    color: var(--dark-text-color);
}

body.dark-mode .table-striped tbody tr:nth-child(even) {
    background-color: var(--dark-input-bg);
}

body.dark-mode .table th,
body.dark-mode .table td {
    border-bottom-color: var(--dark-border-color);
}

body.dark-mode .vital-card:hover {
    background-color: rgba(255, 255, 255, 0.05);
}

body.dark-mode .vital-value {
    color: var(--dark-text-color);
}

body.dark-mode .vital-note {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .notes-preview {
    color: var(--dark-text-color);
    opacity: 0.8;
}

body.dark-mode .no-logs {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .filter-group input {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .entry-actions {
    border-top-color: var(--dark-border-color);
}

body.dark-mode .vitals-section h3 {
    color: var(--dark-link-color);
}

body.dark-mode .vital-header h4 {
    color: var(--dark-text-color);
}

body.dark-mode .entry-meta {
    color: var(--dark-text-color);
}

body.dark-mode .meta-item {
    color: var(--dark-text-color);
}

body.dark-mode .notes-content {
    color: var(--dark-text-color);
}

body.dark-mode .section-header h3 {
    color: var(--dark-link-color);
}

body.dark-mode .input-with-unit .unit {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .form-text {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .action-buttons .btn {
    border-color: var(--dark-border-color);
}

/* Health status indicators - keep original colors for visibility */
body.dark-mode .health-indicator.normal {
    background: #28a745;
    color: white;
}

body.dark-mode .health-indicator.elevated {
    background: #ffc107;
    color: #212529;
}

body.dark-mode .health-indicator.high {
    background: #dc3545;
    color: white;
}

body.dark-mode .health-indicator.low {
    background: #17a2b8;
    color: white;
}

body.dark-mode .vital-status.normal {
    background: #28a745;
    color: white;
}

body.dark-mode .vital-status.elevated {
    background: #ffc107;
    color: #212529;
}

body.dark-mode .vital-status.high {
    background: #dc3545;
    color: white;
}

body.dark-mode .vital-status.low {
    background: #17a2b8;
    color: white;
}

/* QR Code Dark Mode Styles */
body.dark-mode .qr-code-container {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .qr-code-container h3 {
    color: var(--dark-link-color);
}

body.dark-mode .qr-code-container p {
    color: var(--dark-text-color);
}

body.dark-mode .qr-code-container code {
    background-color: var(--dark-input-bg);
    color: var(--dark-link-color);
    border: 1px solid var(--dark-border-color);
}

body.dark-mode .qr-code-display {
    background-color: white;
    border-color: var(--dark-border-color);
}

body.dark-mode .qr-instructions {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .qr-instructions h4 {
    color: var(--dark-link-color);
}

body.dark-mode .qr-instructions ul li {
    color: var(--dark-text-color);
}

body.dark-mode .qr-text {
    color: var(--dark-text-color);
}

body.dark-mode .qr-command {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

/* QR Scanner Dark Mode */
body.dark-mode #qr-reader {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode #qr-reader-results {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .scanner-instructions {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .scanner-instructions h4 {
    color: var(--dark-link-color);
}

body.dark-mode .scanner-instructions p,
body.dark-mode .scanner-instructions li {
    color: var(--dark-text-color);
}

/* Bookmark Pages Dark Mode Styles */

/* Bookmark List Page (list.html) */
body.dark-mode .filter-form .row {
    color: var(--dark-text-color);
}

body.dark-mode .bookmarks-grid {
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-card {
    background-color: var(--dark-card-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-card:hover {
    background-color: var(--dark-input-bg);
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}

body.dark-mode .bookmark-header h4 {
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-link {
    color: var(--dark-link-color);
}

body.dark-mode .bookmark-link:hover {
    color: #bbdefb;
}

body.dark-mode .bookmark-url {
    color: var(--dark-text-color);
    opacity: 0.8;
}

body.dark-mode .bookmark-notes {
    color: var(--dark-text-color);
    opacity: 0.9;
}

body.dark-mode .bookmark-meta {
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-footer {
    border-top-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-footer small {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Badge styles for bookmarks */
body.dark-mode .badge-category {
    background-color: var(--dark-btn-info);
    color: var(--dark-text-color);
}

body.dark-mode .badge-tag {
    background-color: var(--dark-btn-primary);
    color: var(--dark-text-color);
}

body.dark-mode .badge-public {
    background-color: var(--dark-btn-success);
    color: var(--dark-text-color);
}

body.dark-mode .badge-permanent {
    background-color: var(--dark-btn-warning);
    color: var(--dark-text-color);
}

body.dark-mode .badge-shared {
    background-color: var(--dark-btn-info);
    color: var(--dark-text-color);
}

body.dark-mode .badge-private {
    background-color: var(--dark-btn-warning);
    color: var(--dark-text-color);
}

body.dark-mode .badge-temporary {
    background-color: var(--dark-btn-danger);
    color: var(--dark-text-color);
}

/* Bookmark Add/Edit Pages (add.html, edit.html) */
body.dark-mode .form-group label {
    color: var(--dark-text-color);
}

body.dark-mode .form-check-label {
    color: var(--dark-text-color);
}

body.dark-mode .form-text {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .info-panel {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .info-panel h5 {
    color: var(--dark-link-color);
}

body.dark-mode .info-item {
    border-bottom-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

/* Bookmark View Page (view.html) */
body.dark-mode .bookmark-url {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-notes p {
    background-color: var(--dark-input-bg);
    border-left-color: var(--dark-link-color);
    color: var(--dark-text-color);
}

body.dark-mode .bookmark-meta,
body.dark-mode .bookmark-stats {
    color: var(--dark-text-color);
}

body.dark-mode .meta-item,
body.dark-mode .stat-item {
    border-bottom-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .shared-users {
    color: var(--dark-text-color);
}

body.dark-mode .shared-users ul {
    color: var(--dark-text-color);
}

body.dark-mode .actions-panel {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
}

body.dark-mode .actions-panel h4 {
    color: var(--dark-link-color);
}

/* Bookmark Categories Page (categories.html) */
body.dark-mode .categories-list {
    border-color: var(--dark-border-color);
    background-color: var(--dark-card-bg);
}

body.dark-mode .category-item {
    border-bottom-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .category-item:hover {
    background-color: var(--dark-input-bg);
}

body.dark-mode .category-name {
    color: var(--dark-text-color);
}

body.dark-mode .category-info {
    border-top-color: var(--dark-border-color);
}

body.dark-mode .info-content {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .info-content ul,
body.dark-mode .info-content li {
    color: var(--dark-text-color);
}

body.dark-mode .tips {
    border-top-color: var(--dark-border-color);
}

body.dark-mode .tips h5 {
    color: var(--dark-link-color);
}

/* Bookmark Share Page (share.html) */
body.dark-mode .bookmark-url {
    color: var(--dark-text-color);
    opacity: 0.8;
}

body.dark-mode .shared-users-list {
    border-color: var(--dark-border-color);
    background-color: var(--dark-card-bg);
}

body.dark-mode .shared-user-item {
    border-bottom-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .username {
    color: var(--dark-text-color);
}

body.dark-mode .sharing-info {
    border-top-color: var(--dark-border-color);
}

body.dark-mode .info-grid {
    color: var(--dark-text-color);
}

body.dark-mode .info-item {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .info-item strong {
    color: var(--dark-text-color);
}

body.dark-mode .info-item small {
    color: var(--dark-text-color);
    opacity: 0.7;
}

body.dark-mode .sharing-note {
    background-color: var(--dark-input-bg);
    border-color: var(--dark-border-color);
    color: var(--dark-text-color);
}

body.dark-mode .sharing-note ul,
body.dark-mode .sharing-note li,
body.dark-mode .sharing-note p {
    color: var(--dark-text-color);
}

/* General bookmark page text elements */
body.dark-mode .text-muted {
    color: var(--dark-text-color);
    opacity: 0.7;
}

/* Ensure all bookmark page headings are properly styled */
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5 {
    color: var(--dark-text-color);
}

/* Special case for primary colored headings */
body.dark-mode .info-panel h5,
body.dark-mode .actions-panel h4,
body.dark-mode .tips h5 {
    color: var(--dark-link-color);
}