<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Suture Hub</title>
<link rel="stylesheet" href="/static/style.css">
</head>
<body>
<div id="toast-container" role="status" aria-live="polite"></div>
<header>
<div class="header-top">
<div class="header-left">
<a href="#/" class="header-logo" aria-label="Suture Hub home">Suture Hub</a>
<span id="connection-indicator" class="indicator disconnected" title="Disconnected">
<span class="indicator-dot"></span>
<span class="indicator-text">Disconnected</span>
</span>
</div>
<div class="header-center">
<form class="search-form" id="search-form" role="search" aria-label="Search">
<input type="search" id="search-input" placeholder="Search repos & patches..." aria-label="Search" autocomplete="off">
</form>
</div>
<div class="header-right">
<div class="header-user" id="header-user"></div>
</div>
</div>
<nav class="tabs" role="tablist" aria-label="Main navigation">
<a href="#/" class="tab active" data-route="dashboard" role="tab" aria-selected="true">Dashboard</a>
<a href="#/repos" class="tab" data-route="repos" role="tab" aria-selected="false">Repos</a>
<a href="#/users" class="tab" data-route="users" role="tab" aria-selected="false">Users</a>
<a href="#/mirrors" class="tab" data-route="mirrors" role="tab" aria-selected="false">Mirrors</a>
<a href="#/replication" class="tab" data-route="replication" role="tab" aria-selected="false">Replication</a>
<a href="#/settings" class="tab" data-route="settings" role="tab" aria-selected="false">Settings</a>
</nav>
</header>
<main id="main-content" role="main" aria-live="polite"></main>
<footer>
Suture Hub — Patch-based version control
</footer>
<script src="/static/app.js"></script>
</body>
</html>