:root { font-family: "Inter", system-ui, sans-serif; color: #16283c; background: #edf2f7; }
* { box-sizing: border-box; }
body { margin: 0; }
main { max-width: 1160px; margin: 0 auto; padding: 24px 16px 48px; }
h1 { font-size: clamp(1.75rem, 5vw, 2.5rem); }
h2 { font-size: 1.15rem; margin-top: 0; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 16px; }
section { background: white; margin: 16px 0; border: 1px solid #ccd9e5; border-radius: 14px; padding: 20px; }
.grid section { margin-bottom: 0; }
label { display: block; margin: 0 0 12px; font-weight: 600; }
input, textarea, select, button { font: inherit; }
input:not([type=checkbox]), textarea, select { display: block; width: 100%; padding: 9px; margin-top: 5px; border: 1px solid #8aa0b7; border-radius: 6px; background: white; }
textarea { min-height: 100px; }
button { background: #124b86; color: white; border: 0; border-radius: 6px; padding: 8px 12px; cursor: pointer; }
.inline { display: inline-block; margin: 3px; }
a { color: #124b86; }
[aria-current=page] { font-weight: bold; }
[role=alert] { color: #942622; }
.table { overflow-x: auto; }
table { border-collapse: collapse; width: 100%; }
th, td { text-align: left; padding: 9px; border-bottom: 1px solid #dbe4ed; vertical-align: top; }
nav { display: flex; gap: 14px; margin-top: 12px; }
