.admin button{min-height:var(--tap);font-family:var(--font-sans);font-weight:var(--fw-bold);line-height:var(--lh-none);color:#fff;background:var(--teal);padding:0 var(--sp-4);cursor:pointer;box-shadow:var(--shadow-sm);border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:6px;transition:background .15s,border-color .15s,box-shadow .15s,transform 80ms,color .15s,filter .15s;display:inline-flex}.admin button:not(:disabled):hover{background:var(--teal-dark);box-shadow:var(--shadow)}.admin button:not(:disabled):active{box-shadow:var(--shadow-sm);transform:translateY(1px)}.admin button:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.admin button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;filter:none;transform:none}.admin button svg{flex:none;width:16px;height:16px}.admin button.ghost{background:var(--card);color:var(--text-body);border-color:var(--line);box-shadow:none}.admin button.ghost:not(:disabled):hover{background:var(--bg);border-color:var(--muted);box-shadow:var(--shadow-sm)}.admin button.danger{background:var(--red-dark);color:#fff;border-color:#0000}.admin button.danger:not(:disabled):hover{background:var(--red-dark);filter:brightness(.93);box-shadow:var(--shadow)}.admin button.danger:focus-visible{outline-color:var(--red-dark)}.admin button.sm{min-height:34px;font-size:var(--fs-cap);padding:0 var(--sp-3);border-radius:9px;gap:5px}.admin button.sm svg{width:14px;height:14px}.admin button.icon-only{width:34px;min-height:34px;padding:0}.admin .ops{white-space:nowrap;width:1px}.admin .ops button{vertical-align:middle}.admin .ops button+button{margin-left:var(--sp-2)}.admin .role-cell{white-space:nowrap;width:1px}.admin .tbl-wrap{border:1px solid var(--line);clip-path:inset(0 round 14px);border-radius:14px;overflow-x:auto}.admin .tbl{border-collapse:collapse;width:100%;font-size:var(--fs-cap)}.admin .tbl th,.admin .tbl td{text-align:left;padding:var(--sp-3);border-bottom:1px solid var(--line);vertical-align:middle}.admin .tbl thead th{font-weight:var(--fw-extrabold);color:var(--muted);white-space:nowrap;background:var(--bg)}.admin .tbl tbody tr{transition:background .12s}.admin .tbl tbody tr:hover{background:var(--bg)}.admin .tbl tbody tr:last-child td{border-bottom:none}.admin .tbl .loading{color:var(--faint);padding:var(--sp-4);text-align:center}.admin .tbl .nowrap{white-space:nowrap}.admin .tbl .email{word-break:break-all}.admin .row-inactive{opacity:.55}.admin .k-tag{font-weight:var(--fw-bold);color:var(--muted);border:1px solid var(--line);background:var(--card);white-space:nowrap;border-radius:999px;padding:2px 9px;display:inline-block}.admin .k-sub{color:var(--text-body);font-weight:var(--fw-bold);margin-top:3px}.admin .badge{font-weight:var(--fw-bold);color:#fff;white-space:nowrap;border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;display:inline-flex}.admin .badge.on{background:var(--teal)}.admin .badge.off{background:var(--gray)}.admin .self{margin-left:var(--sp-2);font-size:11px;font-weight:var(--fw-bold);color:var(--teal);background:#e2f0f3;border-radius:999px;padding:1px 8px;display:inline-block}.admin .role-sel{border:1px solid var(--line);min-height:36px;padding:0 30px 0 var(--sp-3);font-size:var(--fs-cap);font-family:var(--font-sans);font-weight:var(--fw-bold);color:var(--text-body);background-color:var(--card);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236f655a' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;border-radius:10px;transition:border-color .15s,box-shadow .15s}.admin .role-sel:not(:disabled):hover{border-color:var(--muted)}.admin .role-sel:focus-visible{border-color:var(--teal);outline:none;box-shadow:0 0 0 3px #1d5b6e26}.admin .role-sel:disabled{opacity:.5;cursor:not-allowed}.admin .msg{font-size:var(--fs-cap);font-weight:var(--fw-bold);margin:0 0 var(--sp-3);padding:var(--sp-3);border-radius:10px}.admin .msg-ok{color:var(--teal);background:#e2f0f3;border:1px solid #bcdde3}.admin .msg-err{color:var(--red-dark);background:#fbeceb;border:1px solid #f0cfcb}
