/* Additional Dark Theme Styling */
.summary-container .card {
    background-color: var(--bg-light);
    border-color: var(--border-color);
}

.summary-item {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
}

.summary-value {
    color: var(--text);
}

.summary-label {
    color: var(--text-muted);
}

/* Stat cards */
.stat-card {
    background-color: var(--bg-dark) !important;
    border-color: var(--border-color) !important;
    color: var(--text);
}

.stat-number {
    color: var(--text);
}

.stat-label {
    color: var(--text-muted);
}

/* Feature categories */
.feature-category h3 {
    color: var(--primary);
}

.feature-category .list-unstyled li {
    color: var(--text);
}

.feature-category .list-unstyled li:hover {
    color: var(--primary);
}

/* Timeline items */
.timeline-content,
.timeline-content-detailed,
.timeline-content-compact {
    background-color: var(--bg-dark) !important;
    border-color: var(--border-color) !important;
    color: var(--text);
}

.timeline-header,
.hop-time {
    color: var(--text);
}

.hop-location {
    color: var(--text-muted);
}

/* Domain security display */
.domain-security-display {
    background-color: var(--bg-dark) !important;
    border-color: var(--border-color) !important;
}

.domain-code {
    background-color: var(--bg-light) !important;
    color: var(--text) !important;
    border-color: var(--border-color) !important;
}

/* Recipient table */
.recipient-row {
    background-color: var(--bg-dark);
    color: var(--text);
}

.recipient-row:hover {
    background-color: var(--bg-light);
}

.recipient-info .recipient-email {
    color: var(--text-muted);
}

/* IP intelligence */
.ip-intelligence-consistent,
.domain-intelligence-consistent {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
    color: var(--text);
}

.service-name {
    color: var(--text);
}

/* Pre and code blocks */
pre {
    background-color: var(--bg-dark);
    color: var(--text);
    border-color: var(--border-color);
}

code {
    background-color: var(--bg-dark);
    color: var(--warning);
}

/* Auth item */
.auth-item {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
}

.auth-label {
    color: var(--text-muted);
}

/* Timeline markers and connectors */
.timeline-time-location,
.timeline-server-info,
.timeline-network-info {
    background-color: var(--bg-light);
    border-color: var(--border-color);
}

.section-title {
    color: var(--primary);
}

.detail-text {
    color: var(--text-muted);
}

/* Recipient table */
.recipient-table {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
}

/* Delivery path */
.delivery-path-timeline {
    background-color: var(--bg-light);
    border-color: var(--border-color);
}

.timeline-container {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
}

/* IP card */
.internal-ip-display,
.delivery-intelligence-placeholder,
.delivery-intelligence-placeholder-compact {
    background-color: var(--bg-light);
    border-color: var(--border-color);
    color: var(--text);
}

.hop-info-compact {
    color: var(--text);
}

.hop-info-compact code.small {
    background-color: rgba(255,255,255,0.05);
    color: var(--warning);
}

/* Bootstrap override for card body */
.card-body {
    background-color: var(--bg-light);
    color: var(--text);
}

/* Tab panes */
.tab-content {
    background-color: var(--bg-light);
    color: var(--text);
}

.tab-pane {
    background-color: var(--bg-light);
    color: var(--text);
}

/* Nav tabs container */
.nav-tabs {
    border-bottom-color: var(--border-color);
    background-color: var(--bg-dark);
}

/* Dark Theme Overrides for Bootstrap Components */
footer.bg-light {
    background-color: var(--bg-light) !important;
    border-top-color: var(--border-color) !important;
}

footer a {
    color: var(--primary) !important;
}

footer a:hover {
    color: var(--warning) !important;
}

.text-muted {
    color: var(--text-muted) !important;
}

.text-primary {
    color: var(--primary) !important;
}

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

.btn-primary:hover {
    background-color: #005a9e;
    border-color: #005a9e;
}

.btn-outline-secondary {
    color: var(--text);
    border-color: var(--border-color);
}

