diff --git a/app/templates/admin/https_config.html b/app/templates/admin/https_config.html
index bd215cd..113559f 100644
--- a/app/templates/admin/https_config.html
+++ b/app/templates/admin/https_config.html
@@ -577,6 +577,92 @@
width: 100%;
}
}
+
+/* ------------------------------------------------------------------
+ Dark theme
+ ------------------------------------------------------------------
+ This page predates the shared dark-mode variables and hard-coded its
+ own light palette (light panel/blue-tint backgrounds with dark text).
+ The rules below re-map those to dark equivalents so the page matches
+ the rest of the app when the dark theme is active.
+ ------------------------------------------------------------------ */
+body.dark-mode .back-link { color: #90cdf4; }
+
+body.dark-mode .status-detection {
+ background: #1e3a5f;
+ border-left-color: #90cdf4;
+}
+
+body.dark-mode .badge-success { background: #1a4d2e; color: #86efac; }
+body.dark-mode .badge-warning { background: #4a3800; color: #fbbf24; }
+
+body.dark-mode .status-card { border-left-color: #4a5568; }
+body.dark-mode .status-enabled {
+ background: linear-gradient(135deg, #1a4d2e 0%, #22543d 100%);
+}
+body.dark-mode .status-disabled {
+ background: linear-gradient(135deg, #4a3800 0%, #5a4a1e 100%);
+}
+body.dark-mode .status-badge { background: #276749; color: #e2e8f0; }
+body.dark-mode .status-badge-inactive { background: #b45309; color: #fff; }
+body.dark-mode .status-details code { background: rgba(255, 255, 255, 0.12); }
+
+body.dark-mode .info-text {
+ background: #1e3a5f;
+ border-left-color: #90cdf4;
+ color: #cbd5e1;
+}
+
+body.dark-mode .form-group label { color: var(--text-color); }
+body.dark-mode .form-input {
+ background: var(--card-bg);
+ color: var(--text-color);
+ border-color: var(--border-color);
+}
+body.dark-mode .form-input:focus { border-color: #90cdf4; }
+body.dark-mode .form-hint { color: var(--text-secondary); }
+body.dark-mode .required { color: #fca5a5; }
+
+body.dark-mode .toggle-slider { background: #4a5568; }
+body.dark-mode .toggle-slider::after { background: #e2e8f0; }
+body.dark-mode .toggle-input:checked + .toggle-slider { background: #276749; }
+body.dark-mode .toggle-text { color: var(--text-color); }
+
+body.dark-mode .preview-section {
+ background: var(--bg-color);
+ border-color: #90cdf4;
+}
+body.dark-mode .preview-section h3 { color: #90cdf4; }
+
+body.dark-mode .access-points li {
+ background: var(--card-bg);
+ border-left-color: #90cdf4;
+}
+body.dark-mode .access-points code { background: #1e3a5f; color: #90cdf4; }
+
+body.dark-mode .form-actions { border-top-color: var(--border-color); }
+
+body.dark-mode .info-card {
+ background: linear-gradient(135deg, #1e3a5f 0%, #162032 100%);
+}
+body.dark-mode .info-card h2 { color: #90cdf4; }
+body.dark-mode .info-card li { color: var(--text-secondary); }
+
+body.dark-mode .nginx-status-card {
+ background: linear-gradient(135deg, #162032 0%, #1e3a5f 100%);
+ border-left-color: #90cdf4;
+}
+body.dark-mode .nginx-status-card h2 { color: #90cdf4; }
+
+body.dark-mode .status-item {
+ background: var(--card-bg);
+ border-left-color: #90cdf4;
+}
+body.dark-mode .status-item strong { color: var(--text-color); }
+body.dark-mode .status-item code { background: #1e3a5f; color: #90cdf4; }
+
+body.dark-mode .info-section h3 { color: #90cdf4; }
+body.dark-mode .info-section li { color: var(--text-secondary); }