dd69bd69fc
- Extract git control operations to services/git/control.py with repo validation - Extract git file operations to services/git/files.py with repo validation - Extract repository lifecycle to services/git/repository.py (create, delete, list) - Extract config profile helpers to services/config_profiles.py (cycle detection, duplicate checks, serialization, default profile management) - Slim git_repositories.py from ~1050 to 276 lines - Slim config_profiles.py from ~765 to 299 lines - Both routers now contain only HTTP routing concerns Quality gates: py_compile (pass), file size ≤300 (pass), no subprocess in routers (pass) Refs: repo-restructure Task 3.5
90 lines
1.2 KiB
CSS
90 lines
1.2 KiB
CSS
.settingsLayout {
|
|
display: flex;
|
|
gap: 2rem;
|
|
padding: 1.5rem 0;
|
|
}
|
|
|
|
.settingsSidebar {
|
|
width: 200px;
|
|
flex-shrink: 0;
|
|
}
|
|
|
|
.settingsNav {
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 0.25rem;
|
|
}
|
|
|
|
.settingsNavLink {
|
|
padding: 0.625rem 1rem;
|
|
border-radius: 8px;
|
|
color: var(--muted);
|
|
text-decoration: none;
|
|
font-size: 0.95rem;
|
|
transition: all 0.2s;
|
|
}
|
|
|
|
.settingsNavLink:hover {
|
|
background: var(--bg);
|
|
color: var(--ink);
|
|
}
|
|
|
|
.settingsNavLinkActive {
|
|
background: var(--brand);
|
|
color: white;
|
|
font-weight: 500;
|
|
}
|
|
|
|
.settingsContent {
|
|
flex: 1;
|
|
min-width: 0;
|
|
}
|
|
|
|
.settingsPanel {
|
|
background: var(--panel);
|
|
border: 1px solid var(--border);
|
|
border-radius: 14px;
|
|
padding: 1.5rem;
|
|
}
|
|
|
|
.settingsBreadcrumb {
|
|
display: flex;
|
|
align-items: center;
|
|
gap: 0.5rem;
|
|
font-size: 0.9rem;
|
|
color: var(--muted);
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.settingsBreadcrumb a {
|
|
color: var(--brand);
|
|
text-decoration: none;
|
|
}
|
|
|
|
.settingsBreadcrumb a:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
@media (max-width: 768px) {
|
|
.settingsLayout {
|
|
flex-direction: column;
|
|
gap: 1rem;
|
|
}
|
|
|
|
.settingsSidebar {
|
|
width: 100%;
|
|
}
|
|
|
|
.settingsNav {
|
|
flex-direction: row;
|
|
overflow-x: auto;
|
|
padding-bottom: 0.5rem;
|
|
}
|
|
|
|
.settingsNavLink {
|
|
white-space: nowrap;
|
|
padding: 0.5rem 0.75rem;
|
|
font-size: 0.875rem;
|
|
}
|
|
}
|