:root{color-scheme:light dark;--radius: 12px;--radius-sm: calc(var(--radius) - 4px);--radius-md: calc(var(--radius) - 2px);--radius-lg: var(--radius);--radius-xl: calc(var(--radius) + 4px);--radius-2xl: calc(var(--radius) + 8px);--background: #fafafa;--foreground: #111111;--surface: #ffffff;--surface-2: #f2f2f2;--primary: #ff9500;--primary-foreground: #ffffff;--primary-soft: #ffb84d;--primary-tint: rgba(255, 149, 0, .1);--muted-foreground: rgba(0, 0, 0, .6);--destructive: #dc2626;--success: #16a34a;--warning: #d97706;--border: rgba(0, 0, 0, .08);--input: rgba(0, 0, 0, .12);--overlay-hover: rgba(0, 0, 0, .06);--ring: var(--primary);--shadow-card: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px -8px rgba(0, 0, 0, .08);--shadow-elev: 0 2px 4px rgba(0, 0, 0, .04), 0 16px 40px -12px rgba(0, 0, 0, .12);--shadow-focus: 0 0 0 4px rgba(255, 149, 0, .16);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, Roboto, "Helvetica Neue", sans-serif;--font-display: var(--font-sans);--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--bg: var(--background);--panel: var(--surface);--fg: var(--foreground);--muted: var(--muted-foreground);--accent: var(--primary);--accent-soft: var(--primary-tint);--ok: var(--success);--warn: var(--warning);--bad: var(--destructive)}[data-theme=dark]{color-scheme:dark;--background: #0e0e10;--foreground: #f5f5f7;--surface: #17171c;--surface-2: #2a2a2e;--primary: #ff9f0a;--primary-foreground: #1a1205;--primary-soft: #ffbf5c;--primary-tint: rgba(255, 159, 10, .16);--muted-foreground: rgba(255, 255, 255, .62);--border: rgba(255, 255, 255, .12);--input: rgba(255, 255, 255, .18);--overlay-hover: rgba(255, 255, 255, .08);--shadow-card: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px -8px rgba(0, 0, 0, .6);--shadow-elev: 0 2px 4px rgba(0, 0, 0, .45), 0 16px 40px -12px rgba(0, 0, 0, .7);--shadow-focus: 0 0 0 4px rgba(255, 159, 10, .22)}html,body{margin:0;background:var(--background);color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.demo-app .panel,.demo-app .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-card);padding:.85rem .95rem}.demo-app h2,.demo-app .section-label{display:block;font-family:var(--font-display);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-foreground);font-weight:700;margin:0 0 .6rem}.demo-app .row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.demo-app .grid{display:grid;gap:.6rem}.demo-app .grid-2{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.demo-app .grid-3{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr))}.demo-app .chip,.demo-app .pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:999px;background:var(--primary-tint);color:var(--primary);border:1px solid transparent}.demo-app .chip.muted,.demo-app .pill.muted{background:transparent;border-color:var(--border);color:var(--muted-foreground)}.demo-app .chip.good{background:color-mix(in oklab,var(--success) 14%,transparent);color:var(--success)}.demo-app .chip.warn{background:color-mix(in oklab,var(--warning) 16%,transparent);color:var(--warning)}.demo-app .chip.bad{background:color-mix(in oklab,var(--destructive) 14%,transparent);color:var(--destructive)}.demo-app button,.demo-app .btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;font:inherit;font-size:.82rem;font-weight:600;line-height:1.1;padding:.45rem .8rem;min-height:34px;border-radius:var(--radius-md);border:1px solid var(--primary);background:transparent;color:var(--primary);cursor:pointer;touch-action:manipulation;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .08s ease,box-shadow .15s ease}.demo-app button:hover:not(:disabled),.demo-app .btn:hover:not(:disabled){background:var(--primary-tint)}.demo-app button:active:not(:disabled),.demo-app .btn:active:not(:disabled){transform:scale(.97)}.demo-app button:focus-visible,.demo-app .btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.demo-app button:disabled,.demo-app .btn:disabled{opacity:.45;cursor:not-allowed}.demo-app button.toggled,.demo-app .btn.toggled{background:var(--primary-tint);border-color:var(--primary);color:var(--primary)}.demo-app .btn.ghost{border-color:var(--border);color:var(--foreground)}.demo-app .btn.ghost:hover:not(:disabled){background:var(--overlay-hover)}.demo-app button.danger,.demo-app .btn.danger{border-color:var(--destructive);color:var(--destructive)}.demo-app button.danger:hover:not(:disabled),.demo-app .btn.danger:hover:not(:disabled){background:color-mix(in oklab,var(--destructive) 12%,transparent)}.demo-app .btn-block{width:100%}.demo-app button.icon-btn,.demo-app .btn.icon-btn{padding:0;width:34px;min-width:34px;height:34px;border-radius:var(--radius-md);flex:0 0 auto}.demo-app button.icon-btn svg{display:block}.demo-app button.icon-btn.toggled{background:transparent;border-color:var(--destructive);color:var(--destructive)}.demo-app button.icon-btn.toggled:hover:not(:disabled){background:color-mix(in oklab,var(--destructive) 10%,transparent)}.demo-app .btn-stack{display:grid;gap:0}.demo-app .btn-stack>button{border-radius:0;border-bottom-width:0;justify-content:flex-start;gap:.5rem}.demo-app .btn-stack>button:first-child{border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md)}.demo-app .btn-stack>button:last-child{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);border-bottom-width:1px}.demo-app .btn-stack>button.toggled{position:relative;z-index:1}.demo-app .btn-group{display:flex}.demo-app .btn-group>button{flex:1;border-radius:0;justify-content:center;gap:.35rem;padding-left:.5rem;padding-right:.5rem}.demo-app .btn-group>button:not(:first-child){margin-left:-1px}.demo-app .btn-group>button:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.demo-app .btn-group>button:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.demo-app .btn-group>button.toggled{position:relative;z-index:1}@media (max-width: 560px){.demo-app .btn-group{flex-wrap:wrap;gap:.4rem}.demo-app .btn-group>button{flex:1 1 auto;min-width:0;border-radius:var(--radius-md);padding:.4rem .5rem;font-size:.78rem}.demo-app .btn-group>button:not(:first-child){margin-left:0}}.demo-app .motion-planner{display:flex;flex-direction:column;gap:.5rem}.demo-app .planner-dur{font-size:.78rem;font-weight:600;text-transform:none;letter-spacing:0;color:var(--muted);white-space:nowrap}.demo-app .planner-dur b{font-size:1.1rem;font-variant-numeric:tabular-nums;color:var(--primary);margin-left:.15rem}.demo-app .planner-lim{font-size:.74rem;font-weight:600;color:var(--primary);text-transform:lowercase;letter-spacing:.01em;margin-top:-.2rem}.demo-app .planner-feel{border-top:1px dashed var(--border);padding-top:.35rem}.demo-app .planner-feel>summary{cursor:pointer;font-size:.74rem;color:var(--muted);list-style:none;user-select:none}.demo-app .planner-feel>summary::-webkit-details-marker{display:none}.demo-app .planner-feel>summary:before{content:"▸";display:inline-block;margin-right:.35rem;transition:transform .15s ease}.demo-app .planner-feel[open]>summary:before{transform:rotate(90deg)}.demo-app .anim-tuner{display:flex;flex-direction:column;gap:.3rem;padding-top:.4rem}.demo-app .anim-cost{display:grid;grid-template-columns:3.4rem 1fr 3rem;align-items:center;gap:.4rem}.demo-app .anim-cost-name{font-size:.72rem;color:var(--muted)}.demo-app .anim-cost-val{font-size:.7rem;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.demo-app .control-card{position:relative}.demo-app .tabs,.demo-app .segmented{display:flex}.demo-app .tabs .opt{flex:1;border-radius:0;border-color:var(--border);color:var(--foreground)}.demo-app .tabs .opt:not(:first-child){margin-left:-1px}.demo-app .tabs .opt:first-child{border-top-left-radius:var(--radius-md);border-bottom-left-radius:var(--radius-md)}.demo-app .tabs .opt:last-child{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.demo-app .tabs .opt.active{border-color:var(--primary);color:var(--primary);background:var(--primary-tint);z-index:1}.demo-app input[type=text],.demo-app .input{font:inherit;font-size:.88rem;padding:.5rem .7rem;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);color:var(--foreground);outline:none;flex:1;min-width:0;transition:border-color .15s ease,box-shadow .15s ease}.demo-app input[type=text]:focus,.demo-app .input:focus{border-color:var(--primary);box-shadow:var(--shadow-focus)}.demo-app input[type=range],.demo-app .slider{-webkit-appearance:none;appearance:none;width:100%;height:20px;background:transparent;outline:none;cursor:pointer}.demo-app input[type=range]::-webkit-slider-runnable-track,.demo-app .slider::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.demo-app input[type=range]::-moz-range-track,.demo-app .slider::-moz-range-track{height:6px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border)}.demo-app input[type=range]::-webkit-slider-thumb,.demo-app .slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--background);border:2px solid var(--primary);box-shadow:0 1px 2px #00000024;margin-top:-6px;transition:background-color .12s ease,box-shadow .12s ease}.demo-app input[type=range]::-moz-range-thumb,.demo-app .slider::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--background);border:2px solid var(--primary);box-shadow:0 1px 2px #00000024}.demo-app input[type=range]:hover::-webkit-slider-thumb{background:var(--primary-tint)}.demo-app input[type=range]:active::-webkit-slider-thumb,.demo-app input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--primary-tint)}.demo-app input[type=range]:disabled{opacity:.5;cursor:not-allowed}.demo-app .slider-field{display:grid;grid-template-columns:auto minmax(0,1fr) 2.6rem;align-items:center;gap:.5rem;font-size:.78rem}.demo-app .slider-field .sf-name{color:var(--muted-foreground)}.demo-app .slider-field .sf-ico{display:grid;place-items:center;color:var(--muted-foreground)}.demo-app .slider-field .sf-val{text-align:right;font-variant-numeric:tabular-nums;color:var(--foreground)}.demo-app .motor-section{display:flex;align-items:center;gap:.4rem;margin:.95rem 0 .4rem}.demo-app .module-head+.motor-section{margin-top:.35rem}.demo-app .motor-section-icon{display:inline-flex;color:var(--muted-foreground)}.demo-app .motor-section-icon svg{width:16px;height:16px}.demo-app .motor-section-label{font-size:.64rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted-foreground)}.demo-app .dial-grid{display:grid;grid-template-columns:1fr 1fr;gap:.4rem .9rem}.demo-app .dial-grid.one{grid-template-columns:1fr}.demo-app .dial-field{display:flex;flex-direction:column;gap:.15rem;min-width:0}.demo-app .dial-field.disabled{opacity:.5;pointer-events:none}.demo-app .dial-head{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem}.demo-app .dial-name{font-size:.72rem;font-weight:600;color:var(--foreground)}.demo-app .dial-val{font-size:.64rem;font-family:var(--font-mono);color:var(--muted-foreground);font-variant-numeric:tabular-nums}.demo-app .dial-row{display:flex;align-items:center;gap:.55rem;min-width:0}.demo-app .dial{--p: .5;width:30px;height:30px;flex-shrink:0}.demo-app .dial-svg{width:100%;height:100%;transform:rotate(135deg);overflow:visible}.demo-app .dial-svg circle{fill:none;stroke-linecap:round;stroke-dasharray:97.389}.demo-app .dial-svg .dial-track{stroke:var(--border);stroke-width:4.5;stroke-dashoffset:25.321}.demo-app .dial-svg .dial-prog{stroke:var(--primary);stroke-width:4;stroke-dashoffset:calc(97.389 * (.99 - .73 * var(--p, .5)));transition:stroke-dashoffset .06s linear}.demo-app .range-wrap{position:relative;display:block;flex:1 1 auto;min-width:0}.demo-app .range-wrap:before{content:"";position:absolute;top:50%;left:0;right:0;height:6px;margin-top:-4px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.demo-app .range-wrap input[type=range].slider::-webkit-slider-runnable-track{background:transparent;border-color:transparent}.demo-app .range-wrap input[type=range].slider::-moz-range-track{background:transparent;border-color:transparent}.demo-app .range-wrap .slider{position:relative;display:block;margin:0}.demo-app .range-ghost{--g: .5;position:absolute;box-sizing:border-box;top:50%;left:calc(8px + var(--g) * (100% - 16px));width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;background:var(--primary-tint);border:1.5px solid var(--primary);opacity:.55;pointer-events:none}.demo-app .range-target{--g: .5;position:absolute;box-sizing:border-box;top:50%;left:calc(8px + var(--g) * (100% - 16px));width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:transparent;border:1.6px dashed var(--primary);opacity:0;pointer-events:none;transition:opacity .15s ease}.demo-app .range-target[data-on="1"]{opacity:.95}.demo-app .dial-field.align-right .dial-head,.demo-app .dial-field.align-right .dial-row{flex-direction:row-reverse}.demo-app .motor-section-img{width:18px;height:18px;opacity:.6;filter:brightness(0)}[data-theme=dark] .demo-app .motor-section-img{opacity:.75;filter:brightness(0) invert(1)}.demo-app .control-card{padding:.45rem .6rem;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.demo-app .motor-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.demo-app .motor-grid.one{grid-template-columns:1fr}.demo-app .motor-grid.head{grid-template-columns:1fr 1fr;align-items:stretch}.demo-app .motor-grid+.control-card{margin-top:.5rem}.demo-app .head-xyz{display:flex;align-items:center;justify-content:center;gap:1.1rem}.demo-app .head-xyz .joy,.demo-app .head-xyz .vslider{flex:0 0 auto}.demo-app .motor-grid.head>.control-card{display:grid;place-items:center;padding:.7rem .6rem}.demo-app .motor-grid.head .joy,.demo-app .motor-grid.head .joy.align-right{align-items:center}.demo-app .motor-grid.head .joy-head,.demo-app .motor-grid.head .joy.align-right .joy-head{align-items:center;text-align:center}.demo-app .vslider{display:flex;flex-direction:column;align-items:center;gap:.25rem}.demo-app .vslider.disabled{opacity:.5;pointer-events:none}.demo-app .vslider-head{display:flex;flex-direction:column;align-items:center;gap:.05rem;text-align:center}.demo-app .vrange-track{position:relative;display:inline-block;width:22px;height:96px;flex:0 0 auto}.demo-app .vrange-track:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:6px;margin-left:-4px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.demo-app input[type=range].vrange::-webkit-slider-runnable-track{background:transparent;border-color:transparent}.demo-app input[type=range].vrange::-moz-range-track{background:transparent;border-color:transparent}.demo-app input[type=range].vrange{position:absolute;top:50%;left:50%;width:96px;height:20px;margin:0;transform:translate(-50%,-50%) rotate(-90deg);transform-origin:center}.demo-app .vrange-track .vghost{--g: .5;position:absolute;box-sizing:border-box;left:50%;bottom:calc(8px + var(--g) * 80px);width:11px;height:11px;margin:0 0 -5.5px -5.5px;border-radius:50%;background:var(--primary-tint);border:1.5px solid var(--primary);opacity:.55;pointer-events:none}.demo-app .vrange-track .vtarget{--g: .5;position:absolute;box-sizing:border-box;left:50%;bottom:calc(8px + var(--g) * 80px);width:14px;height:14px;margin:0 0 -7px -7px;border-radius:50%;background:transparent;border:1.6px dashed var(--primary);opacity:0;pointer-events:none;transition:opacity .15s ease}.demo-app .vrange-track .vtarget[data-on="1"]{opacity:.95}.demo-app .roll-field{display:flex;flex-direction:column;gap:.15rem;min-width:0}.demo-app .roll-field.disabled{opacity:.5;pointer-events:none}.demo-app .roll-arc{width:30px;height:16px;flex-shrink:0;display:inline-flex}.demo-app .roll-svg{width:100%;height:100%;overflow:visible}.demo-app .roll-svg path{fill:none;stroke-linecap:round}.demo-app .roll-track{stroke:var(--border);stroke-width:4.5}.demo-app .roll-prog{stroke:var(--primary);stroke-width:4;stroke-dasharray:var(--p, .5) 2;transition:stroke-dasharray .06s linear}.demo-app .joy{display:flex;flex-direction:column;gap:.2rem;align-items:flex-start}.demo-app .joy.align-right{align-items:flex-end}.demo-app .joy.disabled,.demo-app .demo-main.is-anim-busy .joy{opacity:.5;pointer-events:none}.demo-app .demo-main.is-anim-busy .range-ghost,.demo-app .demo-main.is-anim-busy .vghost{opacity:.28}.demo-app .demo-main.is-anim-busy .range-wrap:before,.demo-app .demo-main.is-anim-busy .vrange-track:before{opacity:.5}.demo-app .joy-head{display:flex;flex-direction:column;gap:.05rem}.demo-app .joy.align-right .joy-head{align-items:flex-end}.demo-app .joy-pad{width:96px;height:96px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-2);box-shadow:inset 0 1px 2px #0000000d;cursor:grab;overflow:hidden;touch-action:none;transition:border-color .12s ease,box-shadow .12s ease}.demo-app .joy-pad:hover{border-color:var(--primary)}.demo-app .joy-pad:active{cursor:grabbing}.demo-app .joy-pad:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-tint)}.demo-app .joy-svg{display:block;width:100%;height:100%}.demo-app .joy-grid line{stroke:var(--primary);stroke-width:1;opacity:.22}.demo-app .joy-limit{fill:none;stroke:var(--primary);stroke-width:1.5;stroke-dasharray:2 2;opacity:.35}.demo-app .joy-line{stroke:var(--primary);stroke-width:2;stroke-linecap:round;opacity:.5}.demo-app .joy-knob{fill:var(--primary);stroke:var(--surface);stroke-width:2}.demo-app .joy-ghost-line{stroke:var(--primary);stroke-width:1.5;stroke-linecap:round;stroke-dasharray:3 3;opacity:.35}.demo-app .joy-ghost-knob{fill:var(--primary);fill-opacity:.2;stroke:var(--primary);stroke-opacity:.5;stroke-width:1.5}.demo-app .joy-target-knob{fill:none;stroke:var(--primary);stroke-width:1.6;stroke-dasharray:2.6 2;opacity:0;transition:opacity .15s ease}.demo-app .joy-target-knob[data-on="1"]{opacity:.95}.demo-app .demo-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;align-items:start}.demo-app .demo-col{display:flex;flex-direction:column;gap:.75rem;min-width:0}@media (max-width: 720px){.demo-app .demo-main{grid-template-columns:1fr}}.demo-app .logs-btn{gap:.4rem}.demo-app .logs-btn .log-status{font-size:.66rem}.demo-app .modal-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:1rem;background:#00000073;backdrop-filter:blur(2px)}.demo-app .modal-overlay[hidden]{display:none}.demo-app .modal{display:flex;flex-direction:column;width:min(720px,100%);max-height:80vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow:hidden}.demo-app .modal-sm{width:min(420px,100%)}.demo-app .modal-lg{width:min(960px,100%)}.demo-app .modal-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .6rem .5rem .85rem;border-bottom:1px solid var(--border)}.demo-app .modal-head h2{margin:0;font-size:.85rem;display:flex;align-items:center;gap:.4rem}.demo-app .modal-actions{display:flex;align-items:center;gap:.3rem}.demo-app .modal-body{padding:.6rem .7rem;overflow:auto;min-height:0}.demo-app .modal-body .logs{height:58vh;max-height:none;margin:0}.demo-app code{font-family:var(--font-mono);font-size:.85em}.demo-app a{color:var(--primary)}.demo-app .info-tip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;color:var(--muted-foreground);cursor:help;outline:none;vertical-align:middle;flex-shrink:0}.demo-app .info-tip:hover,.demo-app .info-tip:focus-visible{color:var(--primary)}.demo-app .info-tip>svg{width:14px;height:14px}.demo-app .head-with-info,.demo-app .section-label.with-info,.demo-app .subsection-title.with-info,.demo-app .log-title{display:inline-flex;align-items:center;gap:.3rem}.demo-app .info-bubble{position:fixed;z-index:3000;top:auto;bottom:auto;left:0;width:max-content;max-width:min(300px,calc(100vw - 16px));padding:.6rem .72rem;border-radius:var(--radius-md);background:var(--foreground);color:var(--background, var(--surface));font-family:var(--font-sans);font-size:.74rem;font-weight:500;line-height:1.45;letter-spacing:0;text-transform:none;white-space:normal;text-align:left;box-shadow:0 10px 30px #00000047,0 2px 6px #00000029;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(2px);transition:opacity .14s ease,transform .14s ease}.demo-app .info-bubble-title{display:block;font-size:.63rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.62;margin-bottom:.3rem}.demo-app .info-bubble-body,.demo-app .info-bubble .tip-p{display:block}.demo-app .info-bubble .tip-p+.tip-p{margin-top:.28rem}.demo-app .info-bubble strong{font-weight:700}.demo-app .info-bubble code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.88em;padding:.02em .32em;border-radius:5px;background:color-mix(in oklab,currentColor 15%,transparent);border:1px solid color-mix(in oklab,currentColor 22%,transparent);white-space:nowrap}.demo-app .info-bubble:before{content:"";position:absolute;left:var(--arrow-x, 50%);transform:translate(-50%);border:5px solid transparent}.demo-app .info-bubble[data-placement=bottom]:before{bottom:100%;border-bottom-color:var(--foreground)}.demo-app .info-bubble[data-placement=top]:before{top:100%;border-top-color:var(--foreground)}.demo-app .info-bubble.is-visible{opacity:1;visibility:visible;pointer-events:none;transform:none}
