replace client-side tab toggling with server-side tab routing

Each settings tab is now a separate page load via ?tab= query param.
Flask renders only the active panel - no CSS or JS visibility logic needed.
Tab bar uses <a> links instead of buttons. Eliminates the display:none
cascade issue that was preventing Import and Maintenance tabs from showing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-20 17:06:11 -04:00
parent e37ce27256
commit 52d783546e
3 changed files with 18 additions and 34 deletions
+3 -5
View File
@@ -1233,6 +1233,8 @@ header {
}
.settings-tab-btn {
display: inline-block;
text-decoration: none;
padding: 0.4rem 1.1rem;
border-radius: 999px;
border: 1px solid var(--filter-border);
@@ -1253,12 +1255,8 @@ header {
color: var(--filter-active-fg);
}
/* Settings tab panels */
/* Settings tab panels — always visible, server renders only the active one */
.settings-tab-panel {
display: none;
}
.settings-tab-panel.is-active {
display: block;
}