:root{font-family:system-ui,sans-serif;color:#17231f;background:#f3f1e9}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column}header{display:flex;justify-content:space-between;align-items:center;padding:1rem clamp(1rem,5vw,4rem);background:#17231f;color:white}header div{display:flex;align-items:center;gap:.7rem}.mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#d75a35;font-weight:900}main{width:min(1180px,calc(100% - 2rem));margin:3rem auto;flex:1}#login,#enrollment{max-width:520px;margin:10vh auto;background:white;padding:2rem;border:1px solid #d8d5ca}h1{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:.3rem 0 1.5rem;letter-spacing:-.04em}label{display:grid;gap:.5rem}input{padding:.85rem;border:1px solid #aaa;font:inherit}button{padding:.7rem 1rem;border:0;background:#17231f;color:white;font:inherit;cursor:pointer}form button{margin-top:1rem}.secondary{background:transparent;color:#17231f;border:1px solid #aaa}.title{display:flex;justify-content:space-between;align-items:start}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;color:#b74228;font-weight:800}nav{display:flex;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid #ccc;padding-bottom:1rem}nav button{background:white;color:#17231f;border:1px solid #ccc}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;margin:1.5rem 0}.card{background:white;padding:1.2rem;border:1px solid #d8d5ca}.card strong{display:block;font-size:1.8rem}.table-wrap{overflow:auto;background:white;margin-top:1.5rem;border:1px solid #d8d5ca}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.8rem;border-bottom:1px solid #e5e2d8;vertical-align:top}th{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.tag{display:inline-block;padding:.15rem .5rem;border-radius:2rem;background:#e5e2d8;font-size:.8rem}.error{color:#a52a1a}pre{white-space:pre-wrap;word-break:break-word;background:white;padding:1rem;border:1px solid #d8d5ca}footer{padding:1rem;text-align:center;font-size:.8rem;color:#5b625e}@media(max-width:600px){header{align-items:flex-start;flex-direction:column;gap:.5rem}.title{align-items:flex-start;flex-direction:column}.title button{margin-bottom:1rem}}
