diff --git a/SYNC_PROBE.txt b/SYNC_PROBE.txt deleted file mode 100644 index d10b320..0000000 --- a/SYNC_PROBE.txt +++ /dev/null @@ -1 +0,0 @@ -sync probe diff --git a/frontend/src/App.jsx b/frontend/src/App.jsx index b698400..49976d4 100644 --- a/frontend/src/App.jsx +++ b/frontend/src/App.jsx @@ -110,9 +110,10 @@ function LoginPage({ onLogin }) { /* ---------------------------------- Shell --------------------------------- */ function Shell({ user, onLogout }) { const [modules, setModules] = useState([]); - const [active, setActive] = useState("/personen"); + const [active, setActive] = useState("/rooster"); const [error, setError] = useState(null); const [loading, setLoading] = useState(true); + const [cogOpen, setCogOpen] = useState(false); async function load() { setLoading(true); @@ -198,8 +199,35 @@ function Shell({ user, onLogout }) { diff --git a/frontend/src/styles.css b/frontend/src/styles.css index 9e01331..02403d5 100644 --- a/frontend/src/styles.css +++ b/frontend/src/styles.css @@ -24,6 +24,16 @@ body { margin: 0; font-family: system-ui, "Segoe UI", Roboto, sans-serif; color: .topbar-user { display: flex; align-items: center; gap: 10px; white-space: nowrap; } .top-tabs { display: flex; align-items: center; gap: 6px; overflow-x: auto; scrollbar-width: thin; } .top-tabs-settings { display: flex; align-items: center; gap: 6px; margin-left: auto; padding-left: 10px; border-left: 1px solid var(--line); } + +/* Instellingen als cog-menu (popover via hover of klik) */ +.cog-menu { position: relative; margin-left: auto; } +.cog-btn { display: inline-flex; align-items: center; min-height: 38px; background: transparent; border: 0; border-radius: 8px; padding: 0 10px; font-size: 18px; cursor: pointer; color: var(--muted); } +.cog-btn:hover { background: var(--bg); color: var(--ink); } +.cog-dropdown { display: none; position: absolute; right: 0; top: 100%; margin-top: 4px; background: var(--panel); border: 1px solid var(--line); border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,.15); min-width: 200px; padding: 6px; z-index: 50; } +.cog-menu:hover .cog-dropdown, .cog-menu.open .cog-dropdown { display: block; } +.cog-item { display: flex; align-items: center; gap: 10px; width: 100%; text-align: left; background: transparent; border: 0; border-radius: 8px; padding: 9px 10px; cursor: pointer; font: inherit; color: var(--ink); } +.cog-item:hover { background: var(--bg); } +.cog-item.active { background: var(--brand-soft); color: var(--brand); font-weight: 600; } .top-tab { display: inline-flex; align-items: center; gap: 8px; min-height: 38px; flex: 0 0 auto;