diff --git a/registry/templates/index.html b/registry/templates/index.html index 18905a8..e0edc29 100644 --- a/registry/templates/index.html +++ b/registry/templates/index.html @@ -19,85 +19,85 @@ /* -- Theme Color Variables -- Nova-Inspired Light Mode */ :root { - --bg-color: #f8f9fa; /* Very light gray/off-white */ - --text-color: #16191f; /* Very dark gray/near black */ - --card-bg: #ffffff; /* White cards */ - --card-border: #e0e0e0; /* Lighter gray border */ - --header-bg: #ffffff; /* White header */ - --sidebar-bg: var(--bg-color); /* Sidebar matches main background */ - --accent-color: #7a00cc; /* Purple accent */ - --accent-light-bg: #f7f5ff; /* Very light purple background */ - --button-bg: var(--accent-color); /* Purple button */ - --button-text: #ffffff; - --secondary-button-bg: #e9ecef; /* Light gray secondary button */ - --secondary-button-text: var(--text-color); - --link-color: var(--accent-color); /* Purple links */ - --badge-bg: #e9ecef; /* Light gray badge */ - --badge-text: var(--text-color); - --official-badge-bg: var(--accent-light-bg); /* Light purple badge */ - --official-badge-text: var(--accent-color); /* Purple text on badge */ - --input-bg: #ffffff; - --input-text: var(--text-color); - --input-placeholder: #6c757d; - --input-border: #ced4da; - --input-border-focus: var(--accent-color); /* Purple focus border */ + --bg-color: #f8f9fa !important; /* Very light gray/off-white */ + --text-color: #16191f !important; /* Very dark gray/near black */ + --card-bg: #ffffff !important; /* White cards */ + --card-border: #e0e0e0 !important; /* Lighter gray border */ + --header-bg: #ffffff !important; /* White header */ + --sidebar-bg: var(--bg-color) !important; /* Sidebar matches main background */ + --accent-color: #7a00cc !important; /* Purple accent */ + --accent-light-bg: #f7f5ff !important; /* Very light purple background */ + --button-bg: var(--accent-color) !important; /* Purple button */ + --button-text: #ffffff !important; + --secondary-button-bg: #e9ecef !important; /* Light gray secondary button */ + --secondary-button-text: var(--text-color) !important; + --link-color: var(--accent-color) !important; /* Purple links */ + --badge-bg: #e9ecef !important; /* Light gray badge */ + --badge-text: var(--text-color) !important; + --official-badge-bg: var(--accent-light-bg) !important; /* Light purple badge */ + --official-badge-text: var(--accent-color) !important; /* Purple text on badge */ + --input-bg: #ffffff !important; + --input-text: var(--text-color) !important; + --input-placeholder: #6c757d !important; + --input-border: #ced4da !important; + --input-border-focus: var(--accent-color) !important; /* Purple focus border */ /* Theme Toggle (Keep consistent or adapt?) */ - --toggle-button-bg: var(--input-bg); - --toggle-button-text: var(--text-color); - --toggle-button-border: var(--input-border); + --toggle-button-bg: var(--input-bg) !important; + --toggle-button-text: var(--text-color) !important; + --toggle-button-border: var(--input-border) !important; /* Sidebar Toggle (Keep consistent or adapt?) */ - --sidebar-toggle-bg-light: none; - --sidebar-toggle-text-light: var(--text-color); - --sidebar-toggle-border-light: none; + --sidebar-toggle-bg-light: none !important; + --sidebar-toggle-text-light: var(--text-color) !important; + --sidebar-toggle-border-light: none !important; } /* Dark mode would also need updating to match */ html.dark-mode { /* TODO: Define Nova-inspired dark theme variables */ - --bg-color: #212529; /* Placeholder dark */ - --text-color: #f8f9fa; /* Placeholder light text */ - --card-bg: #343a40; /* Placeholder dark card */ - --card-border: #495057; - --header-bg: #212529; /* Dark header */ - --accent-color: #a040ff; /* Lighter purple for dark */ - --accent-light-bg: #3a304f; /* Darker purple bg */ - --button-bg: var(--accent-color); - --button-text: #ffffff; - --secondary-button-bg: #495057; /* Dark gray secondary */ - --secondary-button-text: var(--text-color); - --link-color: var(--accent-color); - --badge-bg: #495057; - --badge-text: var(--text-color); - --official-badge-bg: var(--accent-light-bg); - --official-badge-text: var(--accent-color); - --input-bg: #343a40; - --input-text: var(--text-color); - --input-placeholder: #adb5bd; - --input-border: #495057; - --input-border-focus: var(--accent-color); + --bg-color: #212529 !important; /* Placeholder dark */ + --text-color: #f8f9fa !important; /* Placeholder light text */ + --card-bg: #343a40 !important; /* Placeholder dark card */ + --card-border: #495057 !important; + --header-bg: #212529 !important; /* Dark header */ + --accent-color: #a040ff !important; /* Lighter purple for dark */ + --accent-light-bg: #3a304f !important; /* Darker purple bg */ + --button-bg: var(--accent-color) !important; + --button-text: #ffffff !important; + --secondary-button-bg: #495057 !important; /* Dark gray secondary */ + --secondary-button-text: var(--text-color) !important; + --link-color: var(--accent-color) !important; + --badge-bg: #495057 !important; + --badge-text: var(--text-color) !important; + --official-badge-bg: var(--accent-light-bg) !important; + --official-badge-text: var(--accent-color) !important; + --input-bg: #343a40 !important; + --input-text: var(--text-color) !important; + --input-placeholder: #adb5bd !important; + --input-border: #495057 !important; + --input-border-focus: var(--accent-color) !important; /* Keep toggles simple for now */ - --toggle-button-bg: #495057; - --toggle-button-text: var(--text-color); - --toggle-button-border: #6c757d; + --toggle-button-bg: #495057 !important; + --toggle-button-text: var(--text-color) !important; + --toggle-button-border: #6c757d !important; } - /* Apply variables */ + /* Apply variables with !important to override style.css */ body { - background-color: var(--bg-color); - color: var(--text-color); + background-color: var(--bg-color) !important; + color: var(--text-color) !important; font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif; line-height: 1.6; /* Improve readability */ } .main-header { - background-color: var(--header-bg); - border-bottom: 1px solid var(--card-border); /* Add subtle border */ + background-color: var(--header-bg) !important; + border-bottom: 1px solid var(--card-border) !important; /* Add box-shadow for slight elevation */ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04); /* Assuming header text color is inherited or set in style.css */ } .sidebar { - background-color: var(--sidebar-bg); - color: var(--text-color); /* Ensure sidebar uses main text color */ + background-color: var(--sidebar-bg) !important; + color: var(--text-color) !important; /* Ensure sidebar uses main text color */ } .sidebar h3 { color: var(--text-color); /* Ensure heading uses text color */ @@ -116,14 +116,14 @@ /* Assuming the count badge has its own styling */ } .service-card { - background-color: var(--card-bg); - border: 1px solid var(--card-border); - color: var(--text-color); /* Ensure card text uses theme color */ + background-color: var(--card-bg) !important; + border: 1px solid var(--card-border) !important; + color: var(--text-color) !important; /* Ensure card text uses theme color */ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05); /* Subtle shadow */ border-radius: 12px; /* --- Add rounding --- */ } .service-card h2, .service-card .owner, .service-card .description { - color: var(--text-color); /* Explicitly set text color */ + color: var(--text-color) !important; /* Explicitly set text color */ } /* Example for a specific badge if needed */ .badge, @@ -141,8 +141,8 @@ /* Assuming style.css defines button styles, override if needed */ /* background-color: var(--button-bg); */ /* color: var(--button-text); */ - background-color: var(--button-bg); - color: var(--button-text); + background-color: var(--button-bg) !important; + color: var(--button-text) !important; border: none; padding: 8px 16px; border-radius: 8px; /* --- Add rounding --- */ @@ -161,8 +161,8 @@ } .logout-button, .search-bar button { - background-color: var(--secondary-button-bg); - color: var(--secondary-button-text); + background-color: var(--secondary-button-bg) !important; + color: var(--secondary-button-text) !important; border: 1px solid var(--card-border); /* Use card border for light gray */ padding: 8px 16px; border-radius: 8px; /* --- Add rounding --- */ @@ -300,7 +300,7 @@ /* Ensure main title uses text color */ .content h1 { - color: var(--text-color); + color: var(--text-color) !important; } /* --- Theme Toggle Button --- */ @@ -546,25 +546,215 @@ align-items: center; /* Vertically center items inside logo */ gap: 8px; /* Space between logo image and text */ } + + /* Registration Modal Tabs */ + .registration-tabs { + display: flex; + margin-bottom: 15px; + border-bottom: 1px solid var(--card-border); + } + .tab-button { + padding: 10px 15px; + cursor: pointer; + border: none; + background-color: transparent; + color: var(--text-color); + font-weight: 600; + border-bottom: 3px solid transparent; + margin-bottom: -1px; /* Overlap with container border */ + } + .tab-button.active { + border-bottom-color: var(--accent-color); + color: var(--accent-color); + } + .tab-button:hover { + background-color: var(--secondary-button-bg); + } + .tab-content { + display: none; + } + .tab-content.active { + display: block; + } + .form-input { + width: 100%; + padding: 8px 10px; + margin-bottom: 10px; + border: 1px solid var(--input-border); + border-radius: 6px; + background-color: var(--input-bg); + color: var(--input-text); + box-sizing: border-box; + } + .form-input:focus { + border-color: var(--input-border-focus); + outline: none; + box-shadow: 0 0 0 2px rgba(122, 0, 204, 0.2); + } + .form-group { + margin-bottom: 15px; + } + .form-group label { + display: block; + margin-bottom: 5px; + font-weight: 600; + color: var(--text-color); + } + #registration-feedback.success { + background-color: #d4edda; /* Light green */ + color: #155724; /* Dark green */ + border: 1px solid #c3e6cb; + } + #registration-feedback.error { + background-color: #f8d7da; /* Light red */ + color: #721c24; /* Dark red */ + border: 1px solid #f5c6cb; + } + + /* --- Register Server Button --- */ + .register-server-button { + background-color: var(--accent-color); + color: var(--button-text); + border: none; + padding: 8px 16px; + border-radius: 8px; + font-weight: 600; + cursor: pointer; + transition: background-color 0.2s ease; + margin-left: 10px; /* Space from previous element */ + } + .register-server-button:hover { + opacity: 0.9; + } + + /* Registration Modal Styles */ + /* (Reusing .modal-overlay and .modal-content from tool modal for consistency) */ + /* Additional styles for registration modal specifics if needed */ + #register-server-modal .modal-content { + min-width: 400px; /* Adjust as needed */ + max-width: 700px; /* Adjust as needed */ + } + + /* Registration Modal Tabs */ + .registration-tabs { + display: flex; + margin-bottom: 15px; + border-bottom: 1px solid var(--card-border); + } + .tab-button { + padding: 10px 15px; + cursor: pointer; + border: none; + background-color: transparent; + color: var(--text-color); + font-weight: 600; + border-bottom: 3px solid transparent; + margin-bottom: -1px; /* Overlap with container border */ + } + .tab-button.active { + border-bottom-color: var(--accent-color); + color: var(--accent-color); + } + .tab-button:hover { + background-color: var(--secondary-button-bg); + } + .tab-content { + display: none; + } + .tab-content.active { + display: block; + } + .form-input { + width: 100%; + padding: 8px 10px; + margin-bottom: 10px; + border: 1px solid var(--input-border); + border-radius: 6px; + background-color: var(--input-bg); + color: var(--input-text); + box-sizing: border-box; + } + .form-input:focus { + border-color: var(--input-border-focus); + outline: none; + box-shadow: 0 0 0 2px rgba(122, 0, 204, 0.2); + } + .form-group { + margin-bottom: 15px; + } + .form-group label { + display: block; + margin-bottom: 5px; + font-weight: 600; + color: var(--text-color); + } + #registration-feedback.success { + background-color: #d4edda; /* Light green */ + color: #155724; /* Dark green */ + border: 1px solid #c3e6cb; + } + #registration-feedback.error { + background-color: #f8d7da; /* Light red */ + color: #721c24; /* Dark red */ + border: 1px solid #f5c6cb; + } + + /* Add these additional style rules to explicitly override style.css colors */ + .sidebar-toggle-button { + color: var(--text-color) !important; + } + .theme-toggle-button { + color: var(--text-color) !important; + } + .logo span { + color: var(--text-color) !important; + } + .header-right .user-display { + color: var(--text-color) !important; + } + .sidebar ul li span:first-child { + color: var(--text-color) !important; + } + .card-header h2 { + color: var(--text-color) !important; + } + .card-body .owner { + color: var(--text-color) !important; + } + .badge { + color: var(--text-color) !important; + background-color: var(--badge-bg) !important; + } + .search-bar input[type="search"] { + background-color: var(--input-bg) !important; + color: var(--input-text) !important; + border-color: var(--input-border) !important; + } + .modal-content { + background-color: var(--card-bg) !important; + color: var(--text-color) !important; + }
@@ -1361,6 +2152,9 @@