:root { --nuit: #0B1F3A; --preya: #1E5EFF; }
body { background: #ffffff; color: #0f172a; }
.btn { display: inline-flex; align-items: center; gap: .4rem; padding: .5rem .9rem; border-radius: .5rem; font-weight: 600; font-size: .9rem; }
.btn-primary { background: var(--preya); color: #fff; }
.btn-primary:hover { background: #164ad0; }
.btn-outline { border: 1px solid #cbd5e1; color: var(--nuit); background: #fff; }
.btn-danger { background: #dc2626; color: #fff; }
.badge { display: inline-block; padding: .15rem .5rem; border-radius: 999px; font-size: .75rem; font-weight: 600; white-space: nowrap; }
.card { background: #fff; border: 1px solid #e2e8f0; border-radius: .75rem; padding: 1rem; }
table.journal th { text-align: left; font-size: .75rem; text-transform: uppercase; letter-spacing: .03em; color: #475569; padding: .5rem .6rem; border-bottom: 1px solid #e2e8f0; }
table.journal td { padding: .5rem .6rem; border-bottom: 1px solid #f1f5f9; font-size: .875rem; vertical-align: top; }
table.journal tr:hover td { background: #f8fafc; }
input, select { border: 1px solid #cbd5e1; border-radius: .5rem; padding: .45rem .6rem; font-size: .9rem; background: #fff; }
input:focus, select:focus { outline: 2px solid var(--preya); outline-offset: 1px; }
