*{box-sizing:border-box}
body{font:16px/1.5 system-ui,sans-serif;margin:0;color:#1b1f24;background:#fafbfc}
a{color:#0b5cad}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline:3px solid #8ab4f8;outline-offset:1px}
.top{display:flex;gap:1rem;align-items:center;padding:.6rem 1rem;background:#fff;border-bottom:1px solid #e3e6ea}
.brand{font-weight:700;text-decoration:none;color:#1b1f24;margin-right:auto}.who{color:#5b6470}
main{max-width:1000px;margin:1.5rem auto;padding:0 1rem}
nav.ws{display:flex;flex-wrap:wrap;gap:.75rem;padding:.5rem 1rem;background:#f2f4f7;border-bottom:1px solid #e3e6ea}
nav.ws a[aria-current=page]{font-weight:700;text-decoration:none;color:#1b1f24}
form.stack{display:grid;gap:.75rem;max-width:28rem}
label{display:grid;gap:.25rem;font-weight:600}input,select,textarea{font:inherit;padding:.4rem .5rem;border:1px solid #b9c0c8;border-radius:4px;background:#fff}
textarea{min-height:6rem}
button{font:inherit;padding:.4rem .9rem;border-radius:4px;border:1px solid #0b5cad;background:#0b5cad;color:#fff;cursor:pointer}
button.secondary{background:#fff;color:#0b5cad}button.danger{background:#b42318;border-color:#b42318}
button.link{background:none;border:0;color:#0b5cad;padding:0;text-decoration:underline}
form.inline{display:inline}
table{border-collapse:collapse;width:100%;background:#fff}th,td{text-align:left;border-bottom:1px solid #e3e6ea;padding:.4rem .5rem;vertical-align:top}
.flash{padding:.6rem .8rem;border-radius:4px}.flash.ok{background:#e7f6ec}.flash.error{background:#fdecea}
.muted{color:#5b6470}.secret{font-family:ui-monospace,monospace;word-break:break-all;background:#fff8e1;padding:.6rem;border:1px solid #f0d58c}
.pre{white-space:pre-wrap}label.inline{display:inline}fieldset{border:1px solid #e3e6ea;display:grid;gap:.75rem}
.badge{display:inline-block;padding:0 .4rem;border-radius:3px;background:#eef1f4;font-size:.85em}
