:root{color-scheme:light;--bg:#f3f3f3;--paper:#fff;--text:#242424;--muted:#666;--line:#d9d9d9;--fill:#ededed;--button:#292929;--button-text:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.dim{color-scheme:dark;--bg:#191919;--paper:#242424;--text:#eee;--muted:#b8b8b8;--line:#454545;--fill:#333;--button:#e6e6e6;--button-text:#202020}header{max-width:1200px;margin:auto;padding:26px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.brand{font-size:26px;font-weight:800;letter-spacing:-.7px;text-decoration:none}nav,.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}nav form{margin:0}a{color:inherit;text-underline-offset:4px}main{margin:44px auto 80px;padding:32px}.card{max-width:460px;background:var(--paper);border:1px solid var(--line);border-radius:12px}.wide{max-width:1160px;margin-top:10px}h1{font-size:30px;letter-spacing:-.6px;line-height:1.2;margin:0 0 12px}h2{font-size:20px;margin-top:0}.muted,.fine,small{color:var(--muted)}.fine,small{font-size:13px}.fine{margin-top:24px}label{display:block;font-weight:600;font-size:14px;margin:18px 0}input{display:block;width:100%;font:inherit;color:var(--text);background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:11px;margin-top:7px}.check{display:flex;align-items:center;gap:9px;font-weight:400}.check input{width:17px;height:17px;margin:0}button{font:inherit;color:var(--text);background:var(--paper);padding:9px 16px;border:1px solid var(--line);border-radius:6px;cursor:pointer}button:hover{background:var(--fill)}.primary{background:var(--button);color:var(--button-text);font-weight:600}.primary:hover{opacity:.85;background:var(--button)}.card .primary{width:100%;margin:10px 0}.under{display:block;text-align:center;margin-top:15px}:focus-visible{outline:2px solid var(--text);outline-offset:3px}.box{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:24px;margin:28px 0}.invite{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.invite label{flex:1;min-width:180px;margin:0}.invite button{margin-bottom:1px;min-height:46px}.search{max-width:420px;margin:24px 0}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--paper)}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th,td{padding:16px;border-bottom:1px solid var(--line);vertical-align:top}th{background:var(--fill);font-size:12px;letter-spacing:.03em}td small{display:block}.badge{display:inline-block;padding:2px 9px;background:var(--fill);border-radius:20px;font-size:12px}.actions{margin:22px 0}[hidden]{display:none!important}[role=alert],[role=status]{padding:12px;background:var(--fill);border-radius:6px}@media(max-width:600px){header{padding:20px}.brand{font-size:23px}.card{margin:24px 16px;padding:24px}.wide{padding:20px;margin-top:0}nav{gap:10px;font-size:14px}.invite{display:block}.invite label{margin-bottom:14px}.invite button{width:100%}th,td{padding:12px}}
.password-field{display:block;position:relative;margin-top:7px}.password-field input{margin-top:0;padding-right:52px}.password-toggle{position:absolute;right:2px;top:2px;bottom:2px;width:44px;display:flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;border-radius:4px}.password-toggle svg{pointer-events:none}
.password-mismatch{display:block;margin-top:6px;font-size:13px;font-weight:400;color:#bd2020}body.dim .password-mismatch{color:#ff8585}

.login-error{border:1px solid #bd2020}body.dim .login-error{border-color:#ff8585}
