.island{margin:1.5rem auto}.island__stage{position:relative;display:flex;flex-direction:column;justify-content:center}.island__mount{display:block;width:100%}.island__fallback{position:absolute;inset:0;margin:0}.island__fallback>*{margin:0}.island .island__fallback img{display:block;width:100%;height:100%;object-fit:contain}.islands-js .island__fallback{display:none}.islands-js .island.is-failed .island__fallback{display:block}.islands-js .island.is-failed .island__mount{display:none}.island__caption{margin:.6rem 0 0;font-size:.875rem;line-height:1.4;text-align:center;opacity:.75}.island__spinner{position:absolute;inset:0;display:none;align-items:center;justify-content:center;gap:6px;pointer-events:none;color:var(--island-spinner,currentColor)}.islands-js .island__spinner{display:flex}.islands-js .island.is-ready .island__spinner,.islands-js .island.is-failed .island__spinner{display:none}.island__spinner-dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.35;animation:island-spinner 1s ease-in-out infinite}.island__spinner-dot:nth-child(2){animation-delay:.15s}.island__spinner-dot:nth-child(3){animation-delay:.3s}@keyframes island-spinner{0%,100%{opacity:.2;transform:translateY(0)}50%{opacity:.7;transform:translateY(-4px)}}@media(prefers-reduced-motion:reduce){.island__spinner-dot{animation:none}}.island{--qi-fg:#303547;--qi-muted:#656b7f;--qi-surface:#f0f3fa;--qi-border:#d3d9eb;--qi-line:#abb1c7;--qi-hot:#303547;--qi-cell-stroke:rgba(17, 24, 36, 0.3);--qi-accent:#dc244c;--qi-cat-1:#6047ff;--qi-cat-2:#9c27b0;--qi-cat-3:#00838f;--qi-cat-4:#dc244c;--qi-cat-3-soft:#b2ebf2;--qi-mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--qi-radius:6px}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .island{--qi-fg:#e2e7f5;--qi-muted:#898ea3;--qi-surface:#111824;--qi-border:#303547;--qi-line:#4e5366;--qi-hot:#f0f3fa;--qi-cell-stroke:rgba(226, 231, 245, 0.18);--qi-cat-3-soft:#006064}}html[data-theme=dark] .island{--qi-fg:#e2e7f5;--qi-muted:#898ea3;--qi-surface:#111824;--qi-border:#303547;--qi-line:#4e5366;--qi-hot:#f0f3fa;--qi-cell-stroke:rgba(226, 231, 245, 0.18);--qi-cat-3-soft:#006064}.qi-fig{display:flex;flex-direction:column;gap:14px;color:var(--qi-fg)}.qi-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;min-height:30px}.qi-controls--split{justify-content:space-between}.qi-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.qi-hint{font-family:var(--qi-mono);font-size:12px;color:var(--qi-muted)}.qi-chip{display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border:1px solid var(--qi-border);border-radius:var(--qi-radius);background:0 0;color:var(--qi-muted);font-family:var(--qi-mono);font-size:12px;line-height:18px;cursor:pointer;white-space:nowrap;transition:color .15s ease,border-color .15s ease,background .15s ease}.qi-chip:hover:not(:disabled){color:var(--qi-fg);border-color:var(--qi-muted)}.qi-chip:focus-visible{outline:2px solid var(--qi-fg);outline-offset:1px}.qi-chip[aria-pressed=true],.qi-chip.is-active{color:var(--qi-fg);border-color:var(--qi-fg);background:var(--qi-surface)}.qi-chip:disabled{opacity:.45;cursor:default}.qi-chip b{font-weight:600;font-variant-numeric:tabular-nums}.qi-chip small{font-size:11px;opacity:.75;font-variant-numeric:tabular-nums}.qi-chip__swatch{width:10px;height:10px;border-radius:2px;flex:none;background:var(--swatch,currentColor)}.qi-chip__icon{flex:none}.qi-switch__track{position:relative;flex:none;width:28px;height:16px;border-radius:999px;background:var(--qi-line);transition:background .2s ease}.qi-switch__knob{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:var(--qi-surface);transition:transform .2s ease}.qi-chip[aria-pressed=true] .qi-switch__track{background:var(--qi-fg)}.qi-chip[aria-pressed=true] .qi-switch__knob{transform:translateX(12px)}.qi-status{margin:0;min-height:1.45em;font-size:14px;line-height:1.45;color:var(--qi-fg)}.qi-status--2{min-height:2.9em}.qi-status sub{font-size:.75em}.qi-svg{display:block;width:100%;height:auto}.qi-frame{fill:var(--qi-surface);stroke:var(--qi-border);stroke-width:1}.qi-frame-label{fill:var(--qi-muted);font-family:var(--qi-mono);font-size:14px}.qi-title{fill:var(--qi-fg);font-family:var(--qi-mono);font-size:13px;font-weight:600}.qi-label{fill:var(--qi-muted);font-family:var(--qi-mono);font-size:12px}.qi-label--strong{fill:var(--qi-fg)}.qi-axis{stroke:var(--qi-line);stroke-width:1.5}