:root { --brand: #5c2e90; --brand-contrast: #ffffff; }

/* layout basics */
body { background: #ffffff; color: #222; min-height: 100vh; display:flex; flex-direction:column; font-family: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial; }
header { background: var(--brand); color: var(--brand-contrast); padding: 12px 16px; }
header .brand { display:flex; align-items:center; gap:12px; }
header img { height: 40px; }
.main-container { flex:1; padding:36px; display:flex; gap:30px; justify-content:center; align-items:flex-start; flex-wrap:wrap; }

/* cards */
.card { border-radius:12px; box-shadow: 0 6px 18px rgba(0,0,0,0.08); flex:1 1 440px; max-width:440px; display:flex; flex-direction:column; justify-content:space-between; }

/* table header */
th { background: var(--brand); color: var(--brand-contrast); }

/* footer */
footer { background: var(--brand); color: var(--brand-contrast); padding:14px; text-align:center; }

/* toast */
.toast-area { position: fixed; right: 1rem; bottom: 1rem; z-index: 2000; }
.service-btn { width:100%; text-align:left; margin-bottom:8px; }

/* small tweaks */
.table td, .table th { vertical-align: middle; }
.btn { border-radius: 8px; }
.btn-outline-secondary { border-radius:8px; text-align:left; }
