:root{--ink:#16372f;--muted:#66756e;--green:#145c45;--line:#dbe2da;--paper:#f5f7f1;--danger:#a63126;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,sans-serif}a{color:var(--green);text-underline-offset:3px}.app-header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 32px;background:#fff;border-bottom:1px solid var(--line)}.brand{font-size:23px;font-weight:750;text-decoration:none}.brand span{font-weight:400}.app-header nav{display:flex;align-items:center;gap:18px}.app-header form{margin:0}.app-header button{margin:0}main{max-width:1160px;margin:auto;padding:40px 24px}h1{font-size:clamp(26px,4vw,38px);line-height:1.2;margin:0 0 14px}h2{font-size:23px;margin:0 0 12px}p{color:var(--muted);margin:0 0 22px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.1em;font-weight:650;color:var(--green);margin-bottom:12px}.panel-grid,.users-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}.panel-choice,.card,.auth-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.panel-choice{display:flex;flex-direction:column;align-items:flex-start;min-height:270px}.panel-choice p{flex:1}.panel-choice .eyebrow{flex:0}.button,button{display:inline-block;min-height:44px;background:var(--green);color:#fff;border:1px solid var(--green);border-radius:8px;padding:10px 16px;font:inherit;font-weight:600;text-decoration:none;cursor:pointer}.secondary{background:white;color:var(--ink);border-color:var(--line)}button{margin-top:16px}button:hover,.button:hover{filter:brightness(.92)}input{font:inherit;width:100%;min-height:44px;border:1px solid #b8c7bd;border-radius:7px;padding:8px 10px;margin:5px 0 18px;background:#fff;color:var(--ink)}input:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #86b7a2;outline-offset:3px}label{display:block;font-size:14px;font-weight:600}.auth-card{max-width:460px;margin:24px auto}.auth-card form button{width:100%}.error{color:var(--danger);background:#fff0ee;padding:12px;border-radius:8px}.notice{background:#e7f2e9;padding:16px;border-radius:8px}.status{display:block;font-size:13px;color:var(--green);margin:14px 0}.muted{color:var(--muted)}fieldset{border:0;padding:0;margin:18px 0}legend{font-weight:650;margin-bottom:10px}.check{display:flex;align-items:center;gap:10px;margin:8px 0;font-weight:400}.check input{width:20px;min-height:20px;height:20px;margin:0;accent-color:var(--green)}details{margin:18px 0}summary{cursor:pointer;font-weight:600;min-height:32px}.user-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.user-form fieldset{grid-column:1/-1}.user-form button{justify-self:start}.qr{display:block;max-width:240px;width:100%;margin:15px auto}.recovery-codes{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--paper);padding:16px;margin-bottom:20px}.recovery-codes code{font-size:16px}.audit-list{padding-left:20px;font-size:13px;overflow-wrap:anywhere}@media(max-width:700px){.app-header{padding:12px 16px;align-items:flex-start}.app-header nav{gap:10px;flex-wrap:wrap;justify-content:flex-end;font-size:13px}.brand{font-size:19px;white-space:nowrap}.app-header button{min-height:36px;padding:6px 8px}main{padding:28px 16px}.panel-grid,.users-grid,.user-form{grid-template-columns:1fr}.panel-choice{min-height:230px}.auth-card{margin:12px auto;padding:22px}.card{padding:20px}}
