@import"https://fonts.googleapis.com/css2?family=Roboto:wght@100..900&display=swap";:root{color-scheme:dark;--control-h: 28px;--font-ui: "Roboto", sans-serif;--font-code: ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace;--bg: #0a0a0a;--panel: #101010;--line: rgb(255 255 255 / 12%);--text: #f5f5f5;--muted: rgb(255 255 255 / 60%);--accent: #7aa2f7;--warn: #ffb020;--input: #171717;--banner-bg: #211a0d;--ins-bg: #101010;--ins-active: rgb(255 255 255 / 10%);--ins-active-text: #ffffff;--row-alt: rgb(255 255 255 / 3%);--canvas-bg: #101010;--grid: rgb(255 255 255 / 8%);--axis: rgb(255 255 255 / 30%);--ghost: rgb(255 255 255 / 45%);--contour: #f5f5f5;--point-stroke: #0a0a0a;--point-on: #9ece6a;--point-off: #bb9af7;--point-phantom: #7aa2f7;--touch-xy: #ff9e64;--touch-x: #f7768e;--touch-y: #7dcfff;--dim-h: 220;--col-l: 64%;--col-a: hsl(var(--dim-h) 78% var(--col-l));--col-b: hsl(var(--dim-h) 30% calc(var(--col-l) - 6%));--dim-strong: hsl(var(--dim-h) 85% 66%);font-family:var(--font-ui);font-feature-settings:"zero" 0;font-variant-numeric:lining-nums}:root[data-theme=light]{color-scheme:light;--bg: #ffffff;--panel: #ffffff;--line: rgb(0 0 0 / 12%);--text: #111111;--muted: rgb(0 0 0 / 60%);--accent: #3d6fd9;--warn: #c47a00;--input: rgb(0 0 0 / 4%);--banner-bg: #fff8eb;--ins-bg: #ffffff;--ins-active: rgb(0 0 0 / 8%);--ins-active-text: #111111;--row-alt: #fafafa;--canvas-bg: #ffffff;--grid: rgb(0 0 0 / 8%);--axis: rgb(0 0 0 / 34%);--ghost: rgb(0 0 0 / 52%);--contour: #111111;--point-stroke: #ffffff;--point-on: #3d8c40;--point-off: #7c5cbf;--point-phantom: #3d6fd9;--touch-xy: #d07030;--touch-x: #c4455c;--touch-y: #1a8bb8;--col-l: 44%;--dim-strong: hsl(var(--dim-h) 70% 42%)}*{box-sizing:border-box;scrollbar-width:auto;scrollbar-color:var(--line) transparent;scrollbar-gutter:auto}*::-webkit-scrollbar{width:8px;height:8px;background:transparent}*::-webkit-scrollbar-track,*::-webkit-scrollbar-track-piece{background:transparent;border:none}*::-webkit-scrollbar-thumb{background:var(--line);border:none;border-radius:4px}*::-webkit-scrollbar-thumb:hover{background:var(--muted)}*::-webkit-scrollbar-button{display:none;width:0;height:0}*::-webkit-scrollbar-corner{background:transparent}html,body,#root{margin:0;height:100%;background:var(--bg);color:var(--text)}.app{display:flex;flex-direction:column;height:100%;min-height:0}.toolbar,.controls{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--panel)}.toolbar{flex-wrap:nowrap;padding:4px 8px}.toolbar-main{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;flex:1;min-width:0}.brand{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;margin-right:12px;padding-right:16px}.brand-logo{display:inline-block;font-family:FontLabLogo2021,ui-sans-serif,system-ui,sans-serif;font-size:23px;font-weight:400;line-height:1;letter-spacing:0;color:var(--muted);text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none;position:relative;bottom:1px;visibility:hidden}html.fontlab-logo-ready .brand-logo{visibility:visible}.brand-logo:hover,.brand-logo:focus-visible{color:var(--text)}.brand-product{font-family:ui-sans-serif,SF Pro Text,system-ui,sans-serif;font-weight:500;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--text);opacity:.72;white-space:nowrap}.toolbar-main>label{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--muted);white-space:nowrap}input,select,button{box-sizing:border-box;height:var(--control-h);background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:0 8px;font:inherit;font-size:12px;line-height:1}button{display:inline-flex;align-items:center;gap:5px}:where(input,select,button):focus-visible{outline:none;border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.ms{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:16px;line-height:1;letter-spacing:normal;display:inline-block;-webkit-user-select:none;user-select:none;color:var(--muted);font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}button:not(:disabled):hover .ms{color:var(--accent)}select{appearance:none;-webkit-appearance:none;height:24px;padding:0 28px 0 6px;font-family:var(--font-ui);font-size:12px;font-weight:400;line-height:1;background-image:none}.select-shell{position:relative;display:inline-flex;height:24px}.combo-arrow{display:grid;place-items:center;align-self:stretch;flex:0 0 22px;width:22px;height:22px;border-left:1px solid var(--line);background:color-mix(in srgb,var(--panel) 32%,var(--input));color:var(--muted);font-size:18px;line-height:1}.select-shell>.combo-arrow{position:absolute;top:1px;right:1px;pointer-events:none}:is(.glyph-trigger,.font-trigger,.location-trigger):not(:disabled):hover>.combo-arrow,.select-shell:hover>.combo-arrow{background:color-mix(in srgb,var(--text) 5%,var(--input))}input[type=number]{-moz-appearance:textfield;appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none;display:none;margin:0}.num-input{display:inline-flex;align-items:stretch;width:5.6em;height:var(--control-h);overflow:hidden;background:var(--input);border:1px solid var(--line);border-radius:6px;font-family:var(--font-ui);font-size:12px;font-weight:400}.num-input:focus-within{border-color:var(--accent);outline:none;box-shadow:inset 0 0 0 1px var(--accent)}.num-input input{width:0;flex:1;min-width:0;height:100%;padding:0 6px;border:none;border-radius:0;background:transparent;font-family:var(--font-ui);font-size:12px;font-weight:400;line-height:1;text-align:center;font-variant-numeric:tabular-nums}.num-input input:focus{outline:none;box-shadow:none}.num-spinners{display:flex;flex-direction:column;flex:0 0 14px;width:14px;border-left:1px solid var(--line)}.num-spinners button{display:flex;align-items:center;justify-content:center;flex:1;gap:0;height:auto;min-height:0;padding:0;border:none;border-radius:0;background:var(--input);line-height:0}.num-spinners button+button{border-top:1px solid var(--line)}.num-spinners button .ms{display:flex;align-items:center;justify-content:center;width:1em;height:1em;font-size:11px;line-height:1;color:var(--muted)}.num-spinners button:not(:disabled):hover{background:color-mix(in srgb,var(--accent) 14%,var(--input));border-color:var(--line)}.num-spinners button:not(:disabled):hover .ms{color:var(--accent)}.num-spinners button:disabled .ms{color:var(--muted)}.visually-hidden,.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button:disabled{opacity:.45}button:not(:disabled){cursor:pointer}button:not(:disabled):hover{background:color-mix(in srgb,var(--text) 5%,var(--input));border-color:var(--line)}.toolbar .glyph-char{width:2.7em;height:24px;padding-inline:5px;text-align:center;font-family:var(--font-ui);font-size:12px;font-weight:400;line-height:1}.toolbar .num-input{width:4.7em;height:24px}.toolbar .num-spinners{flex-basis:13px;width:13px}.glyph-picker{position:relative}.glyph-trigger{display:inline-grid;grid-template-columns:minmax(1.4em,auto) 1.2em 22px;align-items:center;gap:6px;width:auto;min-width:6em;height:24px;padding:0 0 0 8px;overflow:hidden;font-family:var(--font-ui);font-size:12px;font-weight:400;line-height:1}.glyph-trigger .muted{font-size:inherit}.glyph-trigger .glyph-idx{min-width:1.5em;font-variant-numeric:tabular-nums;font:inherit}.glyph-trigger .glyph-ch{min-width:1.1em;text-align:center;font:inherit}.glyph-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:40;width:max-content;min-width:14em;max-width:min(20em,92vw);background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 16px #0000002e;overflow:hidden}.glyph-scroller{max-height:min(22em,60vh);overflow:auto}.glyph-window{position:relative;min-width:100%}.glyph-row{position:absolute;left:0;display:grid;grid-template-columns:var(--glyph-index-width, 3ch) minmax(3.5em,7em) 5.6em;gap:8px;align-items:center;width:100%;height:28px;padding:0 10px;border:0;border-radius:0;background:transparent;text-align:left;font-size:12px;font-family:var(--font-ui);font-weight:400;line-height:1}.glyph-row.is-alt{background:var(--row-alt)}.glyph-row .muted{font-size:inherit}button.glyph-row:not(:disabled):hover{background:color-mix(in srgb,var(--accent) 12%,var(--input));border-color:transparent}.glyph-row.is-current{background:var(--ins-active);color:var(--ins-active-text)}.glyph-idx,.glyph-uni{font-variant-numeric:tabular-nums}.glyph-uni{display:grid;grid-template-columns:1.25em 3.6em;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap;text-align:right}.glyph-ch{text-align:center;font-size:14px;font-family:var(--font-ui)}.glyph-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.glyph-name.is-synthetic{color:var(--muted)}.glyph-row .glyph-ch{min-width:1em;text-align:center;font-size:inherit;line-height:inherit}.location-picker{position:relative}.location-trigger{display:inline-flex;align-items:center;max-width:11em;min-width:6.5em;height:24px;gap:6px;padding:0 0 0 6px;overflow:hidden}.location-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-ui);font-size:12px;font-weight:400}.location-pop{position:absolute;top:calc(100% + 4px);left:0;z-index:40;width:min(26em,92vw);padding:10px;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 16px #0000002e}.location-instances{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.location-instance{height:22px;padding:0 8px;font-size:11px}.location-instance.is-current{background:var(--ins-active);color:var(--ins-active-text);border-color:transparent}.location-axes{display:flex;flex-direction:column;gap:8px}.location-axis{display:grid;grid-template-columns:auto minmax(4em,1fr) 7em 3.8em;gap:8px;align-items:center;color:var(--text);font-size:12px}.location-tag{display:inline-flex;align-items:center;justify-content:center;min-width:3.4em;height:20px;padding:0 8px;border:1px solid var(--line);border-radius:999px;background:var(--input);font-family:var(--font-ui);font-size:11px;letter-spacing:.02em;color:var(--text)}.location-axis-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-axis input[type=range]{width:100%;height:16px;padding:0;background:transparent;border:0;accent-color:var(--accent)}.location-value{width:100%;height:22px;padding:0 4px;text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-ui)}.filename{color:var(--muted);font-size:12px}.step-slider{--progress: 0%;display:flex;align-items:center;gap:10px;flex:1;min-width:160px}.step-slider-track{position:relative;flex:1;min-width:120px;height:var(--control-h);margin:0;border-radius:999px;background:var(--input);box-shadow:inset 0 0 0 1px var(--line)}.step-slider-calls{position:absolute;left:12px;right:12px;top:50%;height:8px;transform:translateY(-50%);pointer-events:none;z-index:0}.step-slider-call{position:absolute;top:0;height:100%;min-width:2px;border-radius:2px}.step-slider-call.alt-0{background:color-mix(in srgb,var(--point-off) 55%,transparent)}.step-slider-call.alt-1{background:color-mix(in srgb,var(--touch-y) 55%,transparent)}.step-slider-track:before{content:"";position:absolute;z-index:1;left:12px;right:12px;top:50%;height:4px;border-radius:999px;transform:translateY(-50%);background:linear-gradient(to right,var(--accent) 0%,var(--accent) var(--progress),color-mix(in srgb,var(--line) 80%,var(--muted)) var(--progress),color-mix(in srgb,var(--line) 80%,var(--muted)) 100%);pointer-events:none}.step-slider input[type=range]{-webkit-appearance:none;appearance:none;position:relative;z-index:2;display:block;width:100%;height:var(--control-h);margin:0;padding:0 8px;border:none;background:transparent;cursor:pointer}.step-slider input[type=range]:focus{outline:none}.step-slider input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:999px}.step-slider input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent;border:none}.step-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-5px;border:2px solid var(--accent);border-radius:50%;background:var(--panel)}.step-slider input[type=range]::-moz-range-track{height:4px;background:transparent;border:none}.step-slider input[type=range]::-moz-range-thumb{width:14px;height:14px;border:2px solid var(--accent);border-radius:50%;background:var(--panel)}.step-slider-track:hover input[type=range]:not(:disabled)::-webkit-slider-thumb{background:var(--accent)}.step-slider-track:hover input[type=range]:not(:disabled)::-moz-range-thumb{background:var(--accent)}.step-slider.is-disabled{opacity:.45}.step-slider.is-disabled input[type=range]{cursor:default}.step-slider-meta{display:flex;align-items:baseline;gap:5px;flex:0 0 11.5rem;width:11.5rem;min-width:11.5rem;overflow:hidden;font-family:var(--font-ui);font-size:12px;font-weight:400;font-variant-numeric:tabular-nums;line-height:1.2;color:var(--text)}.step-slider-count{flex-shrink:0}.step-slider-max{color:inherit}.step-slider-loc{flex-shrink:0;color:inherit}.step-slider-op{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hint,.banner{margin:0;padding:6px 12px;font-size:12px;color:var(--muted)}.hint{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-shrink:0;border-top:1px solid var(--line);background:var(--panel);font-family:var(--font-ui)}.hint-copy{flex-shrink:0;margin-left:auto;white-space:nowrap}.hint-copy a{color:inherit;text-decoration:underline;text-decoration-color:color-mix(in srgb,currentColor 55%,transparent);text-underline-offset:2px}.hint-copy a:hover{color:var(--text)}.banner{color:var(--warn);background:var(--banner-bg)}.theme-toggle{flex-shrink:0;align-self:center;display:inline-flex;align-items:center;justify-content:center;width:var(--control-h);height:var(--control-h);padding:0;cursor:pointer}.theme-toggle svg{width:16px;height:16px}.main{flex:1;min-height:0;display:grid;grid-template-columns:var(--preview-width, minmax(280px, 1.1fr)) 6px minmax(320px,1fr)}.left,.right{min-height:0;overflow:auto;padding:10px}.left{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden}.left>.glyph-scroll{flex:1 1 auto;min-height:0;overflow:auto;padding:10px;display:flex;flex-direction:column;align-items:center;gap:12px}.preview-divider{position:relative;z-index:3;flex:0 0 1px;height:1px;background:var(--line)}.contour-zoom{position:absolute;bottom:10px;right:10px;display:inline-flex;align-items:center;gap:4px;height:28px;padding-left:8px;background:var(--panel);color:var(--muted);font-size:12px}.contour-zoom .num-input{width:4.25em}.left>.bitmap-pair{flex:0 0 auto;padding:16px 10px 6px;background:var(--panel);max-height:45%;overflow:auto}.bitmap-label{font-size:11px;color:var(--muted);text-align:center;margin-bottom:4px}.right{display:grid;grid-template-rows:minmax(0,1fr);min-height:0;overflow:hidden;padding:10px 0 0}.right>.ins-panel{margin:0 10px}.right:has(.code-splitter){grid-template-rows:var(--code-height, minmax(140px, 1fr)) 6px minmax(180px,1fr)}.main-splitter,.code-splitter{position:relative;z-index:2;min-height:0;touch-action:none;background:var(--line)}.main-splitter{width:6px;cursor:col-resize}.code-splitter{height:6px;margin:0;cursor:row-resize}.main-splitter:after,.code-splitter:after{content:"";position:absolute;inset:0 -2px}.code-splitter:after{inset:-2px 0}.main-splitter:hover,.main-splitter:active,.code-splitter:hover,.code-splitter:active{background:var(--accent)}body.is-resizing-main{cursor:col-resize;-webkit-user-select:none;user-select:none}body.is-resizing-code{cursor:row-resize;-webkit-user-select:none;user-select:none}.contour-canvas{border:1px solid var(--line);border-radius:4px;max-width:100%;background:var(--canvas-bg)}.placeholder{padding:40px;color:var(--muted);text-align:center;align-self:stretch}.outline-pair,.bitmap-pair{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;justify-content:center}.outline-pair{flex-wrap:nowrap}.outline-pane{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.outline-pane .contour-canvas{max-width:none}.outline-pane figcaption{font-size:11px;color:var(--muted);font-family:var(--font-ui)}.bitmap-wrap,.bitmap-empty{display:flex;flex-direction:column;align-items:center;gap:6px}.bitmap-mode select{min-width:9.5em}.bitmap-frame{background:#fff;border:1px solid var(--line);border-radius:4px;padding:12px}.bitmap-canvas{display:block;image-rendering:pixelated;background:#fff}.bitmap-meta{text-align:center}.bitmap-meta,.muted,.bitmap-empty{color:var(--muted);font-size:11px}.ins-panel{display:flex;flex-direction:column;min-height:0;height:100%}.range-tabs{display:flex;flex:0 0 auto;gap:3px}.tab{padding-inline:7px;font-size:12px}.tab.on{border-color:var(--accent);color:var(--accent)}.ins-list{overflow:auto;font-size:12px;background:var(--ins-bg);border:0;border-radius:0;flex:1}.ins-row{display:grid;grid-template-columns:42px minmax(0,3fr) minmax(12em,2fr);gap:12px;padding:2px 8px;align-items:baseline}.ins-row:nth-child(2n):not(.active){background:var(--row-alt)}.ins-row.active{background:var(--ins-active);color:var(--ins-active-text)}.ins-row.done{color:var(--muted);font-style:italic;display:block}.ins-row .ins-ip[role=button]{cursor:pointer;border-left:3px solid transparent;margin-left:-8px;padding-left:5px}.ins-row .ins-ip[role=button]:hover{border-left-color:var(--line)}.ins-fn{color:var(--accent);font-style:italic}.ins-effect{color:var(--accent);font-size:9px;margin-right:6px;vertical-align:.1em}.ins-row.bp .ins-ip{border-left-color:#d33!important;color:#d33}.ins-ip{color:var(--muted);font-variant-numeric:tabular-nums;font-feature-settings:"zero" 0}.ins-op{min-width:0;overflow-wrap:anywhere;font-family:var(--font-code);font-variant-numeric:slashed-zero;font-feature-settings:"zero" 1}.tok-op{color:var(--text)}.tok-flag{color:color-mix(in srgb,var(--muted) 80%,var(--text))}.tok-num{color:color-mix(in srgb,var(--text) 70%,var(--accent))}.tok-point{color:color-mix(in srgb,var(--point-on) 62%,var(--text))}.tok-cvt{color:color-mix(in srgb,var(--accent) 70%,var(--text))}.tok-fn{color:color-mix(in srgb,var(--point-off) 62%,var(--text))}.tok-store{color:color-mix(in srgb,var(--warn) 62%,var(--text))}.tok-array{color:color-mix(in srgb,var(--accent) 55%,var(--muted))}.tok-pair{color:color-mix(in srgb,var(--point-on) 55%,var(--text))}.ins-row.active .tok-op{color:var(--ins-active-text)}.ins-help{color:var(--muted);font-family:var(--font-ui);font-size:12px;line-height:1.35;min-width:0}.state-grid{flex:1;min-height:0;height:100%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-areas:"stack gs" "cvt storage";gap:0;margin:0;overflow:hidden}.state-col{display:contents}.state-col:first-child section:first-child{grid-area:stack}.state-col:first-child section:last-child{grid-area:cvt}.state-col:last-child section:first-child{grid-area:gs}.state-col:last-child section:last-child{grid-area:storage}.state-grid section{display:flex;flex-direction:column;min-width:0;min-height:0;padding:8px 12px;overflow:hidden}.state-col:first-child section:first-child{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.state-col:last-child section:first-child{border-bottom:1px solid var(--line)}.state-col:first-child section:last-child{border-right:1px solid var(--line)}.state-grid h3{display:flex;align-items:baseline;gap:8px;flex:0 0 auto;margin:0 0 4px;font-size:12px;color:var(--accent)}.panel-title{min-width:0}.panel-note{font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}.panel-count{margin-left:auto;min-width:1.4em;padding:0 8px;border-radius:999px;background:var(--input);color:var(--muted);font-weight:400;font-size:11px;line-height:16px;font-variant-numeric:tabular-nums;text-align:center}.gs{flex:1;min-height:0;display:grid;grid-template-columns:90px 1fr;align-content:start;gap:2px 8px;margin:0;height:auto;max-height:none;overflow:auto;font-size:12px}.gs dt{color:var(--muted)}.gs dd{margin:0;font-family:var(--font-ui)}.stack,.num-list{flex:1;min-height:0;font-family:var(--font-ui);font-size:12px;height:auto;max-height:none;overflow:auto}.stack-item{display:grid;grid-template-columns:2.2em minmax(3em,auto) minmax(4.2em,auto) minmax(3.2em,auto);gap:8px;align-items:center;padding:1px 4px;border-radius:3px}.stack-item:nth-child(2n),.num-row:nth-child(2n),.gs dt:nth-of-type(2n),.gs dd:nth-of-type(2n){background:var(--row-alt)}.idx{display:flex;align-items:center;justify-content:flex-end;width:2.2em;font-variant-numeric:tabular-nums}.idx .ms{font-size:14px;line-height:1}.num-row{display:grid;grid-template-columns:2.2em minmax(3em,auto) minmax(4.2em,auto);gap:8px;align-items:center;padding:1px 4px;border-radius:3px}.num-row.is-source{background:color-mix(in srgb,var(--accent) 14%,transparent)}.num-row.is-source .idx{color:var(--accent)}.just-changed{background:color-mix(in srgb,var(--accent) 8%,transparent)}.will-change{background:color-mix(in srgb,var(--warn) 8%,transparent)}.gs dt.just-changed,.gs dt.will-change,.gs dd.just-changed,.gs dd.will-change{padding:0 4px;border-radius:3px}@media(max-width:900px){.main{grid-template-columns:1fr}.main-splitter{display:none}.glyph-pop{left:auto;right:0}.left{border-bottom:1px solid var(--line)}.outline-pair{flex-wrap:wrap}.outline-pane{max-width:100%}.outline-pane .contour-canvas{max-width:calc(100vw - 24px);height:auto}.hint{align-items:flex-start;flex-wrap:wrap}.hint-copy{margin-left:0}.hint .keys{display:flex;white-space:normal;overflow-wrap:anywhere}}.col-a{--col: var(--col-a)}.col-b{--col: var(--col-b)}.section{display:inline-flex;align-items:center;gap:4px;padding:1px 4px;border-radius:6px;border:1px solid transparent}.section.is-compare{padding:4px;border-color:color-mix(in srgb,var(--dim-strong) 24%,var(--line));background:color-mix(in srgb,var(--dim-strong) 4%,transparent)}.section-label{height:calc(var(--control-h) - 6px);padding:0 4px;border:0;border-radius:3px;background:transparent;color:var(--muted);font-family:var(--font-ui);font-size:12.5px;font-weight:500;letter-spacing:0;line-height:1;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--muted) 72%,transparent);text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}.section-label:not(:disabled):hover{color:var(--text);background:transparent;border-color:transparent;text-decoration-color:var(--text)}.section-label:disabled{opacity:.45;text-decoration:none;cursor:default}.section.is-compare .section-label{color:var(--dim-strong);font-weight:600;background:transparent;-webkit-text-fill-color:initial;text-decoration:none}.section.is-compare .section-label:not(:disabled):hover{color:var(--dim-strong);text-decoration-color:var(--dim-strong)}.section-a,.section-b{display:inline-flex;align-items:center;gap:4px}.col-tag{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--col);color:#fff;font-size:10px;font-weight:700;margin-left:2px}.static-note{color:var(--muted);font-size:12px;font-style:italic;padding:0 4px}.outline-pane figcaption{display:flex;flex-wrap:wrap;justify-content:center;gap:0;max-width:100%}.outline-pane .cap{white-space:nowrap}.outline-pane .cap-sep{color:var(--muted);opacity:.6}.outline-pane .cap-diff{color:var(--col);font-weight:600}.bitmap-pair>.col-a,.bitmap-pair>.col-b{position:relative}.placeholder.small{font-size:12px;padding:24px}.font-menu{position:relative}.font-trigger{max-width:15em;height:24px;padding:0 0 0 6px;gap:6px;font-family:var(--font-ui);font-size:12px;font-weight:400;white-space:nowrap}.font-trigger-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.font-axes{flex-shrink:0;max-width:5.5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-code);font-size:10px;letter-spacing:.02em;color:var(--muted);background:color-mix(in srgb,var(--muted) 14%,transparent);border-radius:3px;padding:1px 5px}.font-pop{position:absolute;z-index:30;top:calc(100% + 4px);left:0;min-width:22em;max-width:34em;max-height:60vh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 16px #0000002e;padding:4px}.font-item{display:flex;align-items:stretch;border-radius:4px}.font-item:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.font-item.is-current{background:color-mix(in srgb,var(--accent) 16%,transparent)}.font-item-main{flex:1;height:auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:5px 8px;border:0;background:transparent;text-align:left;line-height:1.3}.font-item-name{font-weight:600;color:var(--text)}.font-item-meta{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.font-item-forget{height:auto;border:0;background:transparent;padding:0 6px;opacity:0}.font-item:hover .font-item-forget,.font-item-forget:focus-visible{opacity:1}.font-item-open{width:100%;margin-top:4px;border-top:1px solid var(--line);border-radius:0;background:transparent;justify-content:flex-start}.font-item-hint{color:var(--muted);font-size:11px;margin-left:4px}.drop-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#0009;pointer-events:none}.drop-card{display:inline-flex;align-items:center;gap:10px;padding:18px 26px;border:1px dashed var(--accent);border-radius:8px;background:var(--panel);color:var(--text);font-size:15px;box-shadow:0 4px 16px #0003}.drop-card .ms{font-size:24px;color:var(--accent)}.app.is-dragging{outline:2px solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:-2px}.app[data-dim=font]{--dim-h: 220}.app[data-dim=location]{--dim-h: 150}.app[data-dim=glyph]{--dim-h: 285}.app[data-dim=mode]{--dim-h: 185}.app[data-dim=ppem]{--dim-h: 30}.app[data-dim=engine]{--dim-h: 340}.app{--col-a: hsl(var(--dim-h) 78% var(--col-l));--col-b: hsl(var(--dim-h) 30% calc(var(--col-l) - 6%));--dim-strong: hsl(var(--dim-h) 85% var(--dim-l, 66%))}:root[data-theme=light] .app{--dim-strong: hsl(var(--dim-h) 70% 42%)}.app[data-focus=a]{--accent: var(--col-a)}.app[data-focus=b]{--accent: var(--col-b)}.col-btn{height:20px;width:20px;padding:0;justify-content:center;border-radius:50%;border:1px solid var(--line);background:var(--input);color:var(--muted);font-size:11px;font-weight:700;line-height:1;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.col-btn.on{background:var(--col);border-color:var(--col);color:#fff}.col-btn:not(:disabled):hover{border-color:var(--col);color:var(--text)}.col-btn.on:not(:disabled):hover{color:#fff}:root[data-theme=light] .col-btn.on{color:#fff}:root[data-theme=light] .col-btn.on:not(:disabled):hover{color:#fff}.section-a:not(.is-focus),.section-b:not(.is-focus){--col: var(--muted)}.section-a.is-focus{--col: var(--col-a)}.section-b.is-focus{--col: var(--col-b)}.ab-bar{position:absolute;top:-4px;left:50%;transform:translate(-50%);display:inline-flex;gap:6px}.outline-pair{position:relative;padding-top:22px}.composite-mark{position:absolute;top:4px;right:8px;font-size:10px;letter-spacing:.04em;text-transform:none;color:var(--muted);opacity:.7;pointer-events:auto}.app[data-focus=b] .outline-pane.col-a,.app[data-focus=a] .outline-pane.col-b{opacity:.82}.btn-reset{flex-shrink:0;align-self:center;display:inline-flex;align-items:center;justify-content:center;width:var(--control-h);height:var(--control-h);padding:0;cursor:pointer}.btn-reset .ms{font-size:18px}.toolbar-actions{display:inline-flex;align-items:center;flex-shrink:0;gap:6px}.controls{gap:6px 8px;padding:6px 12px}.controls>button,.controls .watch button,.controls .range-tabs button{height:28px;padding:0 9px;gap:5px;font-family:var(--font-ui);font-weight:400;font-size:12px;line-height:1}.controls>button{padding-left:5px;padding-right:11px}.controls>button .ms{font-size:16px}.controls>.watch{display:inline-flex;align-items:center;gap:4px;margin-left:4px;font-size:12px;color:var(--muted)}.controls>.watch input{height:28px;padding:0 10px;font:inherit;font-size:12px;line-height:1;background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:6px}.controls>.watch input.bad{border-color:#d33}.controls>.watch button{width:28px;height:28px;padding:0;justify-content:center}.controls>.watch .watch-status{padding-inline:4px;font-size:11px;white-space:nowrap}.toolbar-main>label{gap:4px}.keys{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;white-space:normal}.key-group{display:inline-flex;align-items:baseline;gap:3px;white-space:nowrap}.key-label{font-size:11px;font-weight:400}.key-note{color:var(--muted)}.keys kbd{min-width:2em;font-size:11px}kbd{display:inline-block;min-width:1.1em;padding:0 .3em;margin:0 .05em;font:10px/1.5 ui-monospace,SF Mono,Menlo,Consolas,monospace;text-align:center;color:var(--text);background:var(--panel);border:1px solid var(--line);border-bottom-width:2px;border-radius:3px;vertical-align:.05em}.tip{position:fixed;z-index:1000;max-width:340px;padding:6px 9px;border-radius:6px;background:color-mix(in srgb,var(--text) 92%,var(--bg));color:var(--bg);font:13px/1.4 var(--font-ui);letter-spacing:.005em;box-shadow:0 6px 18px #00000024;pointer-events:none;opacity:0;transform:translateY(-2px);transition:opacity .12s ease-out,transform .12s ease-out}.tip.on{opacity:1;transform:none}.tip:before{content:"";position:absolute;left:var(--arrow-x, 50%);top:-4px;width:8px;height:8px;margin-left:-4px;background:inherit;transform:rotate(45deg)}.tip.above:before{top:auto;bottom:-4px}.tip kbd{margin-left:8px;color:var(--bg);background:transparent;border-color:color-mix(in srgb,var(--bg) 45%,transparent);font-size:11px}.vtt-source{margin:0;padding:8px 10px;font:12px/1.45 var(--font-code);white-space:pre-wrap;color:var(--text)}.brand-product{cursor:help}.brand-product:focus-visible{outline:1px solid var(--accent, currentColor);outline-offset:2px}.doc-panel{position:fixed;left:5vw;top:5vh;width:90vw;height:90vh;z-index:1100;display:flex;flex-direction:column;overflow:hidden;border-radius:8px;background:color-mix(in srgb,var(--text) 94%,var(--bg));color:var(--bg);font:13px/1.6 var(--font-ui);box-shadow:0 18px 60px #00000052}.doc-panel:focus{outline:none}.doc-close{position:absolute;right:8px;top:4px;z-index:1;width:44px;height:44px;padding:0;border:0;background:none;color:inherit;opacity:.6;font:300 34px/1 ui-sans-serif,system-ui,sans-serif;cursor:pointer}.doc-close:hover,.doc-close:focus-visible{opacity:1}.doc-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:max(4vh,52px) 4vw 4vh}.doc-body{text-align:left;column-count:3;column-gap:4vw;column-rule:1px solid color-mix(in srgb,var(--bg) 25%,transparent)}.doc-body p{margin:0 0 10px;break-inside:avoid}.doc-body h4{margin:6px 0;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.8;break-after:avoid}.doc-body>h4:first-child{margin-top:0}@media(max-width:1100px){.doc-body{column-count:2}}@media(max-width:700px){.doc-body{column-count:1}.doc-scroll{padding:52px 5vw 3vh}}
