39029-vm/assets/css/custom.css
2026-03-06 17:54:56 +00:00

176 lines
3.0 KiB
CSS

:root {
--bg: #0d0f12;
--surface: #14181f;
--surface-2: #1b2029;
--border: #232a34;
--text: #e6e9ef;
--muted: #9aa3b2;
--accent: #3ea6ff;
--accent-2: #7dd3fc;
--success: #2dd4bf;
--warning: #fbbf24;
}
* {
box-sizing: border-box;
}
body.app-body {
margin: 0;
min-height: 100vh;
background: var(--bg);
color: var(--text);
font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
font-size: 15px;
line-height: 1.6;
}
a {
color: var(--accent);
text-decoration: none;
}
a:hover {
color: var(--accent-2);
}
.navbar {
background: rgba(13, 15, 18, 0.96);
border-bottom: 1px solid var(--border);
}
.navbar-brand {
font-weight: 600;
letter-spacing: 0.3px;
}
.nav-link {
color: var(--muted);
}
.nav-link.active,
.nav-link:hover {
color: var(--text);
}
.hero {
background: var(--surface);
border: 1px solid var(--border);
border-radius: 12px;
padding: 2.5rem;
}
.stat-card,
.app-card {
background: var(--surface);
border: 1px solid var(--border);
border-radius: 10px;
padding: 1.5rem;
}
.stat-card h3 {
font-size: 1.3rem;
margin: 0 0 0.5rem;
}
.badge-soft {
background: var(--surface-2);
color: var(--muted);
border: 1px solid var(--border);
font-weight: 500;
}
.table-dark {
--bs-table-bg: var(--surface);
--bs-table-border-color: var(--border);
--bs-table-color: var(--text);
}
.form-control,
.form-select,
.form-check-input {
background: var(--surface);
border: 1px solid var(--border);
color: var(--text);
border-radius: 8px;
}
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
border-color: var(--accent);
box-shadow: 0 0 0 0.2rem rgba(62, 166, 255, 0.15);
}
.form-text {
color: var(--muted);
}
.btn-primary {
background: var(--accent);
border-color: var(--accent);
color: #0b1117;
font-weight: 600;
border-radius: 8px;
}
.btn-primary:hover {
background: #62b6ff;
border-color: #62b6ff;
color: #0b1117;
}
.btn-outline-light {
border-color: var(--border);
color: var(--text);
border-radius: 8px;
}
.btn-outline-light:hover {
background: var(--surface-2);
color: var(--text);
}
.alert {
border-radius: 10px;
border: 1px solid var(--border);
background: var(--surface-2);
color: var(--text);
}
.alert-success {
border-color: rgba(45, 212, 191, 0.4);
}
.alert-warning {
border-color: rgba(251, 191, 36, 0.4);
}
.tag {
background: rgba(62, 166, 255, 0.12);
color: var(--accent);
border: 1px solid rgba(62, 166, 255, 0.25);
border-radius: 999px;
padding: 0.2rem 0.6rem;
font-size: 0.75rem;
font-weight: 600;
letter-spacing: 0.2px;
}
.footer {
border-top: 1px solid var(--border);
background: var(--surface);
color: var(--muted);
}
.muted {
color: var(--muted);
}
.section-title {
font-size: 1.1rem;
letter-spacing: 0.4px;
text-transform: uppercase;
color: var(--muted);
}