* { box-sizing: border-box; }
body { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; margin: 0; color: #222; }
.container { max-width: 1100px; margin: 0 auto; padding: 1rem; }
.site-header { background: #0b5; color: white; }
.site-header a { color: white; text-decoration: none; }
.site-header nav a { margin-right: 1rem; opacity: 0.95; }
.site-header nav a:hover { text-decoration: underline; }
.site-footer { background: #f5f5f5; margin-top: 3rem; }

h1 a { text-decoration: none; }
.card-links { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 1rem; }
.card { display: block; padding: 1rem; border: 1px solid #ddd; border-radius: 8px; background: #fff; }
.card:hover { border-color: #0b5; box-shadow: 0 0 0 2px rgba(0, 187, 85, 0.2); }

.table { width: 100%; border-collapse: collapse; }
.table th, .table td { border: 1px solid #ddd; padding: 0.5rem 0.6rem; vertical-align: top; }
.table thead th { background: #fafafa; font-weight: 600; }
.table tbody tr:nth-child(odd) { background: #fcfcfc; }

a { color: #0a64a0; }
a:hover { text-decoration: underline; }

/* Accordion styles */
.accordion { display: grid; gap: 0.5rem; }
.accordion-item { border: 1px solid #ddd; border-radius: 8px; background: #fff; overflow: hidden; }
.accordion-trigger { width: 100%; text-align: left; background: #f7f7f7; border: 0; padding: 0.75rem 1rem; display: flex; align-items: center; justify-content: space-between; cursor: pointer; }
.accordion-trigger:hover { background: #f2f2f2; }
.accordion-trigger[aria-expanded="true"] { background: #eefaf3; }
.acc-title a { color: inherit; text-decoration: none; }
.acc-title a:hover { text-decoration: underline; }
.acc-meta { color: #555; font-size: 0.9rem; }
.accordion-panel { padding: 0.75rem 1rem; }
.details { display: grid; gap: 0.5rem; }
.detail-row { display: grid; grid-template-columns: 140px 1fr; gap: 0.5rem; align-items: baseline; }
.detail-row .label { color: #666; font-weight: 600; }
