:root {
    --gov-blue: #1a3a5c;
    --gov-blue-mid: #2a5298;
    --gov-blue-light: #e8edf5;
    --gov-accent: #c8a84b;
    --gov-light: #f4f6f9;

    --font-display: 'IBM Plex Serif', serif;
    --font-body: 'IBM Plex Sans', sans-serif;
}

body {
    font-family: 'IBM Plex Sans', sans-serif;
    background-color: var(--gov-light);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.page-header {
    padding: 1.5rem 0 1rem;
    border-bottom: 2px solid #e2e8f0;
    margin-bottom: 1.5rem;
}

.page-header h1 {
    font-family: 'IBM Plex Serif', serif;
    color: var(--gov-blue);
    font-size: 1.75rem;
    margin: 0;
}

.badge-status {
    font-size: .75rem;
    font-weight: 600;
    padding: .35em .7em;
    border-radius: 3px;
}

.status-new {
    background: #dbeafe;
    color: #1e40af;
}

.status-in_progress {
    background: #fef9c3;
    color: #854d0e;
}

.status-resolved {
    background: #dcfce7;
    color: #166534;
}

.status-rejected {
    background: #fee2e2;
    color: #991b1b;
}

.badge-cat { background: #e8edf5; color: var(--gov-blue); font-size: .75rem; font-weight: 500; padding: .3em .65em; border-radius: 3px; }
