:root{font-family:Inter,system-ui,sans-serif;color:#1d2940;background:#f3f5f9;line-height:1.5;--blue:#2442a5;--muted:#53617b;--line:#dce2ec}
*{box-sizing:border-box}body{margin:0}header{background:#182849;color:white;display:flex;align-items:center;gap:1rem;padding:.85rem max(1rem,calc((100vw - 1120px)/2));min-height:65px}header form{margin:0}header .brand{margin-right:auto;color:white;text-decoration:none;font-size:1.3rem}main{max-width:1120px;margin:auto;padding:1.5rem 1rem 4rem}h1,h2,h3,p{margin:.25rem 0 .75rem}h1{font-size:clamp(1.7rem,4vw,2.5rem);letter-spacing:-.04em}h2{font-size:1.25rem}h3{font-size:1.05rem}p{color:var(--muted)}a{color:var(--blue)}nav{display:flex;gap:.55rem;flex-wrap:wrap;margin:0 0 1rem}nav a{padding:.42rem .7rem;text-decoration:none;border-radius:.4rem}nav a:hover,nav a[aria-current]{background:#dfe7ff}.heading{display:flex;align-items:center;gap:1rem;justify-content:space-between}.pill{background:#e8edfa;color:#304376;border-radius:1rem;padding:.2rem .65rem;font-size:.8rem;white-space:nowrap}section{background:#fff;border:1px solid var(--line);border-radius:.75rem;padding:1.2rem;margin:0 0 1rem}.login{max-width:420px;margin:4vh auto}form{display:grid;gap:.6rem;margin:.65rem 0}label{font-size:.86rem;font-weight:600;display:grid;gap:.25rem}input,select,textarea,button{font:inherit;border-radius:.4rem;padding:.55rem .68rem}input,select,textarea{border:1px solid #aab7cf;min-width:0;width:100%;background:white;color:inherit}input[type=checkbox]{width:auto;justify-self:start}button{background:var(--blue);color:white;border:0;cursor:pointer;justify-self:start;font-weight:600}button:hover{background:#1a3287}summary{cursor:pointer;font-weight:650}details{margin:.55rem 0}.directory a,.row{display:flex;align-items:center;gap:1rem;justify-content:space-between;border-bottom:1px solid var(--line);padding:.65rem 0;flex-wrap:wrap}.directory a:last-child,.row:last-child{border-bottom:0}.directory a{text-decoration:none}.notice{padding:.7rem;background:#e2ebff;border-radius:.4rem;color:#192b68}.columns{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr))}.search{display:flex;align-items:end}.search label{flex:1}.preserve{white-space:pre-wrap;overflow-wrap:anywhere}dt{font-weight:650}dd{margin:0 0 .65rem;color:var(--muted)}@media print{header,nav,form,details{display:none}section{break-inside:avoid;border:0}body{background:white}}
