:root{--bg:#141416;--bg-card:#1b1b1e;--bg-elev:#222226;--bg-hover:var(--bg-elev);--bg-input:#0f0f11;--border:color-mix(in srgb, var(--text) 10%, transparent);--border-strong:color-mix(in srgb, var(--text) 18%, transparent);--text:#ececee;--text-soft:#a4a4ac;--text-muted:#71717a;--accent:#e6e6ea;--accent-fg:#141416;--accent-tint:color-mix(in srgb, var(--accent) 12%, transparent);--accent-hover:color-mix(in srgb, var(--accent) 88%, var(--bg) 12%);--platform-twitch:#9147ff;--platform-discord:#5865f2;--platform-twitch-tint:color-mix(in srgb, var(--platform-twitch) 14%, transparent);--platform-discord-tint:color-mix(in srgb, var(--platform-discord) 14%, transparent);--success:#3ecf8e;--success-tint:color-mix(in srgb, var(--success) 14%, transparent);--warning:#f2b544;--warning-tint:color-mix(in srgb, var(--warning) 14%, transparent);--danger:#ef5a5a;--danger-tint:color-mix(in srgb, var(--danger) 14%, transparent);--raid:#60a5fa;--density:#d4a437;--mention-tint:color-mix(in srgb, var(--warning) 22%, transparent);--tile-1:#3987e5;--tile-2:#d95926;--tile-3:#199e70;--tile-4:#c98500;--tile-5:#d55181;--tile-6:#008300;--tile-7:#9085e9;--tile-8:#e66767;--wheel-1:#8a5ce0;--wheel-2:#d8589f;--wheel-3:#3f80d8;--wheel-4:#a8379a;--wheel-5:#d27b3a;--wheel-6:#24958a;--wheel-7:#5a3fa8;--wheel-8:#c94f6d;--radius-sm:4px;--radius:6px;--radius-lg:10px;--radius-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--fs-sm:.75rem;--fs-md:.875rem;--fs-lg:1rem;--fs-xl:1.25rem;--fs-2xl:1.625rem;--font:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}code{font-family:var(--font-mono);background:var(--bg-hover);border-radius:4px;padding:2px 6px;font-size:.875em}button{cursor:pointer;font-family:inherit}.btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--bg-card);color:var(--text);align-items:center;gap:8px;padding:8px 16px;font-size:.875rem;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--sp-4)}.badge{align-items:center;gap:var(--sp-1);border-radius:var(--radius-pill);font-size:var(--fs-sm);padding:2px 8px;font-weight:500;display:inline-flex}.badge-success{background:color-mix(in srgb, var(--success) 15%, transparent);color:var(--success)}.badge-warning{background:color-mix(in srgb, var(--warning) 15%, transparent);color:var(--warning)}.badge-danger{background:color-mix(in srgb, var(--danger) 15%, transparent);color:var(--danger)}.text-muted{color:var(--text-muted)}.loading{text-align:center;color:var(--text-muted);padding:48px}.error-card{border-color:var(--danger);color:var(--danger)}.project-dashboard{width:100%;max-width:100%}.page-shell{width:100%;min-width:0;padding:16px 20px;overflow-x:hidden}.page-shell>h2:first-child{margin-top:0}.svc-icon{vertical-align:middle;flex-shrink:0;display:inline-block}.tab-content{min-height:300px}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.stat-value{font-size:1.5rem;font-weight:700}.stat-value.small{font-size:1rem}.feed-scroll{scroll-behavior:smooth;flex-direction:column;gap:1px;max-height:70vh;display:flex;overflow-y:auto}.chip-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;min-width:48px;font-size:.6875rem;font-weight:600}.chip{cursor:pointer;border:1px solid var(--border);color:var(--text-muted);background:0 0;border-radius:999px;align-items:center;padding:3px 10px;font-family:inherit;font-size:.75rem;font-weight:500;transition:all .12s;display:inline-flex}.chip:hover{border-color:var(--text-muted);color:var(--text)}.live-dot{background:var(--success);border-radius:50%;width:6px;height:6px;margin-right:4px;animation:1.5s infinite pulse-dot;display:inline-block}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.btn-xs{cursor:pointer;border-radius:4px;padding:2px 8px;font-size:.72rem}.btn-danger{color:#fff;background:#ef4444;border:none}.btn-danger:hover{background:#dc2626}.btn-secondary{background:var(--bg-alt,#374151);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.input-xs{background:var(--input-bg,#1a1a2e);border:1px solid var(--border);width:80px;color:var(--text);border-radius:4px;padding:2px 6px;font-size:.78rem}.btn-inline{border:1px solid var(--border);cursor:pointer;border-radius:4px;padding:2px 8px;font-size:.6875rem;font-weight:500;line-height:1.4}.btn-inline-grant{background:var(--success,#22c55e);color:#fff;border-color:#0000}.btn-inline-grant:hover{filter:brightness(1.1)}.btn-inline-revoke{color:var(--danger,#ef4444);border-color:var(--danger,#ef4444);background:0 0}.btn-inline-revoke:hover{background:var(--danger,#ef4444);color:#fff}.detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.6875rem}.input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text);outline:none;padding:8px 12px;font-family:inherit;font-size:.875rem}.input:focus{border-color:var(--accent)}.btn-sm{padding:4px 10px;font-size:.8125rem}.add-actions{flex-direction:column;gap:8px;display:flex}.guild-list{flex-direction:column;gap:6px;padding-left:16px;display:flex}.guild-icon{border-radius:50%;flex-shrink:0;width:32px;height:32px}.guild-icon-placeholder{background:var(--bg-hover);width:32px;height:32px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:700;display:flex}.badge-twitch{background:color-mix(in srgb, var(--platform-twitch) 15%, transparent);color:var(--platform-twitch)}.badge-discord{background:color-mix(in srgb, var(--platform-discord) 15%, transparent);color:var(--platform-discord)}.leaderboard{flex-direction:column;gap:1px;display:flex}.trace-search{flex:1;min-width:180px}.trace-route{font-size:.6rem}.trace-reply{color:#4caf50}.badge-muted{background:color-mix(in srgb, var(--text) 15%, transparent)!important}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--bg-hover);border-color:var(--border);color:var(--text)}.btn-success{background:var(--success);border-color:var(--success);color:#000}.btn-success:hover{background:color-mix(in srgb, var(--success) 80%, #000);border-color:color-mix(in srgb, var(--success) 80%, #000)}.btn-warning{background:var(--warning);border-color:var(--warning);color:#000}.btn-warning:hover{background:color-mix(in srgb, var(--warning) 80%, #000);border-color:color-mix(in srgb, var(--warning) 80%, #000)}.flex-wrap{flex-wrap:wrap}.badge-accent{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--accent)}.badge-info{color:#38bdf8;background:#38bdf826}.badge-owner{color:gold;background:#ffd70026}.badge-superadmin{color:#ff6b6b;background:#ff6b6b26}.badge-admin{color:orange;background:#ffa50026}.badge-mod{color:#4ade80;background:#4ade8026}.badge-vip{color:#e879f9;background:#e879f926}.badge-sub{color:#38bdf8;background:#38bdf826}.badge-user{background:color-mix(in srgb, var(--text-muted) 15%, transparent);color:var(--text-muted)}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.pill-group{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.pill{font-size:var(--fs-sm);border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--bg-input);color:var(--text-soft);cursor:pointer;padding:4px 10px;font-family:inherit;font-weight:500;line-height:1.4;transition:background .15s,border-color .15s,color .15s}.pill:hover:not(.active){border-color:color-mix(in srgb, var(--text) 30%, transparent);color:var(--text)}.pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pill.active{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.nx-modal-backdrop.svelte-ta60gp{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:center;animation:.12s ease-out svelte-ta60gp-nx-fade-in;display:flex;position:fixed;inset:0}.nx-modal.svelte-ta60gp{background:var(--bg-card,#18181b);min-width:min(360px,92vw);max-width:min(92vw,520px);color:var(--text,#efeff1);border:1px solid var(--border,#2a2a30);border-radius:12px;flex-direction:column;gap:14px;padding:20px 22px;animation:.14s cubic-bezier(.2,.9,.2,1.2) svelte-ta60gp-nx-pop-in;display:flex;box-shadow:0 20px 60px #00000080}.nx-modal.is-danger.svelte-ta60gp{border-color:color-mix(in srgb, var(--danger,#eb0400) 45%, var(--border,#2a2a30));box-shadow:0 20px 60px #00000080, 0 0 0 1px color-mix(in srgb, var(--danger,#eb0400) 25%, transparent)}.nx-modal-title.svelte-ta60gp{letter-spacing:.01em;color:var(--text,#efeff1);padding-bottom:2px;font-size:1rem;font-weight:600}.nx-modal-body.svelte-ta60gp{color:color-mix(in srgb, var(--text,#efeff1) 85%, transparent);white-space:pre-wrap;font-size:.875rem;line-height:1.5}.nx-modal-input.svelte-ta60gp{background:var(--bg,#0e0e10);border:1px solid var(--border,#2a2a30);width:100%;color:var(--text,#efeff1);border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:.875rem;transition:border-color .12s}.nx-modal-input.svelte-ta60gp:focus{border-color:var(--accent,#9147ff);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent,#9147ff) 25%, transparent)}.nx-modal-hint.svelte-ta60gp{color:var(--text-muted,#8b8b92);font-size:.75rem}.nx-modal-hint.svelte-ta60gp code:where(.svelte-ta60gp){background:var(--bg,#0e0e10);border-radius:4px;padding:1px 6px;font-size:.7rem}.nx-modal-actions.svelte-ta60gp{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.nx-btn.svelte-ta60gp{border:1px solid var(--border,#2a2a30);background:var(--bg,#0e0e10);color:var(--text,#efeff1);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.8125rem;font-weight:500;transition:all .1s}.nx-btn.svelte-ta60gp:hover{border-color:color-mix(in srgb, var(--text,#efeff1) 25%, var(--border,#2a2a30))}.nx-btn.svelte-ta60gp:disabled{opacity:.4;cursor:not-allowed}.nx-btn-ghost.svelte-ta60gp{color:var(--text-muted,#8b8b92);background:0 0;border-color:#0000}.nx-btn-ghost.svelte-ta60gp:hover{background:color-mix(in srgb, var(--text,#efeff1) 6%, transparent);color:var(--text,#efeff1)}.nx-btn-primary.svelte-ta60gp{background:var(--accent,#9147ff);border-color:var(--accent,#9147ff);color:#fff}.nx-btn-primary.svelte-ta60gp:hover{background:color-mix(in srgb, var(--accent,#9147ff) 85%, white)}.nx-btn-danger.svelte-ta60gp{background:var(--danger,#eb0400);border-color:var(--danger,#eb0400);color:#fff}.nx-btn-danger.svelte-ta60gp:hover{background:color-mix(in srgb, var(--danger,#eb0400) 85%, white)}@keyframes svelte-ta60gp-nx-fade-in{0%{opacity:0}to{opacity:1}}@keyframes svelte-ta60gp-nx-pop-in{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.nx-toasts.svelte-1fk2ial{right:var(--sp-5);bottom:var(--sp-5);z-index:1500;gap:var(--sp-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.nx-toast.svelte-1fk2ial{pointer-events:auto;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--bg-elev);min-width:220px;max-width:420px;color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:0 12px 32px color-mix(in srgb, var(--bg) 70%, transparent);font:inherit;font-size:var(--fs-md);text-align:left;cursor:pointer;display:inline-flex}.dot.svelte-1fk2ial{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:8px;height:8px}.nx-toast-ok.svelte-1fk2ial .dot:where(.svelte-1fk2ial){background:var(--success)}.nx-toast-error.svelte-1fk2ial .dot:where(.svelte-1fk2ial){background:var(--danger)}.nx-toast-info.svelte-1fk2ial .dot:where(.svelte-1fk2ial){background:var(--accent)}.txt.svelte-1fk2ial{line-height:1.35}@media (prefers-reduced-motion:no-preference){.nx-toast.svelte-1fk2ial{animation:.14s ease-out svelte-1fk2ial-nx-toast-in}@keyframes svelte-1fk2ial-nx-toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}@media (width<=640px){.nx-toasts.svelte-1fk2ial{left:var(--sp-4);right:var(--sp-4);bottom:var(--sp-4)}.nx-toast.svelte-1fk2ial{max-width:none}}.view-as.svelte-1t31xoj{border-top:1px solid var(--border);margin-top:8px;padding:8px 14px 4px}.view-as.collapsed.svelte-1t31xoj{justify-content:center;padding:8px 4px;display:flex}.label.svelte-1t31xoj{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:6px;font-size:.7rem}.buttons.svelte-1t31xoj{gap:4px;display:flex}.buttons.svelte-1t31xoj button:where(.svelte-1t31xoj){border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;border-radius:4px;flex:1;padding:4px 6px;font-size:.75rem}.buttons.svelte-1t31xoj button:where(.svelte-1t31xoj):disabled{opacity:.5;cursor:wait}.buttons.svelte-1t31xoj button.active:where(.svelte-1t31xoj){background:var(--accent,#8b5cf6);color:#fff;border-color:var(--accent,#8b5cf6)}.user-picker.svelte-1t31xoj{border-top:1px dashed var(--border);flex-direction:column;gap:2px;max-height:220px;margin-top:6px;padding-top:6px;display:flex;overflow-y:auto}.hint.svelte-1t31xoj{color:var(--text-muted);padding:2px 0;font-size:.7rem}.project.svelte-1t31xoj{text-align:left;color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;padding:4px 6px;font-size:.75rem}.project.svelte-1t31xoj:hover{background:var(--bg-hover,#ffffff0d)}.project.active.svelte-1t31xoj{background:var(--accent,#8b5cf6);color:#fff}.error.svelte-1t31xoj{color:#ef4444;margin-top:6px;font-size:.7rem}.shell.svelte-12qhfyh{flex-direction:column;height:100vh;display:flex}.app.svelte-12qhfyh{flex:1;min-height:0;display:flex}.update.svelte-12qhfyh{z-index:5;padding:var(--sp-3) var(--sp-4) 0;background:var(--bg);position:sticky;top:0}.banner.svelte-12qhfyh{justify-content:center;align-items:center;gap:var(--sp-4);padding:var(--sp-2) var(--sp-4);background:var(--warning-tint);border-bottom:1px solid color-mix(in srgb, var(--warning) 40%, transparent);color:var(--text);font-size:var(--fs-sm);display:flex}.banner.svelte-12qhfyh strong:where(.svelte-12qhfyh){text-transform:capitalize}.banner-soft.svelte-12qhfyh{color:var(--text-soft)}.banner-btn.svelte-12qhfyh{font:inherit;padding:4px var(--sp-3);border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--warning) 50%, transparent);color:var(--text);cursor:pointer;background:0 0;font-weight:500}.banner-btn.svelte-12qhfyh:hover{background:color-mix(in srgb, var(--warning) 20%, transparent)}.sidebar.svelte-12qhfyh{background:var(--bg-card);border-right:1px solid var(--border);width:232px;min-width:232px;padding:var(--sp-3) var(--sp-2);flex-direction:column;transition:width .15s,min-width .15s;display:flex;overflow:hidden auto}.sidebar.collapsed.svelte-12qhfyh{width:56px;min-width:56px}.brand.svelte-12qhfyh{padding:var(--sp-2) var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);margin-bottom:var(--sp-3);flex-direction:column;gap:2px;display:flex}.project-name.svelte-12qhfyh{font-size:var(--fs-md);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.wordmark.svelte-12qhfyh{font-size:var(--fs-sm);color:var(--text-muted);letter-spacing:.02em}.wordmark.mini.svelte-12qhfyh{text-align:center;font-size:var(--fs-lg);color:var(--text);font-weight:600}.switcher.svelte-12qhfyh{display:block;position:relative}.switcher.svelte-12qhfyh select:where(.svelte-12qhfyh){appearance:none;width:100%;font:inherit;font-size:var(--fs-md);color:var(--text);padding:0 var(--sp-5) 0 0;cursor:pointer;background:0 0;border:none;font-weight:600}.switcher.svelte-12qhfyh select:where(.svelte-12qhfyh):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.switcher.svelte-12qhfyh .switcher-chev{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;right:0;transform:translateY(-50%)}.sr-only.svelte-12qhfyh{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.nav.svelte-12qhfyh{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.item.svelte-12qhfyh{align-items:center;gap:var(--sp-3);width:100%;padding:8px var(--sp-3);border-radius:var(--radius);color:var(--text-soft);font:inherit;font-size:var(--fs-md);text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:none;font-weight:500;text-decoration:none;transition:background .1s,color .1s;display:flex}.item.svelte-12qhfyh:hover{background:var(--bg-elev);color:var(--text)}.item.active.svelte-12qhfyh{background:var(--accent-tint);color:var(--text);font-weight:600}.item.svelte-12qhfyh:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.item.disabled.svelte-12qhfyh{opacity:.45;cursor:default}.lbl.svelte-12qhfyh{text-overflow:ellipsis;overflow:hidden}.collapsed.svelte-12qhfyh .lbl:where(.svelte-12qhfyh){display:none}.collapsed.svelte-12qhfyh .item:where(.svelte-12qhfyh){justify-content:center;padding-left:0;padding-right:0}.collapsed.svelte-12qhfyh .chev:where(.svelte-12qhfyh){display:none}.foot.svelte-12qhfyh{padding-top:var(--sp-3);border-top:1px solid var(--border);flex-direction:column;gap:2px;margin-top:auto;display:flex}.group-btn.svelte-12qhfyh .chev:where(.svelte-12qhfyh){color:var(--text-muted);margin-left:auto;display:inline-flex}.nav.sub.svelte-12qhfyh{padding-left:var(--sp-2)}.sub-item.svelte-12qhfyh{font-size:var(--fs-sm);padding-top:6px;padding-bottom:6px}.dot.svelte-12qhfyh{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin:0 6px}.sub-item.active.svelte-12qhfyh .dot:where(.svelte-12qhfyh){background:var(--text)}.collapse-btn.svelte-12qhfyh{color:var(--text-muted)}.content.svelte-12qhfyh{flex:1;min-width:0;overflow-y:auto}.menu-btn.svelte-12qhfyh,.scrim.svelte-12qhfyh{display:none}@media (width<=900px){.menu-btn.svelte-12qhfyh{z-index:1100;border-radius:var(--radius);border:1px solid var(--border-strong);background:var(--bg-card);width:40px;height:40px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;display:inline-flex;position:fixed;top:10px;left:10px}.scrim.svelte-12qhfyh{z-index:1000;background:color-mix(in srgb, var(--bg) 60%, transparent);display:block;position:fixed;inset:0}.sidebar.svelte-12qhfyh,.sidebar.collapsed.svelte-12qhfyh{z-index:1050;width:260px;min-width:260px;box-shadow:8px 0 32px color-mix(in srgb, var(--bg) 60%, transparent);transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open.svelte-12qhfyh{transform:translate(0)}.sidebar.collapsed.svelte-12qhfyh .lbl:where(.svelte-12qhfyh){display:inline}.sidebar.collapsed.svelte-12qhfyh .item:where(.svelte-12qhfyh){padding-left:var(--sp-3);padding-right:var(--sp-3);justify-content:flex-start}.collapse-btn.svelte-12qhfyh{display:none}.content.svelte-12qhfyh{padding-top:56px}}@media (prefers-reduced-motion:reduce){.sidebar.svelte-12qhfyh{transition:none}}
