Merge pull request #179 from naturallaw777/copilot/update-sovran-hub-visual-theme

[WIP] Update visual theme of Sovran Hub to align with new app icon
This commit is contained in:
Sovran_Systems
2026-04-09 14:37:39 -05:00
committed by GitHub
10 changed files with 68 additions and 68 deletions

View File

@@ -1,6 +1,6 @@
/* Sovran_SystemsOS Hub — Web UI Stylesheet
Dark theme matching the Adwaita dark aesthetic
v6Status-only tiles (no controls) */
Dark theme — deep green palette matching the Sovran Hub icon
v7Green atmosphere, status-only tiles */
*, *::before, *::after {
box-sizing: border-box;
@@ -9,22 +9,22 @@
}
:root {
--bg-color: #1e1e2e;
--surface-color: #2a2a3c;
--card-color: #313244;
--border-color: #45475a;
--text-primary: #cdd6f4;
--text-secondary: #a6adc8;
--text-dim: #6c7086;
--accent-color: #89b4fa;
--bg-color: #091C14;
--surface-color: #0F2419;
--card-color: #163023;
--border-color: #244635;
--text-primary: #E8FFF4;
--text-secondary: #8CC4A8;
--text-dim: #4E7A65;
--accent-color: #28D978;
--green: #2ec27e;
--yellow: #e5a50a;
--red: #e01b24;
--grey: #888888;
--grey: #5E7A6A;
--radius-card: 18px;
--radius-btn: 8px;
--shadow-card: 0 2px 8px rgba(0,0,0,0.4);
--shadow-hover: 0 6px 20px rgba(0,0,0,0.6);
--shadow-card: 0 2px 8px rgba(0,0,0,0.5);
--shadow-hover: 0 6px 20px rgba(0,0,0,0.7);
}
html, body {
@@ -112,7 +112,7 @@ body {
padding: 12px;
border-radius: var(--radius-btn);
background-color: var(--accent-color);
color: #1e1e2e;
color: #0A1A10;
font-size: 0.95rem;
font-weight: 700;
margin-top: 8px;

View File

@@ -22,17 +22,17 @@ button:disabled {
.btn-primary {
background-color: var(--accent-color);
color: #1e1e2e;
color: #0A1A10;
}
.btn-primary:hover:not(:disabled) {
opacity: 0.88;
}
/* Update System button: BLUE by default */
/* Update System button: uses accent green by default */
.btn-update {
background-color: #89b4fa;
color: #1e1e2e;
background-color: #1AA45D;
color: #E8FFF4;
position: relative;
display: flex;
align-items: center;
@@ -43,14 +43,14 @@ button:disabled {
opacity: 0.88;
}
/* Update System button: GREEN when updates are available */
/* Update System button: brighter green when updates are available */
.btn-update.has-updates {
background-color: #2ec27e;
color: #fff;
background-color: #28D978;
color: #0A1A10;
}
.btn-update.has-updates:hover:not(:disabled) {
background-color: #27ae6e;
background-color: #42F39A;
}
.update-badge {

View File

@@ -18,7 +18,7 @@ domain-field-label {
domain-field-input {
width: 100%;
background-color: #12121c;
background-color: #060F09;
color: var(--text-primary);
border: 1px solid var(--border-color);
border-radius: 8px;
@@ -75,7 +75,7 @@ domain-field-actions {
.domain-field-input {
width: 100%;
background-color: #12121c;
background-color: #060F09;
color: var(--text-primary);
border: 1px solid var(--border-color);
border-radius: 8px;
@@ -145,7 +145,7 @@ domain-field-actions {
.port-req-table td {
padding: 8px 10px;
border-bottom: 1px solid rgba(69, 71, 90, 0.4);
border-bottom: 1px solid rgba(36, 70, 53, 0.5);
color: var(--text-primary);
}

View File

@@ -35,7 +35,7 @@
.role-badge {
background-color: var(--accent-color);
color: #1e1e2e;
color: #0A1A10;
font-size: 0.72rem;
font-weight: 700;
padding: 3px 10px;

View File

@@ -46,7 +46,7 @@
.sidebar-support-btn:hover {
border-color: var(--accent-color);
border-style: solid;
background-color: #35354a;
background-color: #1A3828;
}
.sidebar-support-btn + .sidebar-support-btn {
@@ -86,12 +86,12 @@
.sidebar-upgrade-btn {
border-color: var(--accent-color);
background-color: rgba(137, 180, 250, 0.06);
background-color: rgba(40, 217, 120, 0.06);
margin-top: 8px;
}
.sidebar-upgrade-btn:hover {
background-color: rgba(137, 180, 250, 0.14);
background-color: rgba(40, 217, 120, 0.14);
border-color: var(--accent-color);
}

View File

@@ -4,7 +4,7 @@
display: none;
position: fixed;
inset: 0;
background-color: rgba(0,0,0,0.65);
background-color: rgba(0,0,0,0.75);
z-index: 200;
align-items: center;
justify-content: center;
@@ -71,7 +71,7 @@
font-size: 0.78rem;
line-height: 1.6;
color: var(--text-primary);
background-color: #12121c;
background-color: #060F09;
white-space: pre-wrap;
word-break: break-all;
min-height: 200px;
@@ -100,7 +100,7 @@ button.btn-reboot:hover:not(:disabled) {
.btn-save {
background-color: var(--yellow);
color: #1e1e2e;
color: #0A1A10;
}
.btn-save:hover:not(:disabled) {
@@ -113,7 +113,7 @@ button.btn-reboot:hover:not(:disabled) {
}
.btn-close-modal:hover:not(:disabled) {
background-color: #5a5c72;
background-color: #2A4538;
}
/* ── Credentials info modal ──────────────────────────────────────── */
@@ -214,7 +214,7 @@ button.btn-reboot:hover:not(:disabled) {
font-family: 'JetBrains Mono', 'Fira Code', 'Source Code Pro', monospace;
font-size: 0.92rem;
color: var(--text-primary);
background-color: #12121c;
background-color: #060F09;
padding: 12px 16px;
border-radius: 8px;
word-break: break-all;
@@ -239,7 +239,7 @@ button.btn-reboot:hover:not(:disabled) {
}
.creds-copy-btn:hover {
background-color: #5a5c72;
background-color: #2A4538;
}
.creds-copy-btn.copied {
@@ -283,7 +283,7 @@ button.btn-reboot:hover:not(:disabled) {
.matrix-action-btn {
background-color: var(--accent-color);
color: #0f0f19;
color: #0A1A10;
font-size: 0.88rem;
font-weight: 700;
padding: 10px 18px;
@@ -295,7 +295,7 @@ button.btn-reboot:hover:not(:disabled) {
}
.matrix-action-btn:hover {
background-color: #a8c8ff;
background-color: #6EE4A8;
}
.matrix-form-group {
@@ -312,7 +312,7 @@ button.btn-reboot:hover:not(:disabled) {
.matrix-form-input {
width: 100%;
background-color: #12121c;
background-color: #060F09;
color: var(--text-primary);
border: 1px solid var(--border-color);
border-radius: 8px;
@@ -347,7 +347,7 @@ button.btn-reboot:hover:not(:disabled) {
.matrix-form-submit {
background-color: var(--accent-color);
color: #0f0f19;
color: #0A1A10;
font-size: 0.88rem;
font-weight: 700;
padding: 10px 20px;
@@ -358,7 +358,7 @@ button.btn-reboot:hover:not(:disabled) {
}
.matrix-form-submit:hover:not(:disabled) {
background-color: #a8c8ff;
background-color: #6EE4A8;
}
.matrix-form-submit:disabled {
@@ -378,7 +378,7 @@ button.btn-reboot:hover:not(:disabled) {
}
.matrix-form-back:hover {
background-color: #5a5c72;
background-color: #2A4538;
}
.matrix-form-result {

View File

@@ -68,13 +68,13 @@
.onboarding-step-dot.active {
background-color: var(--accent-color);
border-color: var(--accent-color);
color: #1e1e2e;
color: #0A1A10;
}
.onboarding-step-dot.completed {
background-color: var(--green);
border-color: var(--green);
color: #1e1e2e;
color: #0A1A10;
}
.onboarding-step-connector {
@@ -180,10 +180,10 @@
font-size: 0.82rem;
font-weight: 700;
color: var(--accent-color);
background-color: rgba(137, 180, 250, 0.12);
background-color: rgba(40, 217, 120, 0.10);
padding: 3px 10px;
border-radius: 20px;
border: 1px solid rgba(137, 180, 250, 0.3);
border: 1px solid rgba(40, 217, 120, 0.25);
}
/* Step header */
@@ -347,7 +347,7 @@
.onboarding-port-table td {
padding: 8px 8px;
border-bottom: 1px solid rgba(69, 71, 90, 0.4);
border-bottom: 1px solid rgba(36, 70, 53, 0.5);
color: var(--text-secondary);
vertical-align: middle;
}
@@ -405,8 +405,8 @@
.onboarding-creds-notice {
padding: 12px 16px;
background-color: rgba(137, 180, 250, 0.08);
border: 1px solid rgba(137, 180, 250, 0.25);
background-color: rgba(40, 217, 120, 0.08);
border: 1px solid rgba(40, 217, 120, 0.20);
border-radius: 8px;
font-size: 0.85rem;
color: var(--text-secondary);
@@ -499,8 +499,8 @@
font-size: 0.72rem;
padding: 2px 8px;
border-radius: 4px;
background-color: rgba(137, 180, 250, 0.1);
border: 1px solid rgba(137, 180, 250, 0.25);
background-color: rgba(40, 217, 120, 0.08);
border: 1px solid rgba(40, 217, 120, 0.20);
color: var(--accent-color);
cursor: pointer;
white-space: nowrap;
@@ -508,7 +508,7 @@
}
.onboarding-cred-reveal-btn:hover {
background-color: rgba(137, 180, 250, 0.2);
background-color: rgba(40, 217, 120, 0.15);
}
/* Completion checklist (Step 5) */
@@ -667,7 +667,7 @@
}
.onboarding-password-toggle:hover {
background-color: rgba(137, 180, 250, 0.12);
background-color: rgba(40, 217, 120, 0.10);
border-color: var(--accent-color);
}
@@ -690,8 +690,8 @@
.onboarding-password-success {
padding: 12px 16px;
background-color: rgba(166, 227, 161, 0.1);
border: 1px solid rgba(166, 227, 161, 0.35);
background-color: rgba(40, 217, 120, 0.10);
border: 1px solid rgba(40, 217, 120, 0.30);
border-radius: 8px;
font-size: 0.92rem;
color: var(--green);
@@ -731,7 +731,7 @@
display: none;
position: fixed;
inset: 0;
background-color: rgba(15, 15, 25, 0.92);
background-color: rgba(4, 10, 6, 0.92);
z-index: 999;
align-items: center;
justify-content: center;

View File

@@ -221,7 +221,7 @@
display: none;
position: fixed;
inset: 0;
background-color: rgba(15, 15, 25, 0.94);
background-color: rgba(4, 10, 6, 0.94);
z-index: 1000;
align-items: center;
justify-content: center;
@@ -250,8 +250,8 @@
justify-content: space-between;
gap: 12px;
padding: 12px 18px;
background-color: rgba(46, 100, 194, 0.12);
border-bottom: 2px solid rgba(46, 100, 194, 0.35);
background-color: rgba(40, 217, 120, 0.08);
border-bottom: 2px solid rgba(40, 217, 120, 0.25);
color: var(--text-primary);
}

View File

@@ -104,7 +104,7 @@
}
.support-steps code {
background-color: rgba(137, 180, 250, 0.12);
background-color: rgba(40, 217, 120, 0.10);
padding: 2px 6px;
border-radius: 4px;
font-size: 0.82rem;
@@ -116,7 +116,7 @@
padding: 12px;
border-radius: var(--radius-btn);
background-color: var(--accent-color);
color: #1e1e2e;
color: #0A1A10;
font-size: 0.95rem;
font-weight: 700;
margin-bottom: 10px;
@@ -146,7 +146,7 @@
padding: 12px;
border-radius: var(--radius-btn);
background-color: var(--accent-color);
color: #1e1e2e;
color: #0A1A10;
font-size: 0.95rem;
font-weight: 700;
margin-top: 16px;
@@ -168,7 +168,7 @@
}
.support-btn-auditlog:hover:not(:disabled) {
background-color: #5a5c72;
background-color: #2A4538;
}
.support-fine-print {
@@ -290,7 +290,7 @@
padding: 8px 16px;
border-radius: var(--radius-btn);
background-color: var(--yellow);
color: #1e1e2e;
color: #0A1A10;
font-size: 0.82rem;
font-weight: 700;
}
@@ -324,7 +324,7 @@
.support-audit-log {
max-height: 200px;
overflow-y: auto;
background-color: #12121c;
background-color: #060F09;
border-radius: 8px;
padding: 10px 14px;
}
@@ -334,7 +334,7 @@
font-size: 0.72rem;
color: var(--text-secondary);
padding: 3px 0;
border-bottom: 1px solid rgba(69, 71, 90, 0.3);
border-bottom: 1px solid rgba(36, 70, 53, 0.4);
}
.support-audit-entry:last-child {

View File

@@ -20,7 +20,7 @@
.service-tile:hover {
box-shadow: var(--shadow-hover);
border-color: #6c7086;
border-color: var(--accent-color);
}
.service-tile.disabled {
@@ -235,7 +235,7 @@
.svc-detail-port-table td {
padding: 8px 10px;
border-bottom: 1px solid rgba(69, 71, 90, 0.4);
border-bottom: 1px solid rgba(36, 70, 53, 0.6);
color: var(--text-primary);
}
@@ -294,7 +294,7 @@
}
.svc-detail-troubleshoot code {
background-color: rgba(137, 180, 250, 0.12);
background-color: rgba(40, 217, 120, 0.10);
padding: 2px 6px;
border-radius: 4px;
font-size: 0.82rem;