:root{color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f7f7f8;color:#1c1c1e}a{color:#1d4ed8;text-decoration:none}a:hover,a.active{text-decoration:underline}.app-shell{display:flex;flex-direction:column;min-height:100vh}.navbar{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:.75rem 1.25rem;background:#fff;border-bottom:1px solid #d4d4d8}.navbar-brand{font-weight:700}.navbar-links{display:flex;flex-wrap:wrap;gap:1rem}.app-main{flex:1;width:100%;max-width:56rem;margin:0 auto;padding:2rem 1.25rem}.page h1{margin-top:0}.page-actions{display:flex;gap:.75rem;margin-top:1.5rem}.button{display:inline-block;padding:.5rem 1rem;border:1px solid #1d4ed8;border-radius:.375rem;background:#1d4ed8;color:#fff}.button:hover{text-decoration:none;opacity:.9}.button-secondary{background:transparent;color:#1d4ed8}.form{display:flex;flex-direction:column;max-width:24rem;margin-top:1rem}.form label{margin-top:.75rem;font-weight:600}.form input{padding:.5rem .625rem;border:1px solid #a1a1aa;border-radius:.375rem;background:#fff;color:inherit;font:inherit}.form input[aria-invalid=true]{border-color:#b91c1c}.form button{margin-top:1.25rem;cursor:pointer}.form button:disabled{cursor:not-allowed;opacity:.6}.form-error,.field-error{margin:.25rem 0 0;color:#b91c1c}.field-error{font-size:.9rem}.notice{margin-top:1rem;padding:1rem;border:1px solid #d4d4d8;border-radius:.5rem;background:#fff}.role-badge{display:inline-block;padding:.125rem .5rem;border:1px solid #a1a1aa;border-radius:999px;font-size:.85rem;font-weight:600;text-transform:uppercase}.user-table{width:100%;margin-top:1.5rem;border-collapse:collapse;background:#fff}.user-table th,.user-table td{padding:.5rem .75rem;border-bottom:1px solid #d4d4d8;text-align:left;vertical-align:top}.row-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.row-confirm{display:inline-flex;flex-wrap:wrap;gap:.5rem;align-items:center;color:#52525b}.button-link.danger{color:#b91c1c}.reset-panel{margin-top:1.5rem;padding:1rem;border:1px solid #d4d4d8;border-radius:.5rem;background:#fff}.reset-panel h2{margin-top:0;font-size:1.1rem}.navbar-user{font-weight:600}.navbar-status{display:inline-flex;align-items:center;gap:.5rem;color:#52525b}.button-link{padding:0;border:0;background:transparent;color:#1d4ed8;font:inherit;cursor:pointer;text-decoration:underline}
