:root {
    --dew-ink: #1b1f2e;
    --dew-indigo: #4338ca;
    --dew-indigo-dark: #362eac;
    --dew-mist: #f5f6fb;
    --dew-line: #e3e5f0;
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
}

body {
    background: var(--dew-mist);
    color: var(--dew-ink);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

h1, h2, h3, .navbar-brand {
    font-family: 'Space Grotesk', 'Inter', sans-serif;
}

.app-navbar {
    background: var(--dew-ink);
}

.app-navbar .navbar-brand {
    font-weight: 700;
    letter-spacing: 0.02em;
}

.app-main {
    flex: 1;
    padding-top: 2rem;
    padding-bottom: 2.5rem;
}

.card {
    border: 1px solid var(--dew-line);
    border-radius: 0.75rem;
    box-shadow: 0 1px 2px rgba(27, 31, 46, 0.04);
}

.btn-primary {
    background-color: var(--dew-indigo);
    border-color: var(--dew-indigo);
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--dew-indigo-dark);
    border-color: var(--dew-indigo-dark);
}

.btn-primary:focus,
.form-control:focus {
    box-shadow: 0 0 0 0.2rem rgba(67, 56, 202, 0.25);
}

a {
    color: var(--dew-indigo);
}

.table thead th {
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6b7280;
    border-bottom-width: 1px;
}

.badge-role-admin { background-color: var(--dew-indigo); }
.badge-role-customer { background-color: #64748b; }
.badge-status-active { background-color: #10836a; }
.badge-status-blocked { background-color: #b3432b; }
