:root{--canvas: #ffffff;--surface: #ffffff;--surface-raised: color-mix(in srgb, #DAD9DE 28%, #ffffff);--surface-alt: color-mix(in srgb, #805BFF 7%, #ffffff);--border: #DAD9DE;--border-soft: color-mix(in srgb, #DAD9DE 55%, #ffffff);--text: #181225;--text-dim: color-mix(in srgb, #80708F 55%, #181225);--text-faint: #80708F;--accent-text: color-mix(in srgb, #805BFF 92%, #181225);--primary: color-mix(in srgb, #805BFF 95%, #181225);--primary-hover: color-mix(in srgb, #805BFF 82%, #181225);--primary-quiet: color-mix(in srgb, #805BFF 40%, #ffffff);--ok: color-mix(in srgb, #805BFF 92%, #181225);--pending: #80708F;--warn: color-mix(in srgb, #FF3BA9 75%, #181225);--danger: color-mix(in srgb, #FF3BA9 75%, #181225);--info: color-mix(in srgb, #805BFF 92%, #181225);--tint-primary: color-mix(in srgb, #805BFF 10%, transparent);--tint-primary-strong: color-mix(in srgb, #805BFF 17%, transparent);--tint-ok: color-mix(in srgb, #805BFF 8%, transparent);--tint-pending: color-mix(in srgb, #80708F 12%, transparent);--tint-danger: color-mix(in srgb, #FF3BA9 9%, transparent);--radius: 10px;--radius-lg: 14px;--shadow: 0 10px 30px color-mix(in srgb, #181225 10%, transparent);--nav-width: 268px;--topbar-height: 24px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--canvas);color:var(--text);font:15px/1.55 var(--font);-webkit-font-smoothing:antialiased}a{color:var(--accent-text);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:22px}h2{font-size:17px}h3{font-size:14px}code,.mono{font-family:var(--mono);font-size:12.5px}.shell{display:flex;min-height:100%}.shell-with-topbar{padding-top:var(--topbar-height)}.topbar-impersonating{position:fixed;top:0;left:0;right:0;z-index:60;height:var(--topbar-height);background:#ff002b;color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;font-size:12px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-impersonating strong{font-weight:600}.nav{width:var(--nav-width);flex:0 0 var(--nav-width);background:var(--surface-raised);border-right:1px solid var(--border-soft);padding:20px 16px;display:flex;flex-direction:column;gap:22px;min-height:100vh}.main{flex:1;padding:32px 40px;max-width:1080px;margin:0 auto}.brand{display:flex;align-items:center;gap:10px}.brand-mark{height:30px;width:auto;flex:0 0 auto;display:block}.brand-mark-lg{height:44px}.brand-name{font-weight:600;font-size:15px}.brand-nav .brand-name{position:relative;top:2px}.brand-sub{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.nav-label{font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.nav-label-admin{color:var(--warn)}.nav-list{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;border-radius:var(--radius);color:var(--text-dim);font-size:14px;border:1px solid transparent}.nav-item:hover{background:var(--tint-primary);text-decoration:none;color:var(--text)}.nav-item.active{background:var(--tint-primary-strong);border-color:var(--primary-quiet);color:var(--text)}.nav-item.locked{color:var(--text-faint)}.nav-item.locked:hover{background:var(--tint-primary)}.nav-item-admin{color:var(--warn)}.nav-item-admin:hover{background:var(--tint-danger);color:var(--warn)}.nav-item-admin.active{background:var(--tint-danger);border-color:color-mix(in srgb,#FF3BA9 30%,#ffffff);color:var(--warn)}.nav-foot{margin-top:auto;border-top:1px solid var(--border-soft);padding-top:14px}.nav-user{font-size:13px}.nav-user-email{color:var(--text-faint);font-size:12px;word-break:break-all}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:22px 24px}.card+.card{margin-top:16px}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.muted{color:var(--text-dim)}.faint{color:var(--text-faint);font-size:13px}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.spacer{flex:1}button,.btn{font:inherit;font-weight:600;font-size:14px;padding:9px 16px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;background:var(--primary);color:#fff}button:hover:not(:disabled),.btn:hover{background:var(--primary-hover);text-decoration:none}button:disabled{opacity:.45;cursor:not-allowed}button.ghost{background:transparent;border-color:var(--border);color:var(--text-dim)}button.ghost:hover:not(:disabled){background:var(--tint-primary);color:var(--text)}button.danger{background:transparent;border-color:var(--border);color:var(--danger)}button.danger:hover:not(:disabled){background:var(--tint-danger)}button.small{padding:5px 11px;font-size:12.5px}input,select{font:inherit;font-size:14px;background:var(--canvas);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:9px 11px}input:focus,select:focus{outline:2px solid var(--primary-hover);outline-offset:-1px}input::placeholder{color:var(--text-faint)}label{font-size:13px;color:var(--text-dim);display:block;margin-bottom:5px}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:3px 9px;border-radius:999px;border:1px solid currentColor}.pill.ok{color:var(--ok)}.pill.pending{color:var(--pending)}.pill.danger{color:var(--danger)}.pill.neutral{color:var(--text-faint)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-weight:600;padding:0 12px 9px;border-bottom:1px solid var(--border-soft)}td{padding:11px 12px;border-bottom:1px solid var(--border-soft);vertical-align:middle}tr:last-child td{border-bottom:0}.banner{border-radius:var(--radius);padding:11px 14px;font-size:14px;border:1px solid;display:flex;gap:9px;align-items:flex-start}.banner.ok{color:var(--ok);border-color:var(--primary-quiet);background:var(--tint-ok)}.banner.warn{color:var(--warn);border-color:color-mix(in srgb,#FF3BA9 35%,#ffffff);background:var(--tint-danger)}.banner.danger{color:var(--danger);border-color:color-mix(in srgb,#FF3BA9 35%,#ffffff);background:var(--tint-danger)}.centered{min-height:100vh;display:grid;place-items:center;padding:24px}.centered-panel{min-height:200px;display:grid;place-items:center;padding:24px}.signin-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:34px;max-width:430px;width:100%;box-shadow:var(--shadow)}.rank{width:24px;height:24px;flex:0 0 24px;border-radius:7px;background:var(--tint-primary-strong);color:var(--accent-text);display:grid;place-items:center;font-size:12px;font-weight:600}.empty{text-align:center;padding:34px 20px;color:var(--text-faint)}.spinner-wrap{display:flex;align-items:center;gap:10px;padding:18px 0;color:var(--text-faint)}.spinner-mark{display:inline-block;width:16px;height:16px;flex:none;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spinner-turn .7s linear infinite}.spinner-inline{width:13px;height:13px;border-width:2px;vertical-align:-1px}.spinner-label{font-size:14px}@keyframes spinner-turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner-mark{animation:none;border-top-color:currentColor;opacity:.55}}.btn-busy{display:inline-flex;align-items:center;gap:9px;cursor:default;opacity:.85}.picker{border-bottom:1px solid var(--border);padding-bottom:16px}.picker label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.picker-row{display:flex;align-items:center;gap:12px}.picker-select{font-size:17px;font-weight:600;padding:9px 12px;min-width:300px;color:var(--text)}.picker-note{margin:8px 0 0}.rollout-panel{background:var(--surface-raised);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:20px;margin-top:8px}.rollout-panel .card+.card{margin-top:16px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:none;border:1px solid transparent;border-radius:var(--radius);color:var(--text-faint);cursor:pointer}.icon-button:hover:not(:disabled){color:var(--danger);background:var(--tint-danger);border-color:color-mix(in srgb,#FF3BA9 30%,#ffffff)}.icon-button:disabled{opacity:.45;cursor:default}.link-button{display:block;width:100%;margin-top:8px;padding:0;background:none;border:none;font-size:12.5px;text-align:left;cursor:pointer}.link-button:hover:not(:disabled){background:none;text-decoration:underline}.nav-view-as{color:var(--warn)}.nav-org-fixed{padding:8px 11px;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);font-size:13px;overflow-wrap:anywhere}.nav-exit-view{color:var(--warn);font-weight:600}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;background:color-mix(in srgb,#181225 45%,transparent)}.dialog{width:100%;max-width:420px;padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 48px color-mix(in srgb,#181225 22%,transparent)}.dialog h2{margin:0 0 8px;font-size:17px}.dialog p{margin:0 0 14px;font-size:13px}.dialog input{width:100%}.dialog-error{margin-top:10px;font-size:12.5px;color:var(--danger)}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
