:root{color-scheme:light;--bs-solid-100: #fbe6cb;--bs-solid-300: #f5c584;--bs-solid-500: #efa84e;--bs-solid-700: #c96b3c;--bs-solid-900: #8a4526;--bs-cut-100: #cdeef2;--bs-cut-300: #5cd3e0;--bs-cut-500: #14748a;--bs-cut-700: #0a3d4c;--bs-brand: var(--bs-solid-500);--bs-brand-contrast: #1a1512;--bs-accent-ink: var(--bs-solid-900);--bs-accent-ink-hover: var(--bs-solid-700);--bs-danger: #d2453f;--bs-warning: #c07c14;--bs-success: #2f8f5b;--bs-info: var(--bs-cut-500);--bs-bg: #f4efe9;--bs-surface: #fffdfb;--bs-surface-raised: #ffffff;--bs-surface-sunken: #ede8e2;--bs-border: #ded5cb;--bs-border-strong: #bfb3a6;--bs-text: #1c1815;--bs-text-muted: #6b6159;--bs-text-faint: #948980;--bs-syntax-comment: #857a70;--bs-syntax-keyword: #9a4708;--bs-syntax-type: #0b6379;--bs-syntax-transform: #12708a;--bs-syntax-builtin: #8f5111;--bs-syntax-number: #0f6b3d;--bs-syntax-string: #963c10;--bs-syntax-special: #6b21c8;--bs-syntax-call: #1a4fd0;--bs-syntax-modifier: #bf2020;--bs-viewport-bg: #e8e2da;--bs-viewport-glow: #f8f5f1;--bs-viewport-grid: #cbc0b3;--bs-viewport-axis-x: #d2453f;--bs-viewport-axis-y: #2f8f5b;--bs-viewport-axis-z: #3b74df;--bs-font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bs-font-mono: "JetBrains Mono", "SF Mono", "Cascadia Code", Menlo, Consolas, "Liberation Mono", monospace;--bs-font-size: 13px;--bs-font-size-sm: 11.5px;--bs-line-height: 1.5;--bs-line-height-code: 1.65;--bs-tracking-label: .09em;--bs-radius-sm: 4px;--bs-radius: 6px;--bs-radius-lg: 10px;--bs-space-1: 4px;--bs-space-2: 8px;--bs-space-3: 12px;--bs-space-4: 16px;--bs-space-5: 24px;--bs-shadow-1: 0 1px 2px rgb(38 30 24 / 8%);--bs-shadow-2: 0 4px 16px rgb(38 30 24 / 12%);--bs-shadow-3: 0 16px 48px rgb(38 30 24 / 20%);--bs-transition: .12s cubic-bezier(.2, 0, .2, 1)}:root[data-theme=dark],:root:not([data-theme=light]){color-scheme:dark;--bs-bg: #0e0c0b;--bs-surface: #161311;--bs-surface-raised: #1f1b18;--bs-surface-sunken: #0a0908;--bs-border: #2a2523;--bs-border-strong: #3f3833;--bs-text: #ede8e2;--bs-text-muted: #9a8f86;--bs-text-faint: #6e655e;--bs-accent-ink: var(--bs-solid-500);--bs-accent-ink-hover: var(--bs-solid-300);--bs-viewport-bg: #0e0c0b;--bs-viewport-glow: #241d19;--bs-viewport-grid: #2b2522;--bs-syntax-comment: #877d74;--bs-syntax-keyword: #efa84e;--bs-syntax-type: #5cd3e0;--bs-syntax-transform: #45c3d4;--bs-syntax-builtin: #f5c584;--bs-syntax-number: #6fcfae;--bs-syntax-string: #e2a06f;--bs-syntax-special: #c79ae8;--bs-syntax-call: #8fb8e8;--bs-syntax-modifier: #e8756c;--bs-shadow-1: 0 1px 2px rgb(0 0 0 / 45%);--bs-shadow-2: 0 4px 16px rgb(0 0 0 / 55%);--bs-shadow-3: 0 16px 48px rgb(0 0 0 / 65%)}:root[data-theme=light]{color-scheme:light;--bs-bg: #f4efe9;--bs-surface: #fffdfb;--bs-surface-raised: #ffffff;--bs-surface-sunken: #ede8e2;--bs-border: #ded5cb;--bs-border-strong: #bfb3a6;--bs-text: #1c1815;--bs-text-muted: #6b6159;--bs-text-faint: #948980;--bs-accent-ink: var(--bs-solid-900);--bs-accent-ink-hover: var(--bs-solid-700);--bs-viewport-bg: #e8e2da;--bs-viewport-glow: #f8f5f1;--bs-viewport-grid: #cbc0b3;--bs-syntax-comment: #857a70;--bs-syntax-keyword: #9a4708;--bs-syntax-type: #0b6379;--bs-syntax-transform: #12708a;--bs-syntax-builtin: #8f5111;--bs-syntax-number: #0f6b3d;--bs-syntax-string: #963c10;--bs-syntax-special: #6b21c8;--bs-syntax-call: #1a4fd0;--bs-syntax-modifier: #bf2020}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--bs-bg);color:var(--bs-text);font-family:var(--bs-font-ui);font-size:var(--bs-font-size);line-height:var(--bs-line-height);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}.boot{position:fixed;inset:0;display:grid;place-content:center;justify-items:center;gap:var(--bs-space-4);background:var(--bs-bg)}.boot__mark{animation:boot-pulse 1.8s ease-in-out infinite}.boot__text{margin:0;color:var(--bs-text-muted)}.noscript{max-width:54ch;text-align:left;color:var(--bs-text-muted)}.noscript h1{margin:0 0 var(--bs-space-3);color:var(--bs-text);font-size:1.4rem}.noscript p{margin:0 0 var(--bs-space-3)}.noscript code{font-family:var(--bs-font-mono);font-size:.92em}.noscript a{color:var(--bs-accent-ink)}.boot--error .boot__mark{animation:none;opacity:.4}.boot--error .boot__text{max-width:48ch;text-align:center;color:var(--bs-danger)}@keyframes boot-pulse{0%,to{opacity:1;transform:translateY(0)}50%{opacity:.55;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.boot__mark{animation:none}}.app{display:grid;grid-template-rows:auto 1fr auto;height:100dvh;min-height:0}[hidden]{display:none!important}.toolbar{display:flex;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-2) var(--bs-space-3);background:var(--bs-surface);border-bottom:1px solid var(--bs-border)}.toolbar__brand{display:flex;align-items:center;gap:var(--bs-space-2);margin-right:var(--bs-space-2);font-weight:700;letter-spacing:-.2px;white-space:nowrap}.toolbar__brand img{display:block}.toolbar__brand span{color:var(--bs-text)}.toolbar__spacer{flex:1}.toolbar__group{display:flex;align-items:center;gap:var(--bs-space-1)}.toolbar__divider{width:1px;height:20px;background:var(--bs-border)}.toolbar__search{display:flex;align-items:center;gap:var(--bs-space-2);min-width:0;max-width:320px;flex:0 1 260px;padding:5px 8px 5px 10px;border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-sunken);color:var(--bs-text-faint);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);cursor:pointer;transition:border-color var(--bs-transition),color var(--bs-transition)}.toolbar__search:hover{border-color:var(--bs-border-strong);color:var(--bs-text-muted)}.toolbar__search:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:1px}.toolbar__searchlabel{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}@media(max-width:1100px){.toolbar__search{flex:0 0 auto}.toolbar__searchlabel,.toolbar__search .btn__key{display:none}}.toolbar__github{display:inline-flex;align-items:center;justify-content:center;flex:none;width:28px;height:28px;border:1px solid var(--bs-border);border-radius:999px;color:var(--bs-text-muted);transition:background var(--bs-transition),color var(--bs-transition),border-color var(--bs-transition)}.toolbar__github:hover{background:var(--bs-surface-sunken);border-color:var(--bs-border-strong);color:var(--bs-text)}.toolbar__github:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:2px}.btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:transparent;border:1px solid transparent;border-radius:var(--bs-radius-sm);color:var(--bs-text-muted);cursor:pointer;white-space:nowrap;transition:background var(--bs-transition),color var(--bs-transition)}.btn:hover:not(:disabled){background:var(--bs-surface-sunken);color:var(--bs-text)}.btn:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:1px}.btn:disabled{opacity:.45;cursor:default}.btn--primary{background:var(--bs-solid-500);border-color:var(--bs-solid-500);color:var(--bs-brand-contrast);font-weight:600}.btn--primary:hover:not(:disabled){background:var(--bs-solid-300);border-color:var(--bs-solid-300);color:var(--bs-brand-contrast)}.btn--primary .btn__key{background:#1a151229;opacity:1}.btn--ghost{border-color:var(--bs-border)}.btn--active{background:var(--bs-surface-sunken);color:var(--bs-text)}.btn__key{padding:0 4px;border-radius:3px;background:#7f7f7f2e;font-family:var(--bs-font-mono);font-size:10px;opacity:.8}.splitbtn{display:inline-flex;align-items:stretch;border-radius:var(--bs-radius-sm)}.splitbtn:hover{background:var(--bs-surface-sunken)}.splitbtn .btn:hover:not(:disabled){background:transparent}.splitbtn__main{border-top-right-radius:0;border-bottom-right-radius:0;padding-right:7px}.splitbtn__toggle{padding:5px;border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:inset 1px 0 0 var(--bs-border)}.splitbtn:hover .btn,.splitbtn__toggle[aria-expanded=true]{color:var(--bs-text)}.splitbtn__toggle[aria-expanded=true]{background:var(--bs-surface-sunken)}.menu{position:fixed;z-index:60;display:flex;flex-direction:column;min-width:200px;max-width:300px;max-height:calc(100vh - 16px);overflow-y:auto;padding:var(--bs-space-1);border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-raised);box-shadow:var(--bs-shadow-3)}.menu__item{display:flex;flex-direction:column;gap:2px;padding:6px 8px;border:0;border-radius:var(--bs-radius-sm);background:transparent;color:var(--bs-text);text-align:left;cursor:pointer}.menu__item--icon{flex-direction:row;align-items:center;gap:var(--bs-space-3)}.menu__item--icon svg{flex:none;color:var(--bs-text-muted)}.menu__item--icon .menu__itemtext{display:flex;flex-direction:column;gap:2px;min-width:0}.menu__item:hover,.menu__item:focus-visible{background:var(--bs-surface-sunken);outline:none}.menu__heading{margin-top:var(--bs-space-1);padding:var(--bs-space-2) var(--bs-space-2) var(--bs-space-1);border-top:1px solid var(--bs-border);color:var(--bs-text-muted)}.menu__heading .menu__label{font-size:11px;font-weight:600;letter-spacing:var(--bs-tracking-label);text-transform:uppercase}.menu__label{display:flex;align-items:center;justify-content:space-between;gap:var(--bs-space-3);white-space:nowrap}.menu__hint{color:var(--bs-text-muted);font-size:11px;white-space:normal}.menu--settings{min-width:300px;max-width:360px}.menu__setting{display:flex;align-items:center;justify-content:space-between;gap:var(--bs-space-3);padding:7px 8px}.menu__setting+.menu__setting{border-top:1px solid color-mix(in srgb,var(--bs-border) 55%,transparent)}.menu__settingtext{display:flex;flex-direction:column;gap:2px;min-width:0}.menu__settingtext .menu__label{white-space:normal}.segmented{display:inline-flex;flex:none;padding:2px;border-radius:var(--bs-radius-sm);background:var(--bs-surface-sunken)}.segmented__option{padding:3px 9px;border:0;border-radius:calc(var(--bs-radius-sm) - 1px);background:transparent;color:var(--bs-text-muted);font:inherit;font-size:11px;white-space:nowrap;cursor:pointer}.segmented__option[aria-checked=true]{background:var(--bs-surface-raised);box-shadow:var(--bs-shadow-1);color:var(--bs-text)}.segmented__option:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:-1px}.cm-unitConverted{border-radius:2px;animation:unit-converted 1.1s ease-out forwards}@keyframes unit-converted{0%{background:color-mix(in srgb,var(--bs-solid-500) 45%,transparent)}to{background:transparent}}@media(prefers-reduced-motion:reduce){.cm-unitConverted{animation-duration:1ms}}.tabs{display:flex;align-items:stretch;gap:1px;overflow-x:auto;background:var(--bs-surface-sunken);border-bottom:1px solid var(--bs-border);scrollbar-width:thin}.tab{display:inline-flex;align-items:center;gap:6px;padding:6px 8px 6px 12px;max-width:220px;background:transparent;border:none;border-top:2px solid transparent;color:var(--bs-text-muted);cursor:pointer;white-space:nowrap}.tab--active{box-shadow:inset 0 2px 0 var(--bs-solid-500)}.tab--active{background:var(--bs-surface);border-top-color:var(--bs-solid-500);color:var(--bs-text)}.tab__name{overflow:hidden;text-overflow:ellipsis}.tab__dirty{width:7px;height:7px;border-radius:50%;background:var(--bs-solid-500);flex:none}.tab__close{display:grid;place-items:center;width:18px;height:18px;padding:0;border:none;border-radius:3px;background:transparent;color:inherit;opacity:.5;cursor:pointer}.tab__close:hover{background:#7f7f7f40;opacity:1}.workspace{display:flex;flex:1 1 auto;min-height:0;min-width:0;overflow:hidden}.pane{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.pane--editor{background:var(--bs-surface)}.splitter{flex:none;background:var(--bs-border);transition:background var(--bs-transition);touch-action:none}.splitter--vertical{width:5px;cursor:col-resize}.splitter--horizontal{height:5px;cursor:row-resize}.splitter:hover,.splitter--dragging{background:var(--bs-solid-500)}.layout{position:relative;flex-direction:row}.layout__column{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.layout__panel{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;background:var(--bs-surface)}.layout__panel>*{flex:1 1 auto;min-height:0}.layout__panel--lifted{opacity:.45}.layout--dragging,.layout--dragging *{cursor:grabbing!important;user-select:none}.layout__drop{position:absolute;z-index:20;pointer-events:none;border-radius:2px;background:var(--bs-solid-500);box-shadow:0 0 0 1px color-mix(in srgb,var(--bs-solid-500) 40%,transparent)}.layout__drop--column{background:color-mix(in srgb,var(--bs-solid-500) 18%,transparent);border:2px dashed var(--bs-solid-500)}.layout__ghost{position:fixed;top:0;left:0;z-index:1000;pointer-events:none;padding:4px 10px;border-radius:999px;background:var(--bs-surface-raised, var(--bs-surface));border:1px solid var(--bs-border-strong);box-shadow:var(--bs-shadow-1);font-size:var(--bs-font-size-sm);color:var(--bs-text)}.layout__empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--bs-space-2);color:var(--bs-text-muted)}.layout__empty p{margin:0}.layout__emptyhint{font-size:var(--bs-font-size-sm);color:var(--bs-text-faint)}.panelctl{display:flex;align-items:center;gap:2px;flex:none}.panelctl__btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:var(--bs-radius-sm, 4px);background:transparent;color:var(--bs-text-faint);cursor:pointer;opacity:.6;transition:opacity var(--bs-transition),color var(--bs-transition),background var(--bs-transition)}.panelctl__grip{cursor:grab;touch-action:none}.panelctl__btn:disabled{cursor:default;opacity:.25}:is(.panel__header,.editorbar,.viewport):hover .panelctl__btn:not(:disabled),.panelctl__btn:focus-visible{opacity:1}.panelctl__btn:hover:not(:disabled){color:var(--bs-text);background:var(--bs-surface-hover, color-mix(in srgb, var(--bs-text) 8%, transparent))}.panelctl__btn[aria-pressed=true]{color:var(--bs-solid-500);opacity:1}.editorbar{display:flex;align-items:stretch;flex:none;background:var(--bs-surface-sunken);border-bottom:1px solid var(--bs-border)}.editorbar>.tabs{flex:1 1 auto;min-width:0;border-bottom:0}.editorbar>.panelctl{padding:0 var(--bs-space-2)}.viewport__panelctl{position:absolute;top:6px;right:6px;z-index:5;padding:2px;border-radius:6px}.viewport:has(.viewport__panelctl) .viewport__hud{top:36px}.panel{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bs-surface)}.panel__header{display:flex;align-items:center;gap:var(--bs-space-2);flex:none;padding:5px var(--bs-space-3);background:var(--bs-surface-sunken);border-bottom:1px solid var(--bs-border);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);font-weight:500;letter-spacing:var(--bs-tracking-label);text-transform:uppercase;color:var(--bs-text-muted)}.panel__body{flex:1;min-height:0;overflow:auto}.panel__empty{padding:var(--bs-space-5) var(--bs-space-4);color:var(--bs-text-faint);text-align:center}.panel__header--tabs{padding:0 var(--bs-space-2) 0 0}.paneltabs{display:flex;align-items:stretch}.paneltab{display:flex;align-items:center;gap:6px;padding:6px var(--bs-space-3);border:0;border-bottom:2px solid transparent;background:none;color:var(--bs-text-faint);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;transition:color var(--bs-transition),border-color var(--bs-transition)}.paneltab:hover{color:var(--bs-text-muted)}.paneltab[aria-selected=true]{border-bottom-color:var(--bs-solid-500);color:var(--bs-text)}.paneltab:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:-2px}.paneltab__count{padding:0 5px;border-radius:999px;background:var(--bs-surface-raised);color:var(--bs-text-muted);font-size:10px;letter-spacing:0}.paneltab__count--error{background:var(--bs-danger);color:#fff}.panel__close{display:grid;place-items:center;flex:none;width:22px;height:22px;padding:0;margin-left:var(--bs-space-1);border:none;border-radius:var(--bs-radius-sm);background:transparent;color:var(--bs-text-muted);cursor:pointer;transition:background var(--bs-transition),color var(--bs-transition)}.panel__close:hover{background:var(--bs-surface-raised);color:var(--bs-text)}.panel__close:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:-2px}.editor{flex:1;min-height:0;overflow:hidden}.editor .cm-editor{height:100%}.editor .cm-scroller{font-family:var(--bs-font-mono);font-size:13px;line-height:var(--bs-line-height-code)}.editor .cm-focused{outline:none}.infoview{display:block;padding:var(--bs-space-3) var(--bs-space-3) var(--bs-space-4);line-height:1.55}.infoview__lead{display:flex;align-items:baseline;gap:var(--bs-space-2);margin:0;color:var(--bs-text)}.infoview__body{margin:4px 0 0;color:var(--bs-text-muted);font-size:var(--bs-font-size-sm)}.infoview__badge{flex:none;padding:1px 5px;border-radius:var(--bs-radius-sm);background:var(--bs-solid-500);color:var(--bs-brand-contrast);font-family:var(--bs-font-mono);font-size:10px;font-weight:700;letter-spacing:.06em}.infoview__link{margin-top:var(--bs-space-3);padding:0;border:0;background:none;color:var(--bs-accent-ink);font:inherit;font-size:var(--bs-font-size-sm);text-decoration:underline;text-underline-offset:2px;cursor:pointer}.infoview__link:hover{color:var(--bs-accent-ink-hover)}.downgrade{display:flex;flex-direction:column;min-height:0}.downgrade__code{flex:1 1 auto;min-height:0;margin:var(--bs-space-3) 0 0;padding:var(--bs-space-3);overflow:auto;border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-sunken);color:var(--bs-text);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);line-height:var(--bs-line-height-code);tab-size:2}.empty{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;padding:var(--bs-space-5);overflow:auto}.empty__inner{width:100%;max-width:460px;text-align:center}.empty__title{margin:0;font-size:17px;font-weight:600;color:var(--bs-text)}.empty__body{margin:6px 0 0;font-size:var(--bs-font-size-sm);line-height:1.55;color:var(--bs-text-muted);text-wrap:balance}.empty__choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--bs-space-2);margin-top:var(--bs-space-4)}.empty--viewport{position:absolute;inset:0;z-index:1;pointer-events:none}.viewport:has(.empty--viewport:not([hidden])) .viewport__overlay{display:none}.empty__art{display:flex;justify-content:center;margin-bottom:var(--bs-space-4);color:var(--bs-text-faint);opacity:.7}.empty__caption{margin:0;font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);letter-spacing:var(--bs-tracking-label);text-transform:uppercase;color:var(--bs-text-muted)}.viewport{position:relative;flex:1;min-height:0;background:var(--bs-viewport-bg)}.viewport canvas{display:block;width:100%;height:100%;touch-action:none}.viewport__overlay{position:absolute;inset:0;pointer-events:none}.viewport__hud{position:absolute;top:var(--bs-space-3);right:var(--bs-space-3);display:flex;gap:var(--bs-space-2);white-space:nowrap;font-family:var(--bs-font-mono);font-size:10.5px;color:var(--bs-text-faint);text-shadow:0 0 4px var(--bs-viewport-bg),0 0 4px var(--bs-viewport-bg);pointer-events:none}.viewport__tools{position:absolute;display:flex;align-items:center;gap:6px;pointer-events:auto}.viewport__control{background:color-mix(in srgb,var(--bs-surface) 88%,transparent);border:1px solid var(--bs-border);box-shadow:var(--bs-shadow-1)}.viewport__control--round{width:26px;height:26px;padding:0;justify-content:center;border-radius:50%}.viewport__control--round:hover:not(:disabled){background:var(--bs-surface);border-color:var(--bs-border-strong)}.viewport__control--round.btn--active,.viewport__control--round.btn--active:hover:not(:disabled){color:var(--bs-solid-500)}.viewport__tools--topleft{top:var(--bs-space-3);left:var(--bs-space-3)}.viewport__tools--gizmo{right:calc(var(--bs-space-3) - 6px);bottom:var(--bs-space-3);width:116px;gap:4px;justify-content:center}.viewport__busy{position:absolute;top:var(--bs-space-3);left:50%;transform:translate(-50%);padding:4px 12px;border-radius:999px;background:var(--bs-solid-500);color:#fff;font-size:var(--bs-font-size-sm);font-weight:600;pointer-events:none}.axisindicator{position:absolute;bottom:var(--bs-space-3);left:var(--bs-space-3);display:block;pointer-events:none}.axisindicator text{paint-order:stroke;stroke:var(--bs-viewport-bg);stroke-width:.06;stroke-linejoin:round;font-family:var(--bs-font-ui);font-weight:600}.viewport__measure{position:absolute;top:calc(var(--bs-space-3) + 38px);left:var(--bs-space-3);max-width:280px;padding:var(--bs-space-2) var(--bs-space-3);border-radius:var(--bs-radius);background:color-mix(in srgb,var(--bs-surface) 92%,transparent);border:1px solid var(--bs-border);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);pointer-events:auto}.viewport__measure dl{display:grid;grid-template-columns:auto 1fr;gap:2px var(--bs-space-2);margin:0}.viewport__measure dt{color:var(--bs-text-muted)}.viewport__measure dd{margin:0}.viewport__measure--live dd:not(.measure__hint){color:var(--bs-text-muted)}.measure__hint{color:var(--bs-text-muted);font-family:var(--bs-font-ui)}.viewport__measure-labels{position:absolute;inset:0;overflow:hidden;pointer-events:none}.viewport__measure-label{position:absolute;transform:translate(-50%,calc(-100% - 6px));padding:1px 6px;border-radius:var(--bs-radius-sm);background:color-mix(in srgb,var(--bs-surface) 92%,transparent);border:1px solid var(--bs-border);color:var(--bs-text);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);white-space:nowrap}.viewport__measure-label--live{color:var(--bs-text-muted)}.viewport__measure-label--hovered{border-color:var(--bs-cut-300)}.measure__snap{margin-left:var(--bs-space-2);padding:0 5px;border-radius:var(--bs-radius-sm);background:var(--bs-surface-sunken);color:var(--bs-text-muted);font-family:var(--bs-font-mono);font-size:10px;letter-spacing:.04em}.console__list{margin:0;padding:0;list-style:none;font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm)}.log{display:grid;grid-template-columns:16px 1fr;gap:var(--bs-space-2);align-items:start;padding:3px var(--bs-space-3);border-bottom:1px solid color-mix(in srgb,var(--bs-border) 50%,transparent);white-space:pre-wrap;word-break:break-word}.log--clickable{cursor:pointer}.log--clickable:hover{background:var(--bs-surface-sunken)}.log__icon{text-align:center;opacity:.85}.log--error{color:var(--bs-danger)}.log--warning{color:var(--bs-warning)}.log--echo{color:var(--bs-text)}.log--info{color:var(--bs-text-muted)}.log__where{color:var(--bs-text-faint)}.log__help{display:flex;flex-direction:column;align-items:flex-start;gap:var(--bs-space-2);margin-top:var(--bs-space-1)}.log__hint{color:var(--bs-text-muted)}.customizer__group{border-bottom:1px solid var(--bs-border)}.customizer__group>summary{padding:6px var(--bs-space-3);background:var(--bs-surface-sunken);font-weight:600;font-size:var(--bs-font-size-sm);letter-spacing:.3px;text-transform:uppercase;color:var(--bs-text-muted);cursor:pointer;user-select:none}.param{display:grid;gap:3px;padding:var(--bs-space-2) var(--bs-space-3)}.param__label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--bs-space-2)}.param__name{font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm)}.param__value{font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);color:var(--bs-text-muted)}.param__hint{font-size:var(--bs-font-size-sm);color:var(--bs-text-faint)}.param__row{display:flex;align-items:center;gap:var(--bs-space-2)}.param input[type=range]{flex:1;min-width:0;accent-color:var(--bs-solid-500)}.param input[type=number],.param input[type=text],.param select{flex:1;min-width:0;padding:4px 6px;background:var(--bs-surface-sunken);border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm)}.param input[type=number]{max-width:88px}.param input[type=checkbox]{accent-color:var(--bs-solid-500)}.param__vector{display:flex;gap:var(--bs-space-1)}.param__vector input{width:100%;min-width:0}.statusbar{display:flex;align-items:center;gap:var(--bs-space-3);padding:3px var(--bs-space-3);background:var(--bs-surface);border-top:1px solid var(--bs-border);font-size:var(--bs-font-size-sm);color:var(--bs-text-muted)}.statusbar__spacer{flex:1}.statusbar__item{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.statusbar__item--error{color:var(--bs-danger)}.statusbar__item--warning{color:var(--bs-warning)}.dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.statusbar__save{color:var(--bs-text-muted)}.statusbar__save .dot{background:var(--bs-success)}.statusbar__save--dirty{color:var(--bs-accent-ink)}.statusbar__save--dirty .dot{background:var(--bs-solid-500)}.statusbar__path{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--bs-font-mono)}.animbar{display:flex;align-items:center;gap:var(--bs-space-2);padding:4px var(--bs-space-3);background:var(--bs-surface-sunken);border-top:1px solid var(--bs-border);font-size:var(--bs-font-size-sm)}.animbar input[type=range]{flex:1;accent-color:var(--bs-solid-500)}.animbar__time{font-family:var(--bs-font-mono);min-width:5ch}dialog{padding:0;max-width:min(560px,92vw);border:1px solid var(--bs-border);border-radius:var(--bs-radius-lg);background:var(--bs-surface-raised);color:var(--bs-text);box-shadow:var(--bs-shadow-3)}dialog::backdrop{background:#00000073}.dialog__header{padding:var(--bs-space-3) var(--bs-space-4);border-bottom:1px solid var(--bs-border);font-weight:600}.dialog__body{padding:var(--bs-space-4);max-height:60vh;overflow:auto}.dialog__footer{display:flex;justify-content:flex-end;gap:var(--bs-space-2);padding:var(--bs-space-3) var(--bs-space-4);border-top:1px solid var(--bs-border)}.extensionlist{margin:8px 0 0;padding-left:20px;color:var(--bs-text-muted);font-size:12px;line-height:1.6}.extensionlist code{color:var(--bs-text);font-family:var(--bs-font-mono)}.extensionlist__where{color:var(--bs-text-muted);font-family:var(--bs-font-mono);font-size:11px;opacity:.75}.dialog__body--flush{display:flex;flex-direction:column;overflow:hidden;min-height:0;max-height:min(680px,76vh)}.export__body{display:flex;flex-direction:column;min-height:0}.export__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.export__group{margin:var(--bs-space-3) 0 var(--bs-space-1)}.imageopts{display:grid;gap:var(--bs-space-2);margin:var(--bs-space-2) 0 var(--bs-space-1) 24px;padding:var(--bs-space-3);background:var(--bs-surface-sunken);border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm)}.imageopts[hidden]{display:none}.imageopts__row{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:var(--bs-space-2);font-size:var(--bs-font-size-sm)}.imageopts__row select{min-width:0;padding:4px 6px;background:var(--bs-surface);border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm)}.imageopts__check{display:flex;align-items:center;gap:var(--bs-space-2);font-size:var(--bs-font-size-sm)}.imageopts__check input{accent-color:var(--bs-solid-500)}.imageopts .param__hint{margin:0}.export__filename{display:block;flex:none;padding-top:var(--bs-space-3)}.export__note{margin-top:var(--bs-space-3);padding:var(--bs-space-3);border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-sunken)}.palette{width:min(560px,92vw)}.palette__input{width:100%;padding:var(--bs-space-3) var(--bs-space-4);background:transparent;border:none;border-bottom:1px solid var(--bs-border);font-size:15px;outline:none}.palette__list{margin:0;padding:var(--bs-space-1);max-height:50vh;overflow:auto;list-style:none}.palette__item{display:flex;align-items:center;justify-content:space-between;gap:var(--bs-space-3);padding:var(--bs-space-2) var(--bs-space-3);border-radius:var(--bs-radius-sm);cursor:pointer}.palette__item--selected{background:var(--bs-solid-500);color:#fff}.palette__item--selected .palette__hint{color:#ffffffbf}.palette__hint{font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);color:var(--bs-text-faint)}.welcome{width:min(700px,92vw);max-width:min(700px,92vw);padding:var(--bs-space-5);border-radius:var(--bs-radius-lg);text-align:center}.welcome__head{display:flex;flex-direction:column;align-items:center}.welcome__mark{display:block;margin-bottom:var(--bs-space-3)}.welcome__wordmark{font-size:30px;font-weight:700;letter-spacing:-.7px;line-height:1.1;color:var(--bs-text)}.welcome__tagline{margin-top:6px;font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);letter-spacing:var(--bs-tracking-label);text-transform:uppercase;color:var(--bs-text-muted)}.welcome__choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--bs-space-3);margin-top:var(--bs-space-5)}.welcomecard{display:flex;flex-direction:column;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-4) var(--bs-space-3);border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface);color:var(--bs-text-muted);font:inherit;text-align:center;cursor:pointer;transition:border-color var(--bs-transition),background var(--bs-transition),transform var(--bs-transition)}.welcomecard:hover{border-color:var(--bs-border-strong);background:var(--bs-surface-raised)}.welcomecard--primary{border-color:var(--bs-solid-500)}.welcomecard--primary svg{color:var(--bs-accent-ink)}.welcomecard:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:2px}.welcomecard:active{transform:translateY(1px)}.welcomecard svg{color:var(--bs-text-faint)}.welcomecard__title{font-size:14px;font-weight:600;color:var(--bs-text)}.welcomecard__body{font-size:var(--bs-font-size-sm);line-height:1.5;text-wrap:balance}.welcome__compat{margin:var(--bs-space-5) 0 0;padding-top:var(--bs-space-4);border-top:1px solid var(--bs-border);font-size:var(--bs-font-size-sm);line-height:1.6;color:var(--bs-text-muted)}.welcome__compat strong{color:var(--bs-text)}.welcome__link{color:var(--bs-accent-ink);text-decoration:underline;text-underline-offset:2px}.welcome__link:hover{color:var(--bs-accent-ink-hover)}.files{padding:var(--bs-space-2) 0}.files__folder{padding:var(--bs-space-2) var(--bs-space-3) var(--bs-space-1);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);color:var(--bs-text-faint)}.files__row{display:flex;align-items:center;gap:var(--bs-space-2);padding:3px var(--bs-space-3);color:var(--bs-text-muted)}.files__row:hover{background:var(--bs-surface-raised);color:var(--bs-text)}.files__row--new{background:var(--bs-surface-raised);color:var(--bs-text);box-shadow:inset 2px 0 0 var(--bs-solid-500)}.files__row--nested{padding-left:var(--bs-space-5)}.files__use{flex:none;width:7px;height:7px;border:1px solid var(--bs-border);border-radius:50%}.files__use--on{border-color:var(--bs-solid-500);background:var(--bs-solid-500)}.files__name{flex:1;min-width:0;overflow:hidden;font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);text-overflow:ellipsis;white-space:nowrap}.files__meta{flex:none;font-size:var(--bs-font-size-sm);color:var(--bs-text-faint);white-space:nowrap}.files__more{flex:none;padding:0 4px;opacity:0;line-height:1}.files__row:hover .files__more,.files__more:focus-visible{opacity:1}.panel--dropping{outline:2px dashed var(--bs-solid-500);outline-offset:-2px}.fontlist{display:grid;gap:var(--bs-space-1)}.fontlist__item{display:flex;align-items:center;justify-content:space-between;gap:var(--bs-space-3);padding:var(--bs-space-2) var(--bs-space-3);border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm);background:transparent;text-align:left;cursor:pointer}.fontlist__item:hover{border-color:var(--bs-solid-500)}.fontlist__meta{font-size:var(--bs-font-size-sm);color:var(--bs-text-faint)}.fontlist__state{font-size:var(--bs-font-size-sm);color:var(--bs-success)}.toasts{position:fixed;right:var(--bs-space-4);bottom:var(--bs-space-5);z-index:50;display:grid;gap:var(--bs-space-2);justify-items:end;pointer-events:none}.toast{display:flex;align-items:center;gap:var(--bs-space-2);max-width:420px;padding:var(--bs-space-2) var(--bs-space-3);border-radius:var(--bs-radius);border:1px solid var(--bs-border);background:var(--bs-surface-raised);box-shadow:var(--bs-shadow-2);pointer-events:auto}.toast--error{border-color:var(--bs-danger)}.toast--success{border-color:var(--bs-success)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}kbd{padding:1px 5px;border-radius:3px;border:1px solid var(--bs-border);background:var(--bs-surface-sunken);font-family:var(--bs-font-mono);font-size:11px}.font__tabs{margin:var(--bs-space-3) 0 0;border-bottom:1px solid var(--bs-border);font-size:var(--bs-font-size-sm)}.font__tabs .paneltab{font-weight:400}.font__permission{display:flex;flex-direction:column;align-items:flex-start;gap:var(--bs-space-3);padding:var(--bs-space-4) var(--bs-space-2)}.font__permission p{margin:0;max-width:46ch}.font__filters{display:grid;grid-template-columns:1fr 1fr;gap:var(--bs-space-2);margin-bottom:var(--bs-space-3)}.font__filter{display:grid;gap:2px;min-width:0}.font__field{width:100%;min-width:0;padding:5px 8px;background:var(--bs-surface-sunken);border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm)}.font__field:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:-1px}.font__item{padding:var(--bs-space-2) var(--bs-space-3);border:1px solid var(--bs-border);border-radius:var(--bs-radius)}.font__item:hover{border-color:var(--bs-border-strong)}.font__body{display:grid;gap:var(--bs-space-2);min-width:0}.font__head{display:flex;align-items:baseline;gap:var(--bs-space-2);min-width:0}.font__family{font-weight:600}.font__actions{display:flex;align-items:center;gap:var(--bs-space-1);flex:none}.font__preview{font-size:30px;line-height:1.25;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--bs-text)}.font__specimen{display:block;max-width:100%;color:var(--bs-text)}.font__spec{display:flex;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-1) var(--bs-space-2);border-radius:var(--bs-radius-sm);background:var(--bs-surface-sunken);min-width:0}.font__snippet{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);color:var(--bs-solid-300);user-select:all}.font__specactions{display:flex;gap:var(--bs-space-1);flex:none}@media(max-width:560px){.font__filters{grid-template-columns:1fr}}.iconswitch{display:inline-flex;align-items:center;padding:0;border:none;background:none;cursor:pointer;flex:none}.iconswitch:focus-visible{outline:2px solid var(--bs-solid-500);outline-offset:2px;border-radius:999px}.iconswitch__track{position:relative;display:inline-flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:46px;height:24px;padding:0 5px;border:1px solid var(--bs-border);border-radius:999px;background:var(--bs-surface-sunken);transition:border-color var(--bs-transition)}.iconswitch:hover .iconswitch__track{border-color:var(--bs-border-strong)}.iconswitch__icon{position:relative;z-index:1;color:var(--bs-text-faint);transition:color var(--bs-transition)}.iconswitch__thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--bs-surface-raised);border:1px solid var(--bs-border-strong);box-shadow:var(--bs-shadow-1);transition:transform var(--bs-transition)}.iconswitch[aria-checked=true] .iconswitch__thumb{transform:translate(22px)}.iconswitch[aria-checked=true] .iconswitch__icon--on,.iconswitch[aria-checked=false] .iconswitch__icon--off{color:var(--bs-solid-500)}@media(prefers-reduced-motion:reduce){.iconswitch__thumb{transition:none}}.hint{position:fixed;top:0;left:0;z-index:70;max-width:260px;padding:5px 8px;border-radius:var(--bs-radius-sm);border:1px solid var(--bs-border);background:var(--bs-surface-raised);color:var(--bs-text);font-size:var(--bs-font-size-sm);line-height:1.35;box-shadow:var(--bs-shadow-2);pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--bs-transition)}.hint--visible{opacity:1;visibility:visible}@media(prefers-reduced-motion:reduce){.hint{transition:none}}.dialog--wide{max-width:min(1180px,95vw);width:1180px}.dialog--wide .dialog__header,.dialog--wide .dialog__footer{display:flex;align-items:center;gap:var(--bs-space-3)}.reference__header{align-items:stretch;padding-block:0;gap:var(--bs-space-4)}.reference__heading{display:flex;align-items:center}.reference{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:0;height:min(680px,74vh)}.reference__nav{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--bs-border);background:var(--bs-surface-sunken)}.reference__scopes{flex:none;white-space:nowrap}.reference__scopes .paneltab{padding:var(--bs-space-3);font-size:var(--bs-font-size-sm);font-weight:400}.reference__scopes .paneltab__count{background:var(--bs-surface-sunken)}.reference__searchwrap{display:flex;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-3);border-bottom:1px solid var(--bs-border);color:var(--bs-text-faint)}.reference__search{flex:1;min-width:0;padding:5px 8px;border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm);background:var(--bs-surface)}.reference__search:focus-visible{outline:2px solid var(--bs-brand);outline-offset:1px}.reference__list{flex:1;min-height:0;overflow-y:auto;padding:var(--bs-space-2) var(--bs-space-2) var(--bs-space-4)}.reference__section{position:sticky;top:0;z-index:1;margin:var(--bs-space-3) 0 var(--bs-space-1);padding:var(--bs-space-1) var(--bs-space-2);background:var(--bs-surface-sunken);color:var(--bs-text);font-size:var(--bs-font-size-sm);font-weight:600;letter-spacing:var(--bs-tracking-label);text-transform:uppercase}.reference__group{padding:var(--bs-space-3) var(--bs-space-2) var(--bs-space-1);color:var(--bs-text-faint);font-size:var(--bs-font-size-sm)}.reference__item{display:flex;align-items:center;gap:var(--bs-space-2);width:100%;padding:4px var(--bs-space-2);border:0;border-radius:var(--bs-radius-sm);background:none;color:var(--bs-text-muted);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);text-align:left;cursor:pointer}.reference__item:hover{background:var(--bs-surface);color:var(--bs-text)}.reference__item--active{background:color-mix(in srgb,var(--bs-brand) 16%,transparent);color:var(--bs-text)}.reference__itemname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reference__badge{flex:none;margin-left:auto;color:var(--bs-accent-ink);font-weight:700}.reference__version{flex:none;color:var(--bs-text-faint);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);font-weight:400}.reference__title--plain{font-family:var(--bs-font-ui)}.reference__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--bs-space-2);margin:var(--bs-space-3) 0}.reference__actions a.btn{text-decoration:none;font-family:var(--bs-font-mono)}.reference__count,.reference__footnote{color:var(--bs-text-faint);font-size:var(--bs-font-size-sm);font-weight:400}.reference__footnote code{font-family:var(--bs-font-mono)}.reference__content{min-width:0;overflow-y:auto;padding:var(--bs-space-4) var(--bs-space-5)}.reference__content:focus-visible{outline:2px solid var(--bs-brand);outline-offset:-3px}.reference__head{display:flex;align-items:baseline;gap:var(--bs-space-3)}.reference__title{margin:0;font-family:var(--bs-font-mono);font-size:18px}.reference__tag{flex:none;padding:2px 7px;border-radius:999px;background:color-mix(in srgb,var(--bs-brand) 20%,transparent);color:var(--bs-accent-ink);font-size:var(--bs-font-size-sm);font-weight:600}.reference__tag--stock{background:var(--bs-surface-sunken);color:var(--bs-text-faint);font-weight:400}.reference__sig{margin:var(--bs-space-3) 0 0;padding:var(--bs-space-2) var(--bs-space-3);border-radius:var(--bs-radius-sm);background:var(--bs-surface-sunken);color:var(--bs-text-muted);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);overflow-x:auto}.reference__plain{margin:var(--bs-space-3) 0 0;font-size:14px;line-height:1.6}.reference__example{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--bs-space-3);align-items:stretch;margin-top:var(--bs-space-4)}.reference__codewrap{position:relative;display:flex;flex-direction:column;min-width:0}.reference__codewrap .reference__code{flex:1 1 auto}.reference__code,.reference__output{margin:0;padding:var(--bs-space-3);border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-sunken);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);line-height:var(--bs-line-height-code);overflow-x:auto;white-space:pre}.reference__output{grid-column:1 / -1;color:var(--bs-text-muted)}.reference__output--wrap{white-space:pre-wrap;overflow-wrap:anywhere}.reference__exampleactions{display:flex;gap:var(--bs-space-2);justify-content:flex-end;margin-top:var(--bs-space-2);opacity:0;transition:opacity var(--bs-transition)}.reference__codewrap:hover .reference__exampleactions,.reference__exampleactions:focus-within{opacity:1}.reference__shot{display:block;width:100%;height:auto;max-height:300px;object-fit:contain;object-position:center;border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-sunken)}.reference__caption{grid-column:1 / -1;margin:0;color:var(--bs-text-muted);font-size:var(--bs-font-size-sm)}.reference__empty{display:flex;flex-direction:column;gap:var(--bs-space-3);align-items:center;padding:var(--bs-space-5) var(--bs-space-4);color:var(--bs-text-muted);text-align:center}.reference__empty p{margin:0 0 var(--bs-space-3)}.reference__subhead{margin:var(--bs-space-5) 0 var(--bs-space-2);color:var(--bs-text-faint);font-size:var(--bs-font-size-sm);font-weight:600;letter-spacing:var(--bs-tracking-label);text-transform:uppercase}.reference__params{width:100%;border-collapse:collapse}.reference__params th,.reference__params td{padding:5px var(--bs-space-3) 5px 0;border-top:1px solid var(--bs-border);text-align:left;vertical-align:top;font-weight:400}.reference__params th{width:1%;white-space:nowrap;font-family:var(--bs-font-mono)}.reference__details p{margin:0 0 var(--bs-space-3)}.reference__details code,.reference__params code,.reference__plain code,.reference__caption code,.reference__downgrade code,.reference__origin code{padding:0 3px;border-radius:3px;background:var(--bs-surface-sunken);font-family:var(--bs-font-mono);font-size:.92em}.reference__downgrade{margin-top:var(--bs-space-4);padding-left:var(--bs-space-3);border-left:2px solid var(--bs-brand)}.reference__downgrade p{margin:0;color:var(--bs-text-muted)}.reference__downgradehead{margin-bottom:2px;font-size:var(--bs-font-size-sm);font-weight:600;letter-spacing:var(--bs-tracking-label);text-transform:uppercase}.reference__see{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--bs-space-2);margin-top:var(--bs-space-5)}.reference__seelabel{color:var(--bs-text-faint);font-size:var(--bs-font-size-sm)}.reference__link{padding:2px 6px;border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm);background:none;color:var(--bs-accent-ink);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);cursor:pointer}.reference__link:hover{border-color:var(--bs-border-strong);color:var(--bs-accent-ink-hover)}.reference__origin{margin:var(--bs-space-5) 0 0;padding-top:var(--bs-space-3);border-top:1px solid var(--bs-border);color:var(--bs-text-faint);font-size:var(--bs-font-size-sm)}@media(max-width:900px){.reference{grid-template-columns:minmax(0,1fr);grid-template-rows:180px minmax(0,1fr)}.reference__nav{border-right:0;border-bottom:1px solid var(--bs-border)}.reference__example{grid-template-columns:minmax(0,1fr)}.reference__content{padding:var(--bs-space-3)}.reference__footnote{display:none}}.dialog--board{width:96vw;max-width:96vw;height:94vh;display:flex;flex-direction:column}.dialog--board .dialog__body{flex:1;max-height:none;padding:0}.sketch__header{gap:var(--bs-space-2);padding-block:var(--bs-space-2)}.sketch__title{font-weight:600;margin-right:var(--bs-space-2)}.sketch__tools{display:flex;gap:2px;padding:2px;border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface-sunken)}.sketch__sep{width:1px;align-self:stretch;background:var(--bs-border);margin-inline:var(--bs-space-1)}.sketch__photo{display:flex;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-1) var(--bs-space-4);border-bottom:1px solid var(--bs-border);background:var(--bs-surface-sunken);font-size:var(--bs-font-size-sm)}.sketch__photoname{font-weight:500}.sketch__photosize{color:var(--bs-text-muted);font-family:var(--bs-font-mono)}.sketch__fade{display:inline-flex;align-items:center;gap:var(--bs-space-2);color:var(--bs-text-muted)}.sketch__fade input{width:110px}.sketch{position:relative}.sketch__board{position:relative;width:100%;height:100%;overflow:hidden;background:var(--bs-viewport-bg);touch-action:none;user-select:none}.sketch__svg{display:block;width:100%;height:100%;cursor:crosshair}.sketch__labels{position:absolute;inset:0;pointer-events:none}.sketch__hint{position:absolute;left:var(--bs-space-3);bottom:var(--bs-space-3);max-width:60%;padding:var(--bs-space-1) var(--bs-space-2);border-radius:var(--bs-radius-sm);background:color-mix(in srgb,var(--bs-surface-raised) 85%,transparent);color:var(--bs-text-muted);font-size:var(--bs-font-size-sm);pointer-events:none}.sketch__gridline{stroke:var(--bs-border);stroke-width:1;opacity:.45}.sketch__gridline--coarse{opacity:.9}.sketch__axis{stroke-width:1.2}.sketch__axis--x{stroke:#d45a5a}.sketch__axis--y{stroke:#5aa65a}.sketch__image--moving{cursor:move}.sketch__fill{fill:var(--bs-solid-500);fill-opacity:.32;stroke:none}.sketch__ring{fill:none;stroke:var(--bs-solid-500);stroke-width:1.5;vector-effect:non-scaling-stroke}.sketch__cut{fill:var(--bs-viewport-bg);stroke:none}.sketch__ring--cut{stroke:var(--bs-text-faint);stroke-dasharray:2 3}.sketch__marquee{fill:var(--bs-accent-ink);fill-opacity:.08;stroke:var(--bs-accent-ink);stroke-width:1;stroke-dasharray:4 3}.sketch__ring--hole{stroke-dasharray:4 3}.sketch__ring--open,.sketch__ring--crossing,.sketch__ring--tiny{stroke:var(--bs-danger);stroke-dasharray:5 4}.sketch__ring--selected{stroke:var(--bs-text);stroke-width:2.5}.sketch__draftline{fill:none;stroke:var(--bs-accent-ink);stroke-width:1.5;stroke-dasharray:5 4}.sketch__first{fill:var(--bs-surface-raised);stroke:var(--bs-accent-ink);stroke-width:2}.sketch__anchor{fill:var(--bs-accent-ink);stroke:none}.sketch__handle{fill:none;stroke:var(--bs-text-muted);stroke-width:1}.sketch__handledot{fill:var(--bs-text-muted)}.sketch__grip{fill:var(--bs-surface-raised);stroke:var(--bs-accent-ink);stroke-width:2;cursor:grab}.sketch__guide{fill:none;stroke:#e0559a;stroke-width:1;stroke-dasharray:4 3;pointer-events:none}.sketch__guidedot{fill:none;stroke:#e0559a;stroke-width:1.5}.sketch__handlegrip{fill:var(--bs-text-muted);stroke:var(--bs-surface-raised);stroke-width:1.5;cursor:grab}.sketch__calib{fill:var(--bs-warning);stroke:var(--bs-text);stroke-width:1.5}.sketch__calibline{fill:none;stroke:var(--bs-warning);stroke-width:1.5;stroke-dasharray:6 4}.sketch__dim,.sketch__diminput,.sketch__readout{position:absolute;transform:translate(-50%,-50%);padding:1px 6px;border:1px solid var(--bs-border);border-radius:var(--bs-radius-sm);background:var(--bs-surface-raised);color:var(--bs-text);font-family:var(--bs-font-mono);font-size:11px;line-height:1.5;white-space:nowrap;pointer-events:auto;cursor:text}.sketch__dim--selected{border-color:var(--bs-accent-ink)}.sketch__diminput{width:72px;outline:2px solid var(--bs-accent-ink)}.sketch__readout{transform:none;border-color:var(--bs-accent-ink);pointer-events:none}.sketch__footer{justify-content:flex-start;align-items:center;gap:var(--bs-space-2)}.sketch__note{color:var(--bs-text-muted);font-size:var(--bs-font-size-sm)}.files__emptyactions{display:flex;gap:var(--bs-space-2);justify-content:center}.tour{width:min(1040px,94vw);max-width:min(1040px,94vw);padding:0;display:flex;flex-direction:column;overflow:hidden}.tour:focus{outline:none}.tour__head{display:flex;align-items:center;gap:var(--bs-space-2);padding:var(--bs-space-3) var(--bs-space-4);border-bottom:1px solid var(--bs-border)}.tour__brand{font-weight:600}.tour__counter{color:var(--bs-text-faint);font-family:var(--bs-font-mono);font-size:var(--bs-font-size-sm);margin-right:var(--bs-space-2)}.tour__panel{display:flex;flex-direction:column;min-height:0}.tour__panel--in .tour__visual{animation:tour-rise .45s cubic-bezier(.2,.7,.2,1) both}.tour__panel--in .tour__text{animation:tour-rise .45s .08s cubic-bezier(.2,.7,.2,1) both}@keyframes tour-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.tour__visual{height:min(52vh,520px);background:var(--bs-surface-sunken);border-bottom:1px solid var(--bs-border);overflow:hidden}.tour__picture{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0%}.tour__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--bs-space-3);height:100%;padding:var(--bs-space-3);box-sizing:border-box}.tour__cell{display:flex;flex-direction:column;min-height:0;margin:0;border:1px solid var(--bs-border);border-radius:var(--bs-radius);background:var(--bs-surface);overflow:hidden}.tour__cell img{flex:1;min-height:0;width:100%;object-fit:cover}.tour__cell figcaption{padding:4px 8px;border-top:1px solid var(--bs-border);color:var(--bs-text-muted);font-family:var(--bs-font-mono);font-size:11px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tour__text{padding:var(--bs-space-4) var(--bs-space-5) var(--bs-space-3)}.tour__kicker{color:var(--bs-accent-ink);font-size:11px;font-weight:600;letter-spacing:var(--bs-tracking-label);text-transform:uppercase}.tour__title{margin:4px 0 8px;font-size:24px;font-weight:700;letter-spacing:-.01em}.tour__body p{margin:0 0 6px;max-width:78ch;color:var(--bs-text-muted);font-size:14px;line-height:1.55}.tour__body b{color:var(--bs-text);font-weight:600}.tour__body code{font-family:var(--bs-font-mono);color:var(--bs-text)}.tour__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--bs-space-3);padding:var(--bs-space-3) var(--bs-space-4);border-top:1px solid var(--bs-border)}.tour__dots{display:flex;gap:6px}.tour__dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:var(--bs-border-strong);cursor:pointer;transition:transform var(--bs-transition),background var(--bs-transition)}.tour__dot[aria-selected=true]{background:var(--bs-brand);transform:scale(1.35)}.tour__dot:focus-visible{outline:2px solid var(--bs-accent-ink);outline-offset:2px}.tour__next--last{padding-inline:18px}@media(max-height:760px){.tour__visual{height:42vh}}