.btn-outline-secondary:hover {
    background-color: var(--bg-dark);
    color: var(--text);
}

.btn-outline-info {
    color: var(--info-color);
    border-color: var(--info-color);
}

.btn-outline-info:hover {
    background-color: var(--info-color);
    color: white;
}

/* Forms */
input[type="file"] {
    color: var(--text);
}

/* Alerts */
.alert {
    border: none;
    border-radius: 0.5rem;
}

/* Spinner */
.spinner-border {
    color: var(--primary);
}

/* Security report */
.provider-section {
    background-color: var(--bg-light);
    border-color: var(--border-color);
}

.provider-result {
    color: var(--text);
}

.provider-result:hover {
    background-color: rgba(0,120,212,0.1);
}

/* Email iframe */
.email-html-content iframe {
    border-color: var(--border-color);
}

/* VT results */
.vt-result {
    border-color: var(--border-color);
}

/* Pre-scrollable and HTML display */
.pre-scrollable {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
    color: var(--text);
}

#htmlContentDisplay {
    background-color: var(--bg-dark);
    border-color: var(--border-color);
    color: var(--text);
}

/* Email header value */
.email-header-value {
    color: var(--text-muted);
}

/* Email header item border */
.email-header-item {
    border-bottom-color: var(--border-color);
}

/* IP line border */
.ip-line {
    border-bottom-color: var(--border-color);
}

/* Domain/IP name borders */
.domain-name,
.ip-name {
    border-bottom-color: var(--border-color);
}

/* Summary section dark theme */
.summary-section {
    background-color: var(--bg-light);
    border-color: var(--border-color);
}

.summary-section-header {
    background: linear-gradient(135deg, var(--bg-dark) 0%, var(--bg-light) 100%);
    border-bottom-color: var(--border-color);
}

.summary-section-title {
    color: var(--text);
}

/* bg-light text-dark overrides for dark theme */
.bg-light.text-dark,
.badge.bg-light.text-dark {
    background-color: var(--bg-light) !important;
    color: var(--text) !important;
    border: 1px solid var(--border-color);
}

/* Ghost character row dark theme */
.recipient-row.has-ghost-chars {
    background-color: rgba(255, 107, 107, 0.15);
}

/* Override bg-light for code/record displays in dark theme */
.bg-light.p-2.rounded,
.bg-light.rounded {
    background-color: var(--bg-dark) !important;
    border: 1px solid var(--border-color);
}

.bg-light.p-2.rounded code,
.bg-light.rounded code {
    color: var(--warning) !important;
    background-color: transparent !important;
}

/* DNS Analysis and record displays */
.card-body .bg-light {
    background-color: var(--bg-dark) !important;
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
}

.card-body .bg-light code {
    color: var(--warning) !important;
    background-color: transparent !important;
}

/* SPF/DKIM/DMARC evaluation boxes with bg-opacity */
.bg-success.bg-opacity-10 {
    background-color: rgba(16, 124, 16, 0.15) !important;
}

.bg-danger.bg-opacity-10 {
    background-color: rgba(209, 52, 56, 0.15) !important;
}

.bg-warning.bg-opacity-10 {
    background-color: rgba(255, 170, 68, 0.15) !important;
}

/* Ensure text in evaluation boxes is visible */
.bg-success.bg-opacity-10 strong,
.bg-danger.bg-opacity-10 strong,
.bg-warning.bg-opacity-10 strong,
.bg-success.bg-opacity-10 code,
.bg-danger.bg-opacity-10 code,
.bg-warning.bg-opacity-10 code {
    color: var(--text) !important;
}

.bg-success.bg-opacity-10 code,
.bg-danger.bg-opacity-10 code,
.bg-warning.bg-opacity-10 code {
    color: var(--warning) !important;
    background-color: rgba(255,255,255,0.05) !important;
}

/* Text in evaluation sections */
.border-success strong,
.border-danger strong,
.border-secondary strong {
    color: var(--text);
}
