:root{--ink-canvas:#fafafa;--ink-grid:#ececee;--ink-stage-shadow:0 1px 2px #1112140a, 0 12px 32px -8px #1112141f;--ink-surface:#fff;--ink-subtle:#fbfbfc;--ink-code:#f6f7f8;--ink-av-empty:#f3f4f6;--ink-line-subtle:#f0f1f3;--ink-line:#e6e7ea;--ink-track:#eeeff1;--ink-dash:#dcdee2;--ink-dash-strong:#c4c7cc;--ink-faint:#b3b7bd;--ink-disabled:#a3a7ae;--ink-mono2:#8b8f96;--ink-mono:#6b7079;--ink-fg2:#5f6368;--ink-fg:#111214;--ink-ink:#111214;--ink-on-ink:#fff;--ink-success:#1f8a5b;--ink-link:#2b63b8;--ink-danger:#c8362f;--ink-trace-api:#2fa98a;--ink-trace-api-bg:#a7e5d3;--ink-trace-event:#3d7fc2;--ink-trace-event-bg:#a8c8e8;--ink-ring:#1112141a;--ink-glow:#11121433;--ink-scrim:#1112143d;--ink-veil:#ffffffc7;--ink-gradient-brand:linear-gradient(90deg, #f6a34a, #ee5a9a, #8b5cf6, #38bdf8);--ink-gradient-flow:linear-gradient(135deg, #38bdf8, #8b5cf6, #ee5a9a, #f6a34a, #38bdf8, #8b5cf6, #ee5a9a, #f6a34a, #38bdf8);--ink-font-ui:-apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Helvetica, sans-serif;--ink-font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ink-fs:13px;--ink-fs-sm:12px;--ink-h1:22px;--ink-h2:16px;--ink-pad:24px;--ink-pad-x:24px;--ink-gap:12px;--ink-row-p:11px;--ink-btn-h:38px;--ink-hdr-h:76px;--ink-avatar:44px;--ink-trace-p:14px;--ink-trace-row-h:70px;--ink-side-w:252px;--ink-tl-w:420px;--ink-panel-w:300px;--ink-rail-w:48px;--ink-topbar-h:56px}[data-theme=dark]{--ink-canvas:#0f1012;--ink-grid:#1a1b1e;--ink-stage-shadow:0 1px 2px #0006, 0 12px 32px -8px #0009;--ink-surface:#141517;--ink-subtle:#1b1c1f;--ink-code:#1b1c1f;--ink-av-empty:#26272b;--ink-line-subtle:#1f2024;--ink-line:#2a2b2f;--ink-track:#26272b;--ink-dash:#3a3b40;--ink-dash-strong:#4a4b52;--ink-faint:#5f6368;--ink-disabled:#6b7079;--ink-mono2:#8b8f96;--ink-mono:#a3a7ae;--ink-fg2:#a3a7ae;--ink-fg:#f2f2f3;--ink-ink:#f2f2f3;--ink-on-ink:#111214;--ink-success:#3fb27f;--ink-link:#9bbcff;--ink-danger:#e5534b;--ink-trace-api:#7fdcc3;--ink-trace-api-bg:#1e4a3f;--ink-trace-event:#8ab9e6;--ink-trace-event-bg:#1f3550;--ink-ring:#f2f2f31f;--ink-glow:#f2f2f333;--ink-scrim:#0000007a;--ink-veil:#141517cc}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--ink-canvas);color:var(--ink-fg);font-family:var(--ink-font-ui);font-size:var(--ink-fs);font-weight:500;line-height:1.5}a{color:var(--ink-fg)}a:hover{color:var(--ink-fg2)}input::placeholder{color:var(--ink-disabled)}button,input{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--ink-ink);outline-offset:2px}.ink-mono{font-family:var(--ink-font-mono)}.ink-visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes lab-flow{to{background-position:200% 200%}}@keyframes lab-rowin{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes lab-rowbreathe{0%,to{border-color:var(--ink-line);border-left-color:var(--lab-trace-color);box-shadow:0 0 #0000}50%{border-color:var(--lab-trace-color);box-shadow:0 0 10px 0 color-mix(in oklab, var(--lab-trace-color) 35%, transparent)}}@keyframes lab-seatbreathe{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 12px 1px var(--ink-glow)}}.ink-button{height:var(--ink-btn-h);border:1px solid var(--ink-line);background:var(--ink-surface);color:var(--ink-fg);white-space:nowrap;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-weight:500;text-decoration:none;display:inline-flex}.ink-button:hover{border-color:var(--ink-dash-strong)}.ink-button:disabled{opacity:.45;cursor:default}.ink-button--primary{border-color:var(--ink-ink);background:var(--ink-ink);color:var(--ink-on-ink);font-weight:600}.ink-button--primary:hover{border-color:var(--ink-ink)}.ink-button--outline{border-color:var(--ink-ink);font-weight:600}.ink-button--danger{color:var(--ink-danger)}.ink-button--small{height:28px;padding:0 8px;font-size:12px}.ink-button--icon{width:var(--ink-btn-h);flex:none;padding:0}.ink-icon-button{border:1px solid var(--ink-line);background:var(--ink-surface);width:28px;height:28px;color:var(--ink-fg2);cursor:pointer;border-radius:6px;flex:none;place-items:center;padding:0;display:grid}.ink-icon-button:hover{border-color:var(--ink-dash-strong);color:var(--ink-fg)}.ink-icon-button[data-flipped=true] svg{transform:scaleX(-1)}.ink-input{height:var(--ink-btn-h);border:1px solid var(--ink-line);background:var(--ink-surface);color:var(--ink-fg);border-radius:6px;outline:none;min-width:0;padding:0 12px}.ink-input:focus{border-color:var(--ink-ink);box-shadow:0 0 0 3px var(--ink-ring)}.ink-input[aria-invalid=true]{border-color:var(--ink-danger)}.ink-input:disabled{color:var(--ink-disabled)}.ink-text-link{color:var(--ink-fg2);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;text-decoration:none}.ink-text-link:hover{color:var(--ink-fg)}.ink-text-link--danger,.ink-text-link--danger:hover{color:var(--ink-danger)}.ink-text-link:disabled{opacity:.45;cursor:default}.ink-eyebrow{font-family:var(--ink-font-mono);letter-spacing:.1em;color:var(--ink-mono);font-size:11px}.ink-tag--dashed{border:1px dashed var(--ink-dash-strong);color:var(--ink-mono);border-radius:3px;padding:2px 6px}.lab-shell{grid-template-rows:var(--ink-topbar-h) minmax(0, 1fr);background:var(--ink-canvas);height:100dvh;color:var(--ink-fg);display:grid}.lab-topbar{background:var(--ink-surface);border-bottom:1px solid var(--ink-line);align-items:center;gap:40px;min-width:0;padding:0 28px;display:flex}.lab-brand{letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.lab-brand__sub{font-family:var(--ink-font-mono);color:var(--ink-mono);letter-spacing:.04em;border-left:1px solid var(--ink-line);padding-left:10px;font-size:11px;font-weight:500}.lab-tabs{scrollbar-width:none;min-width:0;height:100%;font-family:var(--ink-font-mono);letter-spacing:.02em;flex:1;align-items:stretch;gap:4px;font-size:12px;display:flex;overflow-x:auto}.lab-tab--primary{color:var(--ink-fg2);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:0 12px;font-weight:500;text-decoration:none;display:flex}.lab-tab--primary:hover{color:var(--ink-fg)}.lab-tab--planned,.lab-tab--planned:hover{color:var(--ink-disabled);font:inherit;cursor:not-allowed;background:0 0;border:0;border-bottom:2px solid #0000}.lab-tabs__notice{z-index:100;border:1px solid var(--ink-line);background:var(--ink-surface);width:176px;color:var(--ink-fg2);text-align:center;white-space:nowrap;pointer-events:none;border-radius:6px;padding:7px 10px;font-size:12px;position:fixed;transform:translate(-50%)}.ink-inline-link{min-height:24px;color:var(--ink-link);background:color-mix(in srgb, var(--ink-link) 8%, transparent);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--ink-link) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--ink-link) 35%, transparent);text-underline-offset:4px;border-radius:4px;align-items:center;gap:2px;padding:0 4px;font-weight:600;display:inline-flex}.ink-inline-link:hover,.ink-inline-link:focus-visible{color:var(--ink-link);background:color-mix(in srgb, var(--ink-link) 14%, transparent);outline-color:var(--ink-link);text-decoration-color:currentColor}.ink-inline-link svg{flex:none}.lab-tab--primary[data-active=true]{color:var(--ink-fg);border-bottom-color:var(--ink-ink);font-weight:600}.lab-tab__num{color:var(--ink-disabled);font-weight:500}.lab-tab--primary[data-active=true] .lab-tab__num{color:var(--ink-mono)}.lab-topbar__side{flex:none;align-items:center;gap:16px;display:flex}.lab-connection{font-family:var(--ink-font-mono);color:var(--ink-fg2);white-space:nowrap;align-items:center;gap:8px;font-size:11px;display:flex}.lab-connection__label{color:var(--ink-mono2)}.lab-connection__dot{background:var(--ink-disabled);border-radius:50%;width:6px;height:6px;display:block}.lab-connection[data-state=connected] .lab-connection__dot{background:var(--ink-success)}.lab-connection[data-state=reconnecting] .lab-connection__dot,.lab-connection[data-state=failed] .lab-connection__dot,.lab-connection[data-state=missing] .lab-connection__dot{background:var(--ink-danger)}.lab-theme-toggle{border:1px solid var(--ink-line);background:var(--ink-surface);height:28px;color:var(--ink-fg2);font-family:var(--ink-font-mono);letter-spacing:.08em;cursor:pointer;border-radius:14px;align-items:center;gap:7px;padding:0 10px;font-size:10px;display:flex}.lab-theme-toggle:hover{border-color:var(--ink-dash-strong);color:var(--ink-fg)}.lab-theme-toggle__swatch{border:1px solid var(--ink-fg);background:var(--ink-fg);border-radius:50%;width:11px;height:11px;display:block}[data-theme=dark] .lab-theme-toggle__swatch{background:0 0}.lab-workspace{grid-template-columns:var(--ink-side-w) minmax(0, 1fr) var(--ink-tl-w);min-width:0;min-height:0;display:grid}.lab-workspace[data-left=collapsed]{--ink-side-w:var(--ink-rail-w)}.lab-workspace[data-timeline=collapsed]{--ink-tl-w:var(--ink-rail-w)}.lab-body{min-width:0;min-height:0;padding:var(--ink-pad);background-color:var(--ink-canvas);background-image:linear-gradient(var(--ink-grid) 1px, transparent 1px), linear-gradient(90deg, var(--ink-grid) 1px, transparent 1px);background-position:-1px -1px;background-size:72px 72px;display:grid}.lab-body>*{min-width:0;min-height:0}.lab-rail-label{writing-mode:vertical-rl;font-family:var(--ink-font-mono);letter-spacing:.14em;color:var(--ink-mono);white-space:nowrap;font-size:10px}.experience-path{border-right:1px solid var(--ink-line);background:var(--ink-surface);grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.experience-path__head{padding:var(--ink-pad) var(--ink-pad-x) 0;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.experience-path[data-collapsed=true] .experience-path__head{padding:var(--ink-pad) 10px 0;justify-content:center}.experience-path__title{font-weight:700;font-size:var(--ink-h2);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.experience-path__title>svg,.lab-timeline__title>svg{flex:none}.experience-path__content{padding:var(--ink-gap) var(--ink-pad-x) var(--ink-pad);gap:var(--ink-pad);flex-direction:column;min-height:0;display:flex;overflow:auto}.experience-path__section+.experience-path__section{border-top:1px solid var(--ink-line);padding-top:var(--ink-pad)}.experience-path__section-title{font-family:var(--ink-font-mono);letter-spacing:.06em;color:var(--ink-mono);justify-content:space-between;align-items:baseline;gap:8px;font-size:11px;display:flex}.experience-path__section-title h2{font:inherit;color:inherit;margin:0}.experience-path__count{color:var(--ink-fg)}.experience-path__progress{background:var(--ink-track);border-radius:1px;height:2px;margin-top:12px;overflow:hidden}.experience-path__progress>span{background:var(--ink-gradient-brand);height:100%;display:block}.experience-path__steps{margin:var(--ink-gap) 0 0 4px;border-left:1px solid var(--ink-line);grid-template-columns:minmax(0,1fr);padding:0 0 0 16px;list-style:none;display:grid}.experience-path__steps>li{position:relative}.experience-step__button{width:100%;padding:var(--ink-row-p) 0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.experience-step__dot{background:var(--ink-dash);width:7px;height:7px;box-shadow:0 0 0 3px var(--ink-surface);border-radius:50%;margin-top:-3.5px;position:absolute;top:50%;left:-20px}[data-state=complete] .experience-step__dot{background:var(--ink-success)}.experience-step__title{color:var(--ink-fg2);font-weight:500;line-height:1.3}[data-state=complete] .experience-step__title{color:var(--ink-fg);font-weight:600}.experience-step__status{font-size:var(--ink-fs-sm);color:var(--ink-disabled);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}[data-state=complete] .experience-step__status{color:var(--ink-success)}.experience-step__tooltip{z-index:100;border:1px solid var(--ink-line);background:var(--ink-surface);width:264px;max-width:calc(100vw - 24px);color:var(--ink-fg2);border-radius:6px;padding:12px 14px;position:fixed}.experience-step__tooltip>p{font-size:var(--ink-fs-sm);margin:0 0 8px;line-height:1.7}.experience-step__capability{font-family:var(--ink-font-mono);letter-spacing:.06em;color:var(--ink-mono);font-size:10px}.experience-path__planned{color:var(--ink-mono);font-size:var(--ink-fs-sm);margin:12px 0 0;line-height:1.7}.experience-path__planned-link{padding:var(--ink-row-p) 0;border-top:1px solid var(--ink-line-subtle);border-bottom:1px solid var(--ink-line-subtle);color:var(--ink-fg);font-size:var(--ink-fs-sm);justify-content:space-between;align-items:center;margin-top:12px;text-decoration:none;display:flex}.experience-path__console{height:var(--ink-btn-h);color:var(--ink-fg);font-weight:700;font-size:var(--ink-fs-sm);white-space:nowrap;isolation:isolate;background:var(--ink-gradient-flow);background-size:200% 200%;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding:0 14px;text-decoration:none;animation:3s linear infinite lab-flow;display:flex;position:relative}.experience-path__console:before{content:"";z-index:-1;background:var(--ink-surface);border-radius:4.5px;position:absolute;inset:1.5px}.experience-path__console:hover{color:var(--ink-fg)}.experience-path__arrow{font-family:var(--ink-font-mono);color:var(--ink-faint)}.experience-path__console .experience-path__arrow{color:var(--ink-fg)}.experience-path__resources{margin-top:8px;display:grid}.experience-path__resources a{padding:var(--ink-row-p) 0;border-bottom:1px solid var(--ink-line-subtle);color:var(--ink-fg);justify-content:space-between;align-items:center;text-decoration:none;display:flex}.experience-path__resources a:last-child{border-bottom:0}.experience-path__rail{place-items:start center;padding-top:8px;display:grid}.experience-path__backdrop{display:none}.lab-timeline{border-left:1px solid var(--ink-line);background:var(--ink-surface);grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.lab-timeline__header{padding:var(--ink-pad) var(--ink-pad) 0;justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.lab-timeline__heading{align-items:baseline;gap:10px;min-width:0;display:flex}.lab-timeline__title{font-weight:700;font-size:var(--ink-h2);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.lab-timeline__actions{flex:none;align-items:center;gap:12px;display:flex}.lab-timeline__filters{padding:12px var(--ink-pad);border-bottom:1px solid var(--ink-line);font-family:var(--ink-font-mono);letter-spacing:.02em;gap:6px;font-size:11px;display:flex}.lab-timeline__filter{border:1px solid var(--ink-line);background:var(--ink-surface);height:26px;color:var(--ink-fg);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.lab-timeline__filter:hover{border-color:var(--ink-dash-strong)}.lab-timeline__filter[data-active=true]{border-color:var(--ink-ink)}.lab-timeline__filter .lab-trace__dot{margin:0}.lab-timeline__filter-count{color:var(--ink-mono2)}.lab-timeline__body{min-height:0;overflow:auto}.lab-timeline__list{padding:var(--ink-gap) 14px;grid-template-columns:minmax(0,1fr);align-content:start;gap:10px;margin:0;list-style:none;display:grid}.lab-trace{--lab-trace-color:var(--ink-trace-api);min-height:var(--ink-trace-row-h);padding:var(--ink-trace-p) 12px;background:var(--ink-surface);border:1px solid var(--ink-line);border-left:3px solid var(--lab-trace-color);border-radius:6px;grid-template-columns:86px minmax(0,1fr);gap:0 10px;animation:.35s ease-out lab-rowin,1.8s ease-in-out .3s 2 lab-rowbreathe;display:grid;position:relative}.lab-trace[data-kind=event]{--lab-trace-color:var(--ink-trace-event)}.lab-trace[data-failed=true]{box-shadow:inset 0 0 0 1px var(--ink-danger)}.lab-trace__time{font-family:var(--ink-font-mono);color:var(--ink-mono);white-space:nowrap;font-size:11px;line-height:18px}.lab-trace__dot{background:var(--ink-trace-api);border-radius:50%;width:8px;height:8px;margin:5px 3px;display:block}.lab-trace__dot[data-kind=event]{background:var(--ink-trace-event)}.lab-trace__body{min-width:0}.lab-trace__head{white-space:nowrap;align-items:center;gap:8px;min-width:0;height:18px;line-height:18px;display:flex}.lab-trace__kind{font-family:var(--ink-font-mono);letter-spacing:.1em;color:var(--lab-trace-color);flex:none;font-size:10px;font-weight:600}.lab-trace__name{min-width:0;font-family:var(--ink-font-mono);color:var(--ink-fg);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.lab-trace__tag{min-width:0;font-family:var(--ink-font-mono);letter-spacing:.06em;color:var(--ink-fg2);border:1px solid var(--ink-dash);white-space:nowrap;text-overflow:ellipsis;background:0 0;border-radius:3px;padding:1px 5px;font-size:10px;line-height:14px;overflow:hidden}.lab-trace__duration{font-family:var(--ink-font-mono);color:var(--ink-mono2);white-space:nowrap;flex:none;margin-left:auto;font-size:11px}.lab-uid-badge{display:none}.lab-trace__summary{min-width:0;color:var(--ink-fg2);font-size:var(--ink-fs-sm);white-space:normal;grid-template-columns:minmax(0,1fr);gap:2px;margin-top:4px;line-height:1.5;display:grid;overflow:visible}.lab-trace__summary-text{overflow-wrap:anywhere;width:100%;min-width:0}.lab-trace__error{width:100%;min-width:0;max-width:100%;font-family:var(--ink-font-mono);color:var(--ink-danger);white-space:normal;flex-wrap:wrap;align-items:baseline;font-size:11px;display:flex}.lab-trace__error code{flex:none;margin-right:6px}.lab-trace__error-message{overflow-wrap:anywhere;min-width:0}.lab-timeline__empty{padding:var(--ink-pad);text-align:center;color:var(--ink-mono);font-size:var(--ink-fs-sm);place-items:center;margin:0;line-height:1.7;display:grid}.lab-timeline__empty:before{content:"";border:1.5px solid var(--ink-dash-strong);border-radius:50%;width:8px;height:8px;margin:0 auto 14px;display:block}.lab-timeline__backdrop{display:none}.lab-timeline--collapsed{grid-template-rows:auto auto minmax(0,1fr)}.lab-timeline__collapse-head{padding:var(--ink-pad) 0 0;justify-content:center;align-items:center;display:flex}.lab-timeline__rail{place-items:start center;padding-top:8px;display:grid}.vr-room-stage{min-width:0;min-height:0;display:grid;position:relative}.vr-room-stage>div{min-width:0;min-height:0;display:grid}.vr-single{grid-template-columns:minmax(0, 1fr) var(--ink-panel-w);grid-template-rows:var(--ink-hdr-h) minmax(0, 1fr) auto;background:var(--ink-surface);border:1px solid var(--ink-line);min-width:0;min-height:0;box-shadow:var(--ink-stage-shadow);border-radius:8px;display:grid;position:relative;overflow:hidden}.vr-single__header{padding:0 var(--ink-pad);border-bottom:1px solid var(--ink-line);grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.vr-single__identity{align-items:center;gap:14px;min-width:0;display:flex}.vr-single__role-badge{font-family:var(--ink-font-mono);letter-spacing:.1em;border:1px solid var(--ink-ink);color:var(--ink-fg);border-radius:3px;flex:none;padding:3px 7px;font-size:10px;font-weight:600}.vr-single__title{font-size:var(--ink-h1);letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:700;overflow:hidden}.vr-single__header-actions{flex:none;align-items:center;gap:8px;display:flex}.vr-single__stage{padding:var(--ink-pad);gap:var(--ink-gap);grid-area:2/1;grid-template-rows:auto auto auto auto auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.vr-single__section-heading{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.vr-single__section-heading>div{align-items:baseline;gap:10px;min-width:0;display:flex}.vr-single__section-heading>div>span{font-weight:600}.vr-single__meta{font-family:var(--ink-font-mono);color:var(--ink-mono);white-space:nowrap;font-size:11px}.vr-single__section-heading small{font-size:var(--ink-fs-sm);color:var(--ink-mono);white-space:nowrap}.vr-single__section-heading--divided{padding-top:var(--ink-gap);border-top:1px solid var(--ink-line)}.vr-single__seats{align-content:start;gap:var(--ink-gap);grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:132px;display:grid}.vr-single__seat{border:1px solid var(--ink-line);background:var(--ink-surface);color:var(--ink-fg);font-size:var(--ink-fs);cursor:pointer;border-radius:10px;align-content:center;justify-items:center;gap:10px;min-width:0;min-height:0;padding:12px;display:grid;position:relative}.vr-single__seat[data-state=empty]{border-style:dashed;border-color:var(--ink-dash);background:0 0}.vr-single__seat[data-selected=true]{border-color:var(--ink-ink);box-shadow:0 0 0 3px var(--ink-ring);border-style:solid}.vr-single__seat[data-speaking=true] .vr-single__seat-avatar{animation:1.8s ease-in-out infinite lab-seatbreathe}.vr-single__seat-number,.vr-single__seat-host{font-family:var(--ink-font-mono);color:var(--ink-mono2);font-size:10px;position:absolute;top:8px;left:10px}.vr-single__seat-host{background:var(--ink-surface);color:var(--ink-fg);border-radius:3px;align-items:center;padding:0 2px;line-height:0;display:inline-flex;top:-12px;left:8px}.vr-single__seat-host svg{fill:var(--ink-fg)}.vr-single__seat-avatar{width:var(--ink-avatar);height:var(--ink-avatar);background:var(--ink-ink);color:var(--ink-on-ink);border-radius:50%;place-items:center;font-size:15px;font-weight:600;display:grid}.vr-single__seat[data-state=empty] .vr-single__seat-avatar{background:var(--ink-av-empty);color:var(--ink-mono2)}.vr-single__seat-copy{justify-items:center;gap:3px;min-width:0;max-width:100%;display:grid}.vr-single__seat strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.vr-single__seat[data-state=empty] strong{color:var(--ink-mono)}.vr-single__seat small{font-family:var(--ink-font-mono);letter-spacing:.04em;color:var(--ink-mono2);font-size:10px}.vr-single__seat[data-mic=on] small{color:var(--ink-success)}.vr-single__seat[data-speaking=true] small{color:var(--ink-fg)}.vr-single__seat[data-mic=forced] small,.vr-single__seat[data-mic=error] small{color:var(--ink-danger)}.vr-single__seat[data-mic=away] small{color:var(--ink-mono)}.vr-single__seat[data-waiting=true],.vr-single__seat[data-invited=true]{border-color:var(--ink-ink);border-style:solid}.vr-single__seat-mic{color:var(--ink-mono2);place-items:center;display:grid;position:absolute;top:8px;right:10px}.vr-single__seat[data-mic=forced] .vr-single__seat-mic,.vr-single__seat[data-mic=error] .vr-single__seat-mic{color:var(--ink-danger)}.vr-single__announcement{color:var(--ink-fg);line-height:1.6;font-size:var(--ink-fs-sm);margin:0}.vr-single__chat{align-content:end;min-height:0;display:grid}.vr-single__chat-feed{min-height:0;font-size:var(--ink-fs);max-height:calc(7.5em + 4 * var(--ink-row-p));gap:var(--ink-row-p);flex-direction:column;display:flex;overflow:auto}.vr-single__chat-feed>p{word-break:break-word;flex:none;min-height:1.5em;margin:0;line-height:1.5}.vr-single__chat-feed>p strong{font-weight:600}.vr-single__system-message{color:var(--ink-mono2)}.vr-single__chat-empty{color:var(--ink-mono);font-size:var(--ink-fs-sm)}.vr-single__composer{padding:var(--ink-gap) var(--ink-pad) var(--ink-pad);border-top:1px solid var(--ink-line);grid-area:3/1;min-width:0}.vr-single__composer form{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;min-height:46px;display:flex}.vr-single__composer input{flex:1 1 0;width:0;height:46px}.vr-single__composer .ink-button{flex:none}.vr-single__emoji-control{flex:none;position:relative}.vr-single__emoji-picker{z-index:20;border:1px solid var(--ink-line);background:var(--ink-surface);border-radius:8px;grid-template-columns:repeat(10,28px);gap:2px;padding:8px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0}.vr-single__emoji-picker button{cursor:pointer;background:0 0;border:0;border-radius:4px;width:28px;height:28px;padding:0;font-size:16px;line-height:1}.vr-single__emoji-picker button:hover{background:var(--ink-av-empty)}.vr-single__panel{border-left:1px solid var(--ink-line);background:var(--ink-subtle);padding:var(--ink-pad);align-content:start;gap:var(--ink-pad);grid-area:2/2/4;grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:auto}.vr-single__control-group{min-width:0}.vr-single__context-card{border:1px solid var(--ink-ink);background:var(--ink-surface);border-radius:8px;gap:12px;padding:14px;display:grid}.vr-single__context-card>header{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.vr-single__context-card>header>span:first-child{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.vr-single__context-state{font-family:var(--ink-font-mono);letter-spacing:.06em;color:var(--ink-mono);white-space:nowrap;font-size:10px}.vr-single__context-state[data-tone=success]{color:var(--ink-success)}.vr-single__context-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.vr-single__context-actions--two{grid-template-columns:repeat(2,minmax(0,1fr))}.vr-single__context-actions .ink-button{min-width:0;height:32px;padding:0;font-size:12px}.vr-single__control-heading{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.vr-single__control-heading span{font-weight:600}.vr-single__control-heading small{font-family:var(--ink-font-mono);color:var(--ink-mono);font-size:11px}.vr-single__request-list{display:grid}.vr-single__request{padding:var(--ink-row-p) 0;border-top:1px solid var(--ink-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.vr-single__request:last-child{border-bottom:1px solid var(--ink-line)}.vr-single__request>div{gap:2px;min-width:0;display:grid}.vr-single__request strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.vr-single__request small{font-family:var(--ink-font-mono);color:var(--ink-mono);font-size:10px}.vr-single__request-actions{flex:none;gap:4px;display:flex}.vr-single__empty{padding:var(--ink-row-p) 0;border-top:1px solid var(--ink-line);color:var(--ink-mono);font-size:var(--ink-fs-sm);margin:0}.vr-single__field{gap:6px;min-width:0;display:flex}.vr-single__field input{flex:1 1 0;width:0;padding:0 10px}.vr-single__member-row{padding:var(--ink-row-p) 0;border-top:1px solid var(--ink-line-subtle);justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.vr-single__member-row>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.vr-single__member-row-actions{flex:none;gap:10px;display:flex}.vr-single__status-row{padding:var(--ink-row-p) 0;border-top:1px solid var(--ink-line-subtle);justify-content:space-between;align-items:center;gap:10px;display:flex}.vr-single__status-row>span:first-child{color:var(--ink-fg2)}.vr-single__status-value{font-family:var(--ink-font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.vr-single__status-value--text{font-family:var(--ink-font-ui);font-size:var(--ink-fs)}.vr-single__status-value--muted{color:var(--ink-mono)}.vr-room-loading{z-index:10;text-align:center;background:var(--ink-veil);color:var(--ink-fg);place-content:center;justify-items:center;gap:14px;display:grid;position:absolute;inset:0}.vr-room-loading strong{font-weight:600}.vr-room-stage>.vr-entry__pending{left:50%;bottom:var(--ink-pad);z-index:15;position:absolute;transform:translate(-50%)}.vr-toast-viewport{z-index:30;pointer-events:none;position:absolute}.vr-toast-viewport--header{top:calc(var(--ink-hdr-h) + 12px);right:var(--ink-pad);max-width:min(360px, calc(100% - 2 * var(--ink-pad)))}.vr-toast-viewport--page{left:50%;bottom:var(--ink-pad);max-width:calc(100% - 2 * var(--ink-pad));transform:translate(-50%)}.vr-toast-message{pointer-events:none;border:1px solid var(--ink-ink);background:var(--ink-surface);color:var(--ink-fg);font-size:var(--ink-fs);border-radius:8px;align-items:center;gap:10px;margin:0;padding:12px 14px;display:flex}.vr-toast--error{border-color:var(--ink-danger);color:var(--ink-danger)}.vr-entry{background:var(--ink-surface);border:1px solid var(--ink-line);padding:var(--ink-pad);border-radius:8px;align-content:center;justify-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:auto}.vr-entry__inner{gap:36px;width:100%;max-width:640px;display:grid}.vr-entry__intro{gap:10px;display:grid}.vr-entry__intro h1{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:700;line-height:1.1}.vr-entry__intro p{color:var(--ink-fg2);margin:0;font-size:14px;line-height:1.7}.vr-entry__choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.vr-entry__choice-panel{border:1px solid var(--ink-line);border-radius:8px;align-content:start;gap:12px;min-width:0;padding:20px;display:grid}.vr-entry__choice-panel>.ink-eyebrow{font-size:10px}.vr-entry__choice-panel label{gap:8px;font-weight:600;display:grid}.vr-entry__choice-panel input{width:100%;font-weight:500}.vr-entry__hint{color:var(--ink-mono);margin:0;font-size:12px;line-height:1.6}.vr-entry__hint--error{color:var(--ink-danger)}@media (width>=761px){.vr-entry__choice-panel>.vr-entry__hint:first-of-type{min-height:3.2em}}.vr-entry__footnote{font-family:var(--ink-font-mono);color:var(--ink-mono);text-align:center;letter-spacing:.02em;margin:0;font-size:11px}.vr-entry__pending{border:1px solid var(--ink-line);background:var(--ink-surface);font-size:var(--ink-fs);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin:0;padding:12px 14px;display:flex}.vr-entry__pending:before{content:"";background:var(--ink-success);border-radius:50%;flex:none;width:8px;height:8px}.vr-entry__pending[role=alert]:before{background:var(--ink-danger)}.vr-entry__pending>span{flex:1;min-width:0}.vr-entry--status .vr-entry__inner{text-align:center;justify-items:center;gap:16px;max-width:480px}.vr-entry--status h2{font-size:var(--ink-h1);letter-spacing:-.02em;margin:0;font-weight:700}.vr-entry--status p{color:var(--ink-fg2);margin:0;line-height:1.7}.vr-entry__status-icon{border:1px solid var(--ink-line);width:44px;height:44px;color:var(--ink-fg2);border-radius:50%;place-items:center;display:grid}.vr-entry__status-icon[data-tone=danger]{border-color:var(--ink-danger);color:var(--ink-danger)}.lab-placeholder,.lab-guide{background:var(--ink-surface);border:1px solid var(--ink-line);padding:var(--ink-pad);border-radius:8px;align-content:center;justify-items:center;min-height:0;display:grid;overflow:auto}.lab-placeholder__inner,.lab-guide__inner{gap:28px;width:100%;max-width:560px;display:grid}.lab-placeholder__intro,.lab-guide__intro{gap:10px;display:grid}.lab-placeholder__badge{align-items:center;gap:10px;margin:0;display:flex}.lab-placeholder__title,.lab-guide__title{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:700;line-height:1.1}.lab-placeholder__summary,.lab-guide__lead{color:var(--ink-fg2);margin:0;font-size:14px;line-height:1.7}.lab-placeholder__capabilities{display:grid}.lab-placeholder__capabilities-label{font-family:var(--ink-font-mono);letter-spacing:.06em;color:var(--ink-mono);padding-bottom:8px;font-size:11px}.lab-placeholder__capability-list{border-bottom:1px solid var(--ink-line);margin:0;padding:0;list-style:none;display:grid}.lab-placeholder__capability{border-top:1px solid var(--ink-line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.lab-placeholder__capability>span:first-child{font-weight:600}.lab-placeholder__capability>span:last-child{font-family:var(--ink-font-mono);color:var(--ink-mono);font-size:11px}.lab-placeholder__note{color:var(--ink-mono);margin:0;font-size:12px;line-height:1.7}.lab-placeholder__note a{color:var(--ink-fg);font-weight:600;text-decoration:none}.lab-guide__eyebrow{color:var(--ink-danger)}.lab-guide__section{gap:10px;display:grid}.lab-guide__section-title{font-size:var(--ink-fs);align-items:baseline;gap:10px;margin:0;display:flex}.lab-guide__section-title>span:first-child{font-family:var(--ink-font-mono);color:var(--ink-mono);font-size:11px}.lab-guide__section-title>strong{font-weight:600}.lab-guide__section-title>span:last-child{color:var(--ink-mono);font-size:12px}.lab-guide__code{background:var(--ink-code);font-family:var(--ink-font-mono);white-space:pre-wrap;word-break:break-all;border-radius:6px;margin:0;padding:14px 16px;font-size:12px;line-height:1.6}.lab-scene-stub{text-align:center;align-content:center;justify-items:center;gap:10px;display:grid}.lab-scene-stub__title{font-size:var(--ink-h1);letter-spacing:-.02em;margin:0;font-weight:700}@media (width>=761px){.lab-workspace,.lab-body{grid-template-rows:minmax(0,1fr)}.lab-scene>.vr-entry--landing{align-content:safe center;height:100%}}@media (width<=1279px){.lab-topbar{gap:24px;padding:0 20px}}@media (width<=760px){.lab-shell{height:auto;min-height:100dvh}.lab-topbar{gap:12px;padding:0 12px}.lab-brand__sub,.lab-connection{display:none}.lab-workspace{grid-template-columns:var(--ink-rail-w) minmax(0, 1fr) var(--ink-rail-w);position:relative}.lab-body{padding:12px}.experience-path[data-collapsed=false]{top:var(--ink-topbar-h);width:min(var(--ink-side-w), calc(100vw - 48px));z-index:51;position:fixed;bottom:0;left:0}.experience-path__backdrop{inset:var(--ink-topbar-h) 0 0;z-index:50;background:var(--ink-scrim);border:0;padding:0;display:block;position:fixed}.lab-timeline:not(.lab-timeline--collapsed){top:var(--ink-topbar-h);width:min(var(--ink-tl-w), calc(100vw - 48px));z-index:51;position:fixed;bottom:0;right:0}.lab-timeline__backdrop{inset:var(--ink-topbar-h) 0 0;z-index:50;background:var(--ink-scrim);border:0;padding:0;display:block;position:fixed}.vr-single{min-height:calc(100dvh - var(--ink-topbar-h) - 24px);grid-template-rows:auto auto auto auto;grid-template-columns:minmax(0,1fr)}.vr-single__header{flex-wrap:wrap;min-height:64px;padding:10px 14px}.vr-single__stage{grid-area:2/1;grid-template-rows:auto auto auto auto auto minmax(160px,1fr);padding:14px}.vr-single__seats{grid-auto-rows:104px;gap:8px}.vr-single__seat{gap:6px;padding:8px}.vr-single__seat-avatar{width:36px;height:36px}.vr-single__composer{grid-area:3/1;padding:10px 14px 14px}.vr-single__composer form{grid-template-columns:repeat(3, var(--ink-btn-h)) minmax(0, 1fr) auto;grid-template-rows:46px var(--ink-btn-h);gap:8px;height:auto;display:grid}.vr-single__composer input{grid-area:1/1/auto/-2;width:100%}.vr-single__composer button[type=submit]{grid-area:1/-2/auto/-1}.vr-single__composer .vr-single__emoji-control{grid-area:2/1}.vr-single__composer .vr-single__quick-action{grid-row:2}.vr-single__composer .vr-single__mic-action{grid-area:2/4;justify-self:end}.vr-single__composer .vr-single__seat-action{grid-area:2/5;justify-self:end}.vr-single__panel{border-left:0;border-top:1px solid var(--ink-line);grid-area:4/1;gap:16px;padding:14px;overflow:visible}.vr-entry__choices{grid-template-columns:minmax(0,1fr)}.vr-entry__intro h1,.lab-placeholder__title,.lab-guide__title{font-size:26px}.vr-toast-viewport--header{top:76px;right:14px}}@media (prefers-reduced-motion:reduce){.experience-path__console,.lab-trace,.vr-single__seat[data-speaking=true] .vr-single__seat-avatar{animation:none}}.oc-workbench,.oc-status-card{width:100%;min-height:min(680px, calc(100dvh - var(--ink-topbar-h) - 48px));border:1px solid var(--ink-line);background:var(--ink-surface);box-shadow:var(--ink-stage-shadow);border-radius:8px}.oc-status-card{padding:var(--ink-pad);text-align:center;place-content:center;justify-items:center;gap:12px;display:grid}.oc-status-card h1,.oc-status-card p{margin:0}.oc-status-card p{color:var(--ink-fg2)}.oc-workbench{grid-template-rows:var(--ink-hdr-h) minmax(0, 1fr);display:grid;position:relative;overflow:hidden}.oc-workbench__header{padding:0 var(--ink-pad);border-bottom:1px solid var(--ink-line);justify-content:space-between;align-items:center;gap:16px;display:flex}.oc-workbench__header h1{font-size:var(--ink-h1);letter-spacing:0;margin:3px 0 0}.oc-eyebrow,.oc-section-label,.oc-state-tag,.oc-call-timer{font-family:var(--ink-font-mono);letter-spacing:0}.oc-eyebrow,.oc-section-label{color:var(--ink-mono);font-size:var(--ink-fs-sm);font-weight:700}.oc-state-tag{border:1px solid var(--ink-line);color:var(--ink-fg2);border-radius:3px;flex:none;padding:5px 7px;font-size:11px;font-weight:700}.oc-workbench__body{grid-template-columns:minmax(220px,280px) minmax(0,1fr);min-height:0;display:grid}.oc-identity-panel{padding:var(--ink-pad);border-right:1px solid var(--ink-line);background:var(--ink-subtle);flex-direction:column;gap:12px;display:flex}.oc-call-id{grid-template-columns:minmax(0, 1fr) var(--ink-btn-h);border:1px solid var(--ink-line);background:var(--ink-code);border-radius:6px;align-items:center;display:grid;overflow:hidden}.oc-call-id code{min-width:0;color:var(--ink-fg);font-family:var(--ink-font-mono);text-overflow:ellipsis;white-space:nowrap;padding:0 11px;overflow:hidden}.oc-icon-button{width:var(--ink-btn-h);height:var(--ink-btn-h);border:0;border-left:1px solid var(--ink-line);background:var(--ink-surface);color:var(--ink-fg2);place-items:center;display:grid}.oc-icon-button:hover{color:var(--ink-fg)}.oc-inline-success{color:var(--ink-success);font-size:var(--ink-fs-sm)}.oc-field{color:var(--ink-fg2);font-size:var(--ink-fs-sm);gap:7px;font-weight:600;display:grid}.oc-field input{border:1px solid var(--ink-line);background:var(--ink-surface);width:100%;height:42px;color:var(--ink-fg);font:500 var(--ink-fs) var(--ink-font-ui);letter-spacing:0;border-radius:6px;padding:0 12px}.oc-field input:focus{border-color:var(--ink-ink);box-shadow:0 0 0 3px var(--ink-ring);outline:0}.oc-field input[aria-invalid=true]{border-color:var(--ink-danger)}.oc-field-error{color:var(--ink-danger);font-size:var(--ink-fs-sm)}.oc-call-stage{place-items:center;min-width:0;padding:clamp(24px,6vh,64px) clamp(20px,3vw,40px);display:grid}.oc-dial-form,.oc-call-status{text-align:center;justify-items:center;gap:14px;width:min(100%,460px);display:grid}.oc-stage-copy h2,.oc-call-status h2{letter-spacing:0;margin:3px 0 0;font-size:20px}.oc-stage-copy p,.oc-call-status p{color:var(--ink-fg2);margin:5px 0 0}.oc-field--wide{text-align:left;width:100%;margin-top:8px}.oc-peer-hint{width:100%;color:var(--ink-mono);text-align:left;margin:-8px 0 0;font-size:12px}.oc-avatar{border:1px solid var(--ink-line);background:var(--ink-av-empty);width:48px;height:48px;color:var(--ink-fg);border-radius:50%;place-items:center;display:grid}.oc-avatar--large{width:72px;height:72px}.oc-call-timer{color:var(--ink-fg);font-size:22px;font-weight:700}.oc-call-actions{justify-content:center;align-items:center;gap:10px;margin-top:8px;display:flex}.oc-round-control{border:1px solid var(--ink-line);background:var(--ink-surface);width:44px;height:44px;color:var(--ink-fg);border-radius:50%;place-items:center;display:grid}.oc-round-control:hover{border-color:var(--ink-dash-strong)}.oc-round-control--danger{border-color:var(--ink-danger);color:var(--ink-danger)}.oc-toast{border:1px solid var(--ink-line);background:var(--ink-surface);box-shadow:var(--ink-stage-shadow);color:var(--ink-fg);border-radius:6px;padding:10px 12px;position:absolute;bottom:16px;right:16px}.oc-link-overlay{inset:var(--ink-hdr-h) 0 0;z-index:10;padding:var(--ink-pad);background:var(--ink-veil);color:var(--ink-fg);text-align:center;place-content:center;justify-items:center;gap:12px;display:grid;position:absolute}.oc-link-overlay strong{font-weight:600}.oc-link-banner{top:calc(var(--ink-hdr-h) + 12px);z-index:10;border:1px solid var(--ink-line);background:var(--ink-surface);max-width:calc(100% - 32px);color:var(--ink-fg2);font-size:var(--ink-fs-sm);pointer-events:none;border-radius:6px;padding:8px 11px;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}@media (width<=760px){.oc-workbench,.oc-status-card{min-height:calc(100dvh - var(--ink-topbar-h) - 24px)}.oc-workbench{grid-template-rows:auto minmax(0,1fr)}.oc-workbench__header{min-height:64px;padding:10px 14px}.oc-workbench__body{grid-template-rows:auto minmax(360px,1fr);grid-template-columns:minmax(0,1fr)}.oc-identity-panel{border-right:0;border-bottom:1px solid var(--ink-line);padding:14px}.oc-call-stage{padding:28px 18px}}
