.input-socket,.output-socket,.input-socket>span,.output-socket>span,.solenoid-socket-dot{display:block;width:var(--socket-size, 12px);height:var(--socket-size, 12px);box-sizing:border-box;line-height:0}.solenoid-socket-dot{overflow:visible}.input-socket:before{content:"";position:absolute;inset:-2px;border-radius:50%}[data-socket-shape=square] .input-socket:before{border-radius:0}.solenoid-canvas--cabling .input-socket:before,.solenoid-canvas--cabling .output-socket:before{inset:-6px}.solenoid-canvas--cabling [data-socket-shape=square] .input-socket:before,.solenoid-canvas--cabling [data-socket-shape=square] .output-socket:before{border-radius:0}.solenoid-canvas--cabling .solenoid-conduit .input-socket:before,.solenoid-canvas--cabling .solenoid-conduit .output-socket:before{inset:-2px}@media(pointer:coarse){.input-socket:before,.output-socket:before{content:"";position:absolute;inset:-8px;border-radius:50%}[data-socket-shape=square] .input-socket:before,[data-socket-shape=square] .output-socket:before{border-radius:0}.solenoid-conduit .input-socket:before,.solenoid-conduit .output-socket:before{inset:-2px}}html.is-mobile .solenoid-node:not(.solenoid-node--selected) *,html.is-mobile .solenoid-conduit:not(.solenoid-conduit--selected) *,html.is-mobile .solenoid-group:not(.solenoid-group--selected) *,html.is-mobile .solenoid-note:not(.solenoid-note--selected) *{pointer-events:none}html.is-mobile .solenoid-node:not(.solenoid-node--selected),html.is-mobile .solenoid-conduit:not(.solenoid-conduit--selected),html.is-mobile .solenoid-group:not(.solenoid-group--selected),html.is-mobile .solenoid-note:not(.solenoid-note--selected){pointer-events:auto}html.is-mobile .solenoid-node:not(.solenoid-node--selected) .solenoid-node__resize-handle{pointer-events:auto}html.is-mobile .solenoid-canvas--cabling .solenoid-node [data-socket-side],html.is-mobile .solenoid-canvas--cabling .solenoid-node [data-socket-side] *,html.is-mobile .solenoid-canvas--cabling .solenoid-conduit .input-socket,html.is-mobile .solenoid-canvas--cabling .solenoid-conduit .output-socket{pointer-events:auto}[data-socket-side]{z-index:7}.solenoid-socket-dot{cursor:crosshair;overflow:visible;shape-rendering:geometricPrecision}.solenoid-canvas--cabling .solenoid-socket-dot{cursor:cell}.solenoid-socket--lit{isolation:isolate}.solenoid-conduit{--socket-size: 9px;--socket-border-width: 1.5px}.solenoid-dial{display:block;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.solenoid-dial--dragging{cursor:grabbing}.solenoid-dial__face{fill:var(--surface-sunken);stroke:var(--border);stroke-width:1;transition:stroke 80ms ease}.solenoid-dial:hover .solenoid-dial__face{stroke:var(--border-strong)}.solenoid-dial--dragging .solenoid-dial__face{stroke:var(--accent)}.solenoid-dial__tick{stroke:var(--border-strong);stroke-width:1;pointer-events:none}.solenoid-dial__needle{stroke:var(--accent);stroke-width:1.5;stroke-linecap:round;pointer-events:none}.solenoid-dial__hub{fill:var(--accent);pointer-events:none}.solenoid-node{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:180px;min-width:180px;color:var(--text);font-size:12px;box-shadow:var(--shadow-card);transition:border-color 80ms ease,box-shadow 80ms ease;cursor:grab;-webkit-user-select:none;user-select:none}.solenoid-node:active{cursor:grabbing}.solenoid-node--wide{width:240px}.solenoid-node--cast{width:252px;min-width:252px}.solenoid-node.solenoid-node--display-grow{width:max-content;min-width:180px}.solenoid-node.solenoid-node--display-grow-scalar{width:max-content;min-width:180px;max-width:360px}.solenoid-node--sized.solenoid-node--display-grow-scalar{max-width:none}.solenoid-node--display-grow-scalar .solenoid-node__display-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solenoid-node:not(.solenoid-node--selected):hover{border-color:var(--border-strong)}.solenoid-node--selected:after{content:"";position:absolute;inset:0;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent, var(--accent)) 70%,#fff);border-radius:8px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-node--selected:after{border-color:color-mix(in srgb,var(--node-accent, var(--accent)) 80%,#000)}.solenoid-node--selected{box-shadow:0 4px 14px color-mix(in srgb,var(--node-accent, var(--accent)) 28%,transparent)}:root[data-theme=light] .solenoid-node:not(.solenoid-node--selected):not(.solenoid-node--grouped){border-color:var(--node-accent-dark, var(--border-strong))}:root[data-theme=light] .solenoid-node:not(.solenoid-node--selected):not(.solenoid-node--grouped):hover{border-color:color-mix(in srgb,var(--node-accent, var(--border-strong)) 88%,#000)}.solenoid-node__chevron{position:absolute;top:9px;left:5px;z-index:2;width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text));cursor:pointer}.solenoid-node__chevron:hover{filter:brightness(1.3)}.solenoid-node__chevron svg{transition:transform .1s ease;transform:rotate(90deg)}.solenoid-node--collapsed .solenoid-node__chevron svg{transform:rotate(0)}.solenoid-node--grouped{border-width:2px}.solenoid-node--grouped .solenoid-node__header{margin:-2px -2px 0}.solenoid-node--grouped:not(.solenoid-node--selected),.solenoid-node--grouped:not(.solenoid-node--selected):hover{box-shadow:none;border-color:color-mix(in srgb,var(--group-color, var(--text-dim)) 78%,transparent)}:root[data-theme=light] .solenoid-node--grouped:not(.solenoid-node--selected),:root[data-theme=light] .solenoid-node--grouped:not(.solenoid-node--selected):hover{border-color:var(--group-color-dark, var(--border-strong))}.solenoid-node--grouped:before{content:"";position:absolute;inset:0;border-radius:8px;background:color-mix(in srgb,var(--group-color, var(--text-dim)) 78%,var(--surface));clip-path:polygon(100% 100%,100% calc(100% - 15px),calc(100% - 15px) 100%);pointer-events:none;z-index:5}:root[data-theme=light] .solenoid-node--grouped:before{background:var(--group-color-dark, var(--border-strong))}.solenoid-node--collapsed .solenoid-node__body>*:not(.solenoid-node__display-value):not(.solenoid-node__value-input):not(.solenoid-node__quoted):not([data-socket-side]):not(.solenoid-node__input-pill):not(.solenoid-node__io-row--output):not(.solenoid-node__collapsed-only){display:none}.solenoid-node__collapsed-only{display:none}.solenoid-node--collapsed .solenoid-node__collapsed-only{display:flex;align-items:center;justify-content:center}.solenoid-node--collapsed .solenoid-table-display__grid{display:none}.solenoid-node--collapsed .solenoid-table-display__chip{justify-content:center;margin-top:0}.solenoid-node--square-collapse.solenoid-node--collapsed .solenoid-node__header{display:none}.solenoid-node--square-collapse.solenoid-node--collapsed .solenoid-node__chevron{opacity:0;transition:opacity .12s}.solenoid-node--square-collapse.solenoid-node--collapsed:hover .solenoid-node__chevron{opacity:1}.solenoid-node--square-collapse.solenoid-node--collapsed{width:68px;min-width:0}.solenoid-node--square-collapse.solenoid-node--collapsed .solenoid-node__body{padding:3px 8px;min-height:26px;align-items:center;justify-content:center}.solenoid-node--square-collapse.solenoid-node--collapsed .solenoid-node__collapsed-only{pointer-events:none}.solenoid-node__header{position:relative;padding:6px 10px 6px 22px;margin:-1px -1px 0;border:2px solid var(--node-accent, transparent);border-bottom:none;box-shadow:inset 0 -1px 0 var(--border);border-top-left-radius:8px;border-top-right-radius:8px;background:color-mix(in srgb,var(--node-accent, var(--surface)) var(--header-tint),var(--surface))}.solenoid-node--no-chevron .solenoid-node__header{padding-left:10px}:root[data-theme=light] .solenoid-node__header{box-shadow:inset 0 -1px 0 var(--node-accent-dark, var(--border))}.solenoid-node__corner-badge{position:absolute;top:calc(var(--header-h, 28px) + 3px);right:4px;z-index:7;display:flex;flex-direction:column;align-items:center;gap:3px;pointer-events:auto}.solenoid-node__corner-lock{color:var(--text-dim);opacity:.4}.solenoid-node__comment-badge{position:absolute;top:-6px;left:-6px;z-index:7;width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:var(--accent);color:var(--accent-contrast, #fff);border:1.5px solid var(--surface);border-radius:50%;padding:0;cursor:pointer;pointer-events:auto}.solenoid-node__comment-badge--resolved{background:var(--text-muted, #9aa0a6);opacity:.7}.solenoid-node__comment-badge:hover{opacity:1}.solenoid-node__type-hint{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:44px;white-space:normal;line-height:1.25;text-align:right;font-size:7.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 45%,var(--text));opacity:0;pointer-events:none;transition:opacity .2s;-webkit-user-select:none;user-select:none}.solenoid-node:hover .solenoid-node__type-hint{opacity:.65}.solenoid-node__label-input{width:calc(100% - 44px);overflow:hidden;resize:none;background:transparent;border:none;outline:none;box-sizing:border-box;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text));font-family:inherit;font-size:10px;line-height:1.3;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 0;display:block}.solenoid-node__label-input:focus{color:var(--text)}.solenoid-node__label-display{width:fit-content;max-width:calc(100% - 44px);color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text));font-family:inherit;font-size:10px;line-height:1.3;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 0;cursor:text;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.solenoid-node__content{position:relative;--node-socket-x: -6.5px}.solenoid-node__content .solenoid-node__input-pill{left:-7px}.solenoid-node__body{padding:10px;display:flex;flex-direction:column;gap:6px}html.solenoid-semantic-zoom .solenoid-node__body{visibility:hidden}.solenoid-node__semantic{display:none}html.solenoid-semantic-zoom .solenoid-node__semantic{display:flex;position:absolute;inset:0;align-items:center;justify-content:center;padding:8px 12px;pointer-events:none;z-index:3}html.solenoid-semantic-zoom .solenoid-node__semantic span{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-align:center;font-size:28px;font-weight:700;line-height:1.05;letter-spacing:-.01em;color:var(--text);overflow-wrap:anywhere}.solenoid-node__value-input{width:100%;min-width:0;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:4px 8px;color:var(--text-bright);font-family:var(--font-mono);font-size:14px;outline:none;box-sizing:border-box}.solenoid-node__value-input:focus{border-color:var(--accent)}.solenoid-node__display-value{width:100%;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:6px 10px;color:var(--text-bright);font-family:var(--font-mono);font-size:18px;font-weight:500;text-align:right;box-sizing:border-box}.solenoid-node__display-value--empty{color:var(--text-muted);font-weight:400}.solenoid-node__md{line-height:1.35}.solenoid-node__md>:first-child{margin-top:0}.solenoid-node__md>:last-child{margin-bottom:0}.solenoid-node__md h1{font-size:1.6em;font-weight:700;margin:.2em 0;color:var(--text-bright)}.solenoid-node__md h2{font-size:1.35em;font-weight:700;margin:.2em 0;color:var(--text-bright)}.solenoid-node__md h3{font-size:1.15em;font-weight:600;margin:.2em 0}.solenoid-node__md h4,.solenoid-node__md h5,.solenoid-node__md h6{font-size:1em;font-weight:600;margin:.2em 0}.solenoid-node__md p{margin:.3em 0}.solenoid-node__md ul,.solenoid-node__md ol{margin:.3em 0;padding-left:1.4em;text-align:left}.solenoid-node__md li{margin:.1em 0}.solenoid-node__md a{color:var(--accent);text-decoration:none}.solenoid-node__md a:hover{text-decoration:underline}.solenoid-node__md strong{font-weight:700;color:var(--text-bright)}.solenoid-node__md code{font-family:var(--font-mono);font-size:.9em;padding:0 4px;border-radius:3px;background:var(--surface);border:1px solid var(--border)}.solenoid-node__md blockquote{margin:.3em 0;padding:0 8px;border-left:2px solid var(--border-strong);color:var(--text-dim)}.solenoid-node__nan{color:var(--text-dim);background:color-mix(in srgb,var(--text-dim) 10%,var(--surface-sunken));border-radius:3px;padding:0 5px;font-family:var(--font-mono);font-size:11px;font-style:italic}.solenoid-nan-cell{background:color-mix(in srgb,var(--text-dim) 12%,transparent);color:var(--text-dim)!important;font-style:italic}.solenoid-node__error-explain{margin-top:6px;padding:6px 8px;border:1px solid color-mix(in srgb,var(--sol-error) 45%,var(--border));border-radius:4px;background:color-mix(in srgb,var(--sol-error) 7%,var(--surface-sunken));font-size:10.5px;line-height:1.45}.solenoid-node__error-explain-head{display:flex;align-items:baseline;gap:6px;margin-bottom:3px}.solenoid-node__error-explain-code{color:var(--sol-error);font-family:var(--font-mono);font-weight:700;font-size:11px;letter-spacing:.04em}.solenoid-node__error-explain-msg{color:var(--text);font-weight:600}.solenoid-node__error-explain-body{color:var(--text-dim);white-space:normal}.solenoid-node__display-value--error{color:var(--sol-error);border-color:color-mix(in srgb,var(--sol-error) 55%,var(--border));background:color-mix(in srgb,var(--sol-error) 10%,var(--surface-sunken));font-size:14px;font-weight:700;text-align:center;letter-spacing:.04em}.solenoid-node:not(.solenoid-node--resizable) .solenoid-node__display-value{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solenoid-node__resize-handle{position:absolute;right:2px;bottom:2px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:var(--text-dim);opacity:.5;cursor:nwse-resize;z-index:4}.solenoid-node__resize-handle:hover{opacity:.9;color:var(--accent)}@media(pointer:coarse){.solenoid-node__resize-handle{right:0;bottom:0;padding:7px;opacity:.7}}.solenoid-node--sized .solenoid-node__body{height:var(--box-h)}.solenoid-node--sized .solenoid-node__body>:last-child{flex:1 1 auto;min-height:0;overflow:auto}.solenoid-node--sized .solenoid-node__display-value{white-space:pre-wrap;overflow-wrap:anywhere}.solenoid-node--sized .solenoid-node__quoted--value{display:flex;width:100%}.solenoid-node--sized .solenoid-node__quoted--value .solenoid-node__quoted-field{flex:1 1 auto}.solenoid-node--sized .solenoid-node__quoted--value .solenoid-node__quoted-input{width:100%;height:100%}.solenoid-node--collapsed .solenoid-node__resize-handle{display:none}.solenoid-node__io-row{height:22px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px;color:var(--text-dim);font-size:12px;font-weight:500}.solenoid-node__io-label{flex:0 0 auto}.solenoid-node__io-row--hero{display:block;height:auto;min-height:0;padding:0}.solenoid-composite__output{margin-top:8px}.solenoid-composite__output>.solenoid-node__io-label{display:block;margin-bottom:3px}.solenoid-composite__output>.solenoid-node__io-row{height:auto;padding:0}.solenoid-node__inline-input{flex:1 1 auto;min-width:0;width:100%;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:1px 6px;color:var(--text-bright);font-family:var(--font-mono);font-size:12px;text-align:right;outline:none;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:textfield;appearance:textfield}.solenoid-node__inline-input::-webkit-outer-spin-button,.solenoid-node__inline-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.solenoid-node__inline-input:focus{border-color:var(--accent)}body.solenoid-scrubbing,body.solenoid-scrubbing *{cursor:ns-resize!important}.solenoid-node__inline-input--text,.solenoid-node__value-input--text{font-family:var(--font-sans);text-align:left}.solenoid-node__quoted{position:relative;display:inline-flex;align-items:baseline;gap:2px;max-width:100%;font-size:12px}.solenoid-node__quoted--value{font-size:14px}.solenoid-node__quoted-field{position:relative;display:inline-flex;min-width:0;max-width:100%}.solenoid-node__quote{flex:0 0 auto;color:var(--text-dim);font-family:var(--font-sans)}.solenoid-node__quoted-input{min-width:0;max-width:100%;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:1px 6px;color:var(--text-bright);font-family:var(--font-sans);font-size:inherit;text-align:left;outline:none;box-sizing:content-box}.solenoid-node__quoted-input:focus{border-color:var(--accent)}.solenoid-node__quoted--multiline,.solenoid-node__quoted--multiline .solenoid-node__quoted-field{display:block;width:100%}.solenoid-node__quoted-textarea{display:block;width:100%;box-sizing:border-box;resize:none;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.4;padding:4px 6px}.solenoid-node__quoted--inline,.solenoid-node__quoted--inline .solenoid-node__quoted-field{flex:1 1 auto;min-width:0}.solenoid-node__quoted--inline .solenoid-node__quoted-input{flex:1 1 auto;width:100%;min-width:0;box-sizing:border-box}.solenoid-node__text-ws{color:var(--text-muted)}.solenoid-node__text-empty{color:var(--text-muted);font-style:italic}.solenoid-node__input-pill{position:absolute;left:-6px;top:calc(var(--out-socket-top, 46px) - 14px);width:12px;height:28px;overflow:visible;z-index:1;pointer-events:none}.solenoid-node__output-pill{position:absolute;right:-6px;width:12px;height:28px;overflow:visible;z-index:1;pointer-events:none}.solenoid-node__pill-socket .solenoid-socket-dot{opacity:0}.solenoid-node__pill-socket .solenoid-socket-lit{display:none}.solenoid-node__row-remove{flex:0 0 auto;width:16px;height:16px;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--text-muted);font-size:15px;line-height:1;cursor:pointer}.solenoid-node__row-remove:hover{color:#e06c75}.solenoid-node__add-input{width:100%;background:var(--surface-sunken);border:1px dashed var(--border-strong);border-radius:4px;padding:3px 0;color:var(--text-dim);font-family:inherit;font-size:11px;font-weight:600;cursor:pointer;box-sizing:border-box;transition:border-color 80ms ease,color 80ms ease}.solenoid-node__add-input:hover{border-color:var(--accent);color:var(--text)}.solenoid-node__pair-group{box-shadow:inset 0 -1px 0 var(--border);margin-bottom:3px}.solenoid-node__pair-group:last-of-type{box-shadow:none;margin-bottom:0}.solenoid-node__section-divider{height:1px;background:var(--border);margin:4px 0}.solenoid-node__output-value{flex:1 1 auto;text-align:right;font-family:var(--font-mono);font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:2px}.solenoid-node__io-wired{flex:0 1 auto;min-width:0;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:10px;font-style:italic}.solenoid-node__recalc-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:4px 8px;color:var(--text-dim);font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.04em;cursor:pointer;box-sizing:border-box;transition:border-color 80ms ease,color 80ms ease,background 80ms ease}.solenoid-node__recalc-btn:hover{border-color:var(--accent);color:var(--text);background:var(--surface)}.solenoid-node__recalc-btn:active{background:var(--surface-raised)}.solenoid-node__op-select{width:100%;background-color:var(--surface-sunken);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'><path d='M1 1l4 4 4-4' fill='none' stroke='%239aa0a6' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 8px center;background-size:10px 6px;border:1px solid var(--border);color:var(--text-bright);font-family:inherit;font-size:13px;padding:4px 24px 4px 8px;border-radius:4px;outline:none;cursor:pointer;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.solenoid-node__op-select:focus{border-color:var(--accent)}.solenoid-node__field-row{display:flex;align-items:center;gap:6px;margin-top:4px}.solenoid-node__field-row .solenoid-node__op-select{flex:1 1 auto;min-width:0}.solenoid-node__field-label{flex:0 0 auto;font-size:12px;color:var(--text-muted, #9aa0a6);white-space:nowrap}.solenoid-node__pivot-config{width:100%;margin-top:4px;padding:5px 8px;font-size:12px;font-family:inherit;background:var(--surface-sunken);color:var(--text-bright);border:1px solid var(--border);border-radius:4px;cursor:pointer}.solenoid-node__pivot-config:hover{border-color:var(--accent)}.solenoid-node__pivot-summary{margin-top:4px;font-size:11px;line-height:1.35;color:var(--text-muted, #9aa0a6);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.solenoid-node__dm-weights{margin-top:6px;display:flex;flex-direction:column;gap:3px}.solenoid-node__dm-weight-row{display:flex;align-items:center;gap:8px}.solenoid-node__dm-col-crit{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solenoid-node__dm-col-weight{flex:0 0 46px;text-align:right}.solenoid-node__dm-col-norm{flex:0 0 62px}.solenoid-node__dm-weight-row .solenoid-node__inline-input{flex:0 0 46px;width:46px;text-align:right}.solenoid-node__dm-weight-row .solenoid-node__op-select{flex:0 0 62px;width:62px;font-size:12px;padding:3px 22px 3px 6px}.solenoid-node__dm-weights-head{margin-top:2px}.solenoid-node__dm-weights-head span{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted, #9aa0a6)}.solenoid-node__dm-caption{margin-top:4px;font-size:10px;line-height:1.3;color:var(--text-muted, #9aa0a6)}.solenoid-node__dm-hint{font-size:11px;line-height:1.35;color:var(--text-muted, #9aa0a6);font-style:italic}.solenoid-node__op-select option{background-color:var(--surface);color:var(--text-bright);padding:4px 8px}.solenoid-node__op-select option:hover,.solenoid-node__op-select option:focus,.solenoid-node__op-select option:checked{background-color:var(--border-subtle);color:var(--text)}@keyframes solenoid-flash-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--sol-error) 0%,transparent)}15%,55%{box-shadow:0 0 8px 2px color-mix(in srgb,var(--sol-error) 55%,transparent)}}.solenoid-node-flash{border-radius:8px;animation:solenoid-flash-pulse 1s ease-in-out}.solenoid-mermaid-source{width:100%;min-height:64px;resize:vertical;box-sizing:border-box;padding:5px 7px;font-family:var(--font-mono, ui-monospace, monospace);font-size:11px;line-height:1.45;color:var(--text-bright);background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;white-space:pre;overflow:auto}.solenoid-mermaid-template{width:100%;margin-bottom:6px}.solenoid-mermaid-source--wired{min-height:0;height:auto;color:var(--text-muted);font-style:italic;cursor:default}.solenoid-mermaid{display:flex;justify-content:center;overflow:auto;user-select:none;-webkit-user-select:none}.solenoid-mermaid svg{max-width:100%;height:auto}.solenoid-node--sized .solenoid-mermaid{overflow:hidden}.solenoid-node--sized .solenoid-mermaid svg{max-width:none!important;max-height:none!important;width:100%;height:100%}.solenoid-mermaid--card{margin-top:2px}.solenoid-mermaid--error{color:var(--sol-error);font-size:11px;font-weight:500;justify-content:flex-start}.solenoid-conduit{position:relative;box-sizing:border-box;overflow:visible}.solenoid-conduit__svg{position:absolute;inset:0;display:block;overflow:visible;pointer-events:none}.solenoid-conduit__block,.solenoid-conduit__block-border{transition:fill 80ms ease}.solenoid-conduit__block{fill:#464b54}.solenoid-conduit__block-border{fill:#8a909c}.solenoid-conduit__stripe{fill:#e0473a}.solenoid-conduit:not(.solenoid-conduit--selected):hover .solenoid-conduit__block{fill:#515761}.solenoid-conduit:not(.solenoid-conduit--selected):hover .solenoid-conduit__block-border{fill:#9aa1ad}.solenoid-conduit--selected .solenoid-conduit__block-border{fill:var(--accent)}.solenoid-conduit--selected .solenoid-conduit__svg{filter:drop-shadow(0 0 6px var(--accent-mid))}.solenoid-conduit__lane{position:absolute}.solenoid-conduit__lane--phantom{opacity:.35}.solenoid-conduit .solenoid-socket-dot{display:none}.solenoid-conduit .input-socket,.solenoid-conduit .output-socket{background:#2e323a;border:1px solid #565b65;border-radius:2px;box-sizing:border-box;cursor:crosshair}.solenoid-conduit .input-socket:hover,.solenoid-conduit .output-socket:hover{background:#3b414b;border-color:var(--accent)}:root[data-theme=light] .solenoid-conduit__block{fill:#c5cad3}:root[data-theme=light] .solenoid-conduit__block-border{fill:#969db0}:root[data-theme=light] .solenoid-conduit:not(.solenoid-conduit--selected):hover .solenoid-conduit__block{fill:#b5bbc7}:root[data-theme=light] .solenoid-conduit:not(.solenoid-conduit--selected):hover .solenoid-conduit__block-border{fill:#828a9c}:root[data-theme=light] .solenoid-conduit .input-socket,:root[data-theme=light] .solenoid-conduit .output-socket{background:#6a717c;border-color:#4d535c}:root[data-theme=light] .solenoid-conduit .input-socket:hover,:root[data-theme=light] .solenoid-conduit .output-socket:hover{background:#5a616b;border-color:var(--accent)}.solenoid-conduit-toolbar{position:absolute;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:6px;font-family:inherit;font-size:11px;color:var(--text);-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-pop);box-sizing:border-box}.solenoid-conduit-toolbar--docked{position:fixed;left:14px;bottom:34px;transform:none;z-index:60;transition:left .12s ease}html:not(.is-mobile) body.solenoid-nav-open .solenoid-conduit-toolbar--docked{left:272px}.solenoid-conduit-toolbar__section{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--text-dim);padding-top:2px}.solenoid-conduit-toolbar__row{display:flex;align-items:center;justify-content:center}.solenoid-conduit-toolbar__header{--conduit-accent: color-mix(in srgb, #e0473a 72%, var(--panel-bg));align-self:stretch;display:flex;align-items:center;justify-content:center;gap:5px;margin:-7px -7px 2px;padding:5px 10px;border:2px solid var(--conduit-accent);border-bottom:none;box-shadow:inset 0 -1px 0 var(--border);border-top-left-radius:5px;border-top-right-radius:5px}.solenoid-conduit-toolbar__header-name{font-size:10px;line-height:1.3;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--conduit-accent) 55%,var(--text))}.solenoid-conduit-toolbar__seq{width:44px;padding:0 2px;font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.08em;color:color-mix(in srgb,var(--conduit-accent) 55%,var(--text));background:transparent;border:none;outline:none;text-align:left}.solenoid-conduit-toolbar__seq:focus{color:var(--text)}.solenoid-conduit-toolbar__seq::-webkit-outer-spin-button,.solenoid-conduit-toolbar__seq::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.solenoid-conduit-toolbar__seq{-moz-appearance:textfield;appearance:textfield}.solenoid-conduit-toolbar__extend{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;color:var(--text);font-size:11px;font-weight:600;cursor:pointer;white-space:nowrap}.solenoid-conduit-toolbar__extend:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.solenoid-legend{position:absolute;bottom:148px;right:16px;width:147px;box-sizing:border-box;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;padding:10px 12px;z-index:100;pointer-events:all;box-shadow:var(--overlay-shadow)}html.minimap-top .solenoid-legend,html.minimap-hidden .solenoid-legend{bottom:30px}.solenoid-legend:not(.solenoid-legend--collapsed){transform:scale(.85);transform-origin:bottom right}.solenoid-legend--collapsed{width:auto;min-width:0;padding:0;background:none;border:none;box-shadow:none}.solenoid-legend__toggle{position:absolute;top:6px;right:8px;background:none;border:none;color:var(--text-muted);font-size:14px;cursor:pointer;line-height:1;padding:0 2px}.solenoid-legend__toggle:hover{color:var(--text)}.solenoid-legend--collapsed .solenoid-legend__toggle{position:static;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:var(--btn-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:50%;color:var(--text);box-shadow:var(--overlay-shadow)}.solenoid-legend--collapsed .solenoid-legend__toggle:hover{background:var(--btn-hover);border-color:var(--accent);color:var(--accent)}.solenoid-legend__heading{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px;padding-right:16px}.solenoid-legend__row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.solenoid-legend__row:last-child{margin-bottom:0}.solenoid-legend__dots{display:flex;align-items:center;justify-content:flex-end;gap:4px;width:50px;flex-shrink:0}.solenoid-legend__type{flex:1;white-space:nowrap;font-size:12px;font-weight:600;color:var(--text)}.solenoid-legend__desc{font-size:11px;color:var(--text-dim)}html.is-mobile .solenoid-legend{display:none}.solenoid-dimflow{max-width:440px;margin-top:22px;padding-top:18px;border-top:1px solid var(--border)}.solenoid-dimflow__heading{font-size:13px;font-weight:600;color:var(--text);margin-bottom:13px}.solenoid-dimflow__ladder{display:flex;align-items:stretch;gap:7px;margin-bottom:16px}.solenoid-dimflow__step{display:flex;align-items:center;gap:8px;flex:1 1 0;min-width:0;padding:8px 9px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-sunken)}.solenoid-dimflow__step-text{display:flex;flex-direction:column;line-height:1.25;min-width:0}.solenoid-dimflow__dim{font-size:9.5px;font-weight:700;letter-spacing:.05em;color:var(--accent)}.solenoid-dimflow__name{font-size:12px;color:var(--text)}.solenoid-dimflow__sub{font-size:10px;color:var(--text-dim)}.solenoid-dimflow__arrow{align-self:center;flex:0 0 auto;font-size:15px;color:var(--text-muted)}.solenoid-dimflow__rule{margin:0 0 11px;font-size:12.5px;line-height:1.5;color:var(--text-dim)}.solenoid-dimflow__badge{display:inline-block;font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;margin-right:6px;white-space:nowrap}.solenoid-dimflow__badge--ok{color:#2fae7a;background:color-mix(in srgb,#2fae7a 17%,transparent)}.solenoid-dimflow__badge--no{color:#e0705e;background:color-mix(in srgb,#e0705e 17%,transparent)}.solenoid-dimflow__note{margin:2px 0 0;font-size:11.5px;line-height:1.5;color:var(--text-muted)}.solenoid-dimflow em{font-style:normal;color:var(--text)}.solenoid-confirm__overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#00000080;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.solenoid-confirm__dialog{min-width:280px;max-width:420px;background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 40px #00000080;padding:18px 18px 14px;color:var(--text);font-size:13px}.solenoid-confirm__message{line-height:1.45;margin-bottom:16px}.solenoid-confirm__buttons{display:flex;justify-content:flex-end;gap:8px}.solenoid-confirm__btn{background:var(--border-subtle);border:1px solid var(--border-strong);border-radius:6px;padding:6px 14px;color:var(--text);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:background 80ms ease,border-color 80ms ease}.solenoid-confirm__btn:hover{background:var(--border-strong);border-color:var(--border-strong)}.solenoid-confirm__btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.solenoid-confirm__btn--primary:hover{filter:brightness(1.1)}.solenoid-notices{position:fixed;bottom:calc(31px + env(safe-area-inset-bottom));right:16px;z-index:1100;display:flex;flex-direction:column;gap:8px;max-width:min(380px,calc(100vw - 32px));pointer-events:none}.solenoid-notice{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:10px 10px 10px 12px;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 8px 28px #00000073;color:var(--text);font-size:12.5px;line-height:1.4;cursor:pointer;animation:solenoid-notice-in .14s ease-out}@keyframes solenoid-notice-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.solenoid-notice--warn{border-color:#c07820}.solenoid-notice--error{border-color:#c04040}.solenoid-notice__msg{flex:1}.solenoid-notice__close{flex:none;background:none;border:none;color:var(--text-muted, var(--text));font-size:16px;line-height:1;padding:0 2px;cursor:pointer;opacity:.6}.solenoid-notice__close:hover{opacity:1}html.is-mobile .solenoid-notices{bottom:calc(96px + env(safe-area-inset-bottom))}:root{--sol-error: #e0473a}.sol-error-chip{color:var(--sol-error);font-family:var(--font-mono);font-weight:700;font-size:11.5px;letter-spacing:.04em;white-space:nowrap}.sol-error-chip--clickable{cursor:pointer}.solenoid-array-chip{--chip-accent: var(--node-accent, var(--accent));flex:0 0 auto;font-family:var(--font-mono);font-size:.85em;color:var(--chip-accent);background:color-mix(in srgb,var(--chip-accent) 12%,transparent);border:1px solid color-mix(in srgb,var(--chip-accent) 40%,transparent);border-radius:5px;padding:1px 7px;cursor:pointer;white-space:nowrap}.solenoid-array-chip:hover{background:color-mix(in srgb,var(--chip-accent) 22%,transparent)}.solenoid-array-chip--array{--chip-accent: var(--sock-number)}.solenoid-array-chip--frame{--chip-accent: var(--sock-frame)}.solenoid-array-chip--cube{--chip-accent: var(--sock-cube)}.solenoid-array-chip--chart{--chip-accent: var(--sock-chart)}.solenoid-array-chip--sm{font-size:10px;padding:0 5px;border-radius:4px}.solenoid-node--angle-dial{width:116px}.angle-dial-node{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 0 6px}.angle-dial-node__dial-row{display:flex;align-items:center;justify-content:center}.angle-dial-node__input-row{display:flex;align-items:center;gap:6px}.angle-dial-node__input{width:54px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;color:var(--text-bright);font-size:14px;font-family:var(--font-mono);padding:4px 8px;text-align:right;outline:none;box-sizing:border-box}.angle-dial-node__input:focus{border-color:var(--accent)}.angle-dial-node__unit{font-size:11px;color:var(--text-muted)}.slicer-node{display:flex;flex-direction:column;gap:0}.slicer-node__summary{font-size:12px;color:var(--text-dim);font-variant-numeric:tabular-nums;padding:2px 0}.solenoid-node.solenoid-node--slicer-w2{width:320px}.solenoid-node.solenoid-node--slicer-w3{width:400px}.slicer-node__toolbar{display:flex;align-items:center;gap:6px;padding:4px 10px}.slicer-node__toolbar .solenoid-node__op-select{flex:1 1 auto;min-width:0}.slicer-node__subbar{display:flex;justify-content:flex-end;padding:0 10px 2px}.slicer-node__count{font-size:10px;color:var(--text-muted)}.slicer-node__multiselect{flex:0 0 auto;background:none;border:1px solid var(--border-strong);border-radius:3px;color:var(--text-muted);font-size:10px;padding:1px 5px;cursor:pointer;line-height:1.4;transition:border-color .1s,color .1s}.slicer-node__multiselect:hover{border-color:var(--text-muted);color:var(--text-dim)}.slicer-node__multiselect--on{border-color:var(--node-accent, var(--accent));color:var(--node-accent, var(--accent))}.slicer-node__values{display:flex;flex-wrap:wrap;gap:4px;padding:6px 8px;border-top:1px solid var(--border-subtle);max-height:220px;overflow-y:auto;overflow-x:hidden}.slicer-node__empty{color:var(--border-strong);font-size:11px;font-style:italic;padding:4px 2px}.slicer-node__pill{flex:0 1 auto;max-width:100%;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:3px;color:var(--text-dim);font-size:11.5px;font-family:var(--font-mono);padding:3px 8px;cursor:pointer;transition:background .08s,color .08s,border-color .08s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slicer-node__pill:hover{background:var(--surface-raised);color:var(--text-dim);border-color:var(--border-strong)}.slicer-node__pill--selected{background:color-mix(in srgb,var(--node-accent, var(--accent)) 22%,var(--surface));border-color:var(--node-accent, var(--accent));color:color-mix(in srgb,var(--node-accent, var(--accent)) 70%,var(--text))}.slicer-node__pill--selected:hover{background:color-mix(in srgb,var(--node-accent, var(--accent)) 30%,var(--surface))}.solenoid-seg{display:flex;width:100%}.solenoid-seg--inline{width:auto;flex:1 1 auto}.solenoid-segbtn{flex:1 1 auto;height:22px;padding:0 4px;font-family:inherit;font-size:10px;line-height:1;background:var(--border-subtle);border:1px solid var(--border-strong);color:var(--text-dim);cursor:pointer;white-space:nowrap}.solenoid-segbtn:first-child{border-radius:3px 0 0 3px}.solenoid-segbtn:last-child{border-radius:0 3px 3px 0;border-left:none}.solenoid-segbtn--on{background:color-mix(in srgb,var(--node-accent, var(--accent)) 30%,var(--border-subtle));border-color:var(--node-accent, var(--accent));color:var(--text)}.solenoid-colorpicker__slider{-webkit-appearance:none;appearance:none;width:100%;height:13px;margin:0;border-radius:7px;border:1px solid var(--border-strong);outline:none;cursor:pointer}.solenoid-colorpicker__slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:15px;height:15px;border-radius:50%;background:#fff;border:2px solid #2a2a2a;box-shadow:0 1px 2px #00000073;cursor:grab}.solenoid-colorpicker__slider:active::-webkit-slider-thumb{cursor:grabbing}.solenoid-colorpicker__slider::-moz-range-track{height:13px;border-radius:7px;background:transparent}.solenoid-colorpicker__slider::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:#fff;border:2px solid #2a2a2a;box-shadow:0 1px 2px #00000073;cursor:grab}.solenoid-colorpicker__hex{width:100%;box-sizing:border-box;padding:6px 8px;font-family:var(--mono-font, ui-monospace, monospace);font-size:13px;text-align:center;background:var(--surface-sunken);color:var(--text);border:1px solid var(--border);border-radius:4px;outline:none}.solenoid-colorpicker__hex:focus{border-color:var(--accent)}.solenoid-setop__notation{text-align:center;padding:4px 0 2px;color:var(--text);-webkit-user-select:none;user-select:none}.solenoid-setop__notation .katex{font-size:1.15em}.solenoid-expr__formula{position:relative;display:flex;align-items:center;gap:4px;padding:4px 8px;min-height:var(--box-h, auto)}.solenoid-expr__field{position:relative;flex:1 1 auto;width:0;display:flex}.solenoid-expr__prefix{font-size:12px;font-weight:600;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 80%,var(--text));flex-shrink:0;line-height:1;-webkit-user-select:none;user-select:none}.solenoid-expr__textarea{flex:1;width:0;min-height:54px;max-height:96px;padding:1px 5px;font-family:Consolas,Monaco,Courier New,monospace;font-size:11px;line-height:18px;background:var(--border-subtle);border:1px solid var(--border-strong);border-radius:3px;color:var(--text);resize:none;overflow-y:hidden;box-sizing:border-box}.solenoid-expr__textarea:focus{outline:none;border-color:var(--node-accent, var(--accent))}.solenoid-expr__textarea::placeholder{color:var(--border-strong);font-style:italic}.solenoid-expr__rendered{flex:1;width:0;height:var(--box-h, 54px);display:flex;align-items:center;overflow-x:auto;padding:2px 6px;background:var(--border-subtle);border:1px solid var(--border-strong);border-radius:3px;color:var(--text);cursor:text}.solenoid-expr__rendered .katex{font-size:1.05em}.solenoid-expr__raw{font-family:Consolas,Monaco,Courier New,monospace;font-size:11px}.solenoid-expr__placeholder{color:var(--border-strong);font-style:italic;font-size:11px}.solenoid-expr__expand{position:absolute;top:3px;right:3px;display:flex;padding:1px;border:none;background:color-mix(in srgb,var(--border-subtle) 80%,transparent);border-radius:3px;color:var(--text-dim);opacity:.5;cursor:pointer;transition:opacity 80ms ease,color 80ms ease}.solenoid-expr__expand:hover{opacity:1;color:color-mix(in srgb,var(--node-accent, var(--accent)) 60%,var(--text))}.solenoid-expr__error{padding:1px 8px 3px;font-size:10px;color:#e06c2e}.solenoid-lambda__hint{padding:0 8px 3px;font-size:10px;color:var(--text-muted)}.solenoid-expr__override{display:flex;align-items:baseline;gap:6px;margin:4px 8px;padding:6px 8px;background:var(--border-subtle);border:1px dashed var(--border-strong);border-radius:3px}.solenoid-expr__override-sig{flex:0 0 auto;font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;color:var(--text)}.solenoid-expr__override-src{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:italic;color:var(--text-muted)}.solenoid-expr__wired-note{padding:0 8px 3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:italic;color:var(--text-muted)}.sol-kpi{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;min-height:60px}.sol-kpi__value{font-size:30px;font-weight:650;line-height:1.05;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.sol-kpi__unit{font-size:15px;font-weight:550;color:var(--text-dim);margin-left:2px}.sol-kpi__delta{font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;display:inline-flex;align-items:baseline;gap:3px}.sol-kpi__arrow{font-size:10px}.sol-bullet{display:flex;flex-direction:column;gap:4px;padding:8px 2px 4px}.sol-bullet__row{display:flex;align-items:center;gap:8px}.sol-bullet__track{position:relative;flex:1;height:14px;border-radius:3px;background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);overflow:hidden}.sol-bullet__value{position:absolute;top:0;left:0;height:100%;border-radius:3px 0 0 3px}.sol-bullet__target{position:absolute;top:-2px;height:18px;width:2px;background:var(--text);transform:translate(-1px)}.sol-bullet__num{font-size:13px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;min-width:34px;text-align:right}.sol-bullet__scale{display:flex;justify-content:space-between;font-size:9.5px;color:var(--text-dim);font-variant-numeric:tabular-nums}.sol-bullet__tgt-label{color:var(--text-muted, var(--text-dim))}.sol-conn{display:flex;flex-direction:column;gap:6px;padding:6px 8px 4px}.sol-conn__url{box-sizing:border-box;width:100%;padding:4px 7px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;color:var(--text-bright);font-family:var(--font-mono);font-size:11px;outline:none}.sol-conn__url:focus{border-color:var(--node-accent, var(--accent));box-shadow:inset 0 0 0 1px var(--node-accent, var(--accent))}.sol-conn__select{box-sizing:border-box;width:100%;padding:4px 7px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;color:var(--text-bright);font-size:11px;outline:none;cursor:pointer}.sol-conn__select:focus{border-color:var(--node-accent, var(--accent));box-shadow:inset 0 0 0 1px var(--node-accent, var(--accent))}.sol-conn__dates{display:flex;align-items:center;gap:5px}.sol-conn__date{box-sizing:border-box;flex:1;min-width:0;padding:4px 6px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;color:var(--text-bright);font-size:11px;font-family:var(--font-mono);outline:none}.sol-conn__date:focus{border-color:var(--node-accent, var(--accent));box-shadow:inset 0 0 0 1px var(--node-accent, var(--accent))}.sol-conn__date-sep{color:var(--text-muted);font-size:11px;flex:0 0 auto}.sol-conn__field{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim)}.sol-conn__num{width:60px;box-sizing:border-box;padding:4px 7px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;color:var(--text-bright);font-family:var(--font-mono);font-size:11px;outline:none}.sol-conn__num:focus{border-color:var(--node-accent, var(--accent));box-shadow:inset 0 0 0 1px var(--node-accent, var(--accent))}.sol-conn__preview{display:flex;flex-direction:column;gap:1px;padding:4px 6px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;font-family:var(--font-mono);font-size:10.5px;color:var(--text)}.sol-conn__preview-row{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sol-conn__preview-more{color:var(--text-muted)}.sol-conn__note{font-size:11px;line-height:1.4;color:var(--text-dim)}.sol-conn__status{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim)}.sol-conn__dot{flex-shrink:0;width:7px;height:7px;border-radius:50%;background:var(--text-dim)}.sol-conn__dot--ok{background:#2fae7a}.sol-conn__dot--error{background:#e0566b}.sol-conn__dot--loading{background:#d9a93b;animation:sol-conn-pulse 1s ease-in-out infinite}@keyframes sol-conn-pulse{0%,to{opacity:.35}50%{opacity:1}}.sol-conn__status-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sol-conn__refresh{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface);color:var(--text);font-family:inherit;font-size:12px;line-height:1;cursor:pointer}.sol-conn__refresh:hover:not(:disabled){border-color:var(--node-accent, var(--accent))}.sol-conn__refresh:disabled{opacity:.4;cursor:default}.sol-write__row{display:flex;align-items:center;justify-content:space-between;gap:8px}.sol-write__armed{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-dim)}.sol-write__armed input{width:13px;height:13px}.sol-write__run{flex-shrink:0;padding:3px 10px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface);color:var(--text);font-size:11px;font-weight:600;cursor:pointer}.sol-write__run:hover:not(:disabled){border-color:var(--node-accent, var(--accent))}.sol-write__run:disabled{opacity:.4;cursor:default}.sol-conn__status-text--error{color:#e0566b}.sol-switch__opt{flex:0 0 auto;width:20px;height:18px;padding:0;font-family:var(--font-mono);font-size:11px;line-height:1;background:var(--surface-sunken);border:1px solid var(--border-strong);border-radius:4px;color:var(--text-dim);cursor:pointer}.sol-switch__opt:hover{border-color:var(--node-accent, var(--accent))}.sol-switch__opt--on{background:color-mix(in srgb,var(--node-accent, var(--accent)) 30%,var(--border-subtle));border-color:var(--node-accent, var(--accent));color:var(--text-bright);font-weight:700}.sol-switch__state{color:var(--text-muted);font-size:11px}.sol-switch__title{flex:1 1 auto;min-width:0;height:18px;padding:0 5px;font-family:inherit;font-size:11px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:4px;color:var(--text)}.sol-switch__title::placeholder{color:var(--text-muted)}.sol-switch__title:focus{outline:none;border-color:var(--node-accent, var(--accent))}.sol-switch__check{flex:0 0 auto;width:15px;height:15px;margin:0 3px 0 1px;accent-color:var(--node-accent, var(--accent));cursor:pointer}.sol-switch__mode{display:flex;margin:6px 0 0}.sol-switch__mode .solenoid-segbtn{flex:1}.sol-switch__controls{display:flex;gap:6px;align-items:center;margin:4px 0 2px}.sol-switch__cycle{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;font-family:inherit;font-size:11px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:6px;color:var(--text);cursor:pointer}.sol-switch__cycle:hover{border-color:var(--node-accent, var(--accent));color:var(--accent)}.solenoid-swatchgrid{display:grid;grid-template-columns:repeat(6,16px);justify-items:center;align-items:center;gap:6px;padding:7px;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;box-shadow:var(--shadow-pop)}.solenoid-swatchgrid__opt{appearance:none;-webkit-appearance:none;display:block;width:16px;height:16px;margin:0;padding:0;border:none;background:none;cursor:pointer}.solenoid-swatchgrid__opt:hover{transform:scale(1.12)}.solenoid-swatchgrid--readonly .solenoid-swatchgrid__opt{cursor:default}.solenoid-swatchgrid--readonly .solenoid-swatchgrid__opt:hover{transform:none}.sol-md{max-width:760px;margin:0 auto;color:var(--text);font-size:13.5px;line-height:1.6}.sol-md h1{font-size:22px;font-weight:700;margin:4px 0 14px;color:var(--text-bright)}.sol-md h2{font-size:16px;font-weight:600;margin:26px 0 8px;padding-bottom:5px;color:var(--text-bright);border-bottom:1px solid var(--border)}.sol-md h3{font-size:14px;font-weight:600;margin:18px 0 6px;color:var(--text)}.sol-md p{margin:8px 0}.sol-md ul,.sol-md ol{margin:8px 0;padding-left:22px}.sol-md li{margin:3px 0}.sol-md li>ul,.sol-md li>ol{margin:3px 0}.sol-md a{color:var(--accent);text-decoration:none}.sol-md a:hover{text-decoration:underline}.sol-md strong{color:var(--text-bright);font-weight:600}.sol-md code{font-family:var(--font-mono);font-size:12px;padding:1px 5px;border-radius:4px;background:var(--surface-sunken);border:1px solid var(--border);color:var(--text-bright)}.sol-md pre{margin:10px 0;padding:10px 12px;overflow:auto;background:var(--surface-sunken);border:1px solid var(--border);border-radius:6px}.sol-md pre code{padding:0;border:none;background:none}.sol-md blockquote{margin:10px 0;padding:2px 12px;border-left:3px solid var(--border-strong);color:var(--text-dim)}.sol-md hr{border:none;border-top:1px solid var(--border);margin:20px 0}.sol-md kbd{font-family:var(--font-mono);font-size:11px;padding:1px 5px;border-radius:4px;background:var(--surface-sunken);border:1px solid var(--border-strong)}.sol-md table{border-collapse:collapse;margin:10px 0}.sol-md th,.sol-md td{border:1px solid var(--border);padding:4px 9px;text-align:left}.sol-md th{background:var(--surface-sunken);font-weight:600}.solenoid-ref-inline{font-family:var(--font-mono, ui-monospace, monospace);font-weight:600;color:var(--text-bright)}.solenoid-ref-inline--error{color:var(--sol-error)}.solenoid-ref-inline--empty{color:var(--text-muted);font-weight:500}.solenoid-ref-figure{display:block;margin:12px 0}.solenoid-ref-figure__title{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:4px}.solenoid-ref-formula{display:block;margin:12px 0;overflow-x:auto}.solenoid-ref-embed{display:block;margin:12px 0}.solenoid-ref-embed__bar{display:flex;align-items:center;gap:6px;width:100%;padding:3px 6px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:5px;color:var(--text-dim);font-size:12px;font-weight:600;cursor:pointer;text-align:left}.solenoid-ref-embed__bar:hover{color:var(--text-bright);border-color:var(--border-strong)}.solenoid-ref-embed__chev{display:inline-block;font-size:10px;color:var(--text-muted);transition:transform .12s ease;flex-shrink:0}.solenoid-ref-embed__chev--open{transform:rotate(90deg)}.solenoid-ref-embed__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solenoid-ref-embed__body{display:block;margin-top:6px}.solenoid-ref-chartbody{display:block}.solenoid-note{position:relative;--node-accent: var(--note-color);--node-socket-x: -7.5px;box-sizing:border-box;display:flex;flex-direction:column;background:var(--note-bg);border:2px solid var(--note-color);border-radius:11px;box-shadow:var(--shadow-card);cursor:grab}.solenoid-note *{box-sizing:border-box}.solenoid-note__bar{position:relative;display:flex;align-items:center;height:26px;padding:0 8px 0 23px;background:color-mix(in srgb,var(--note-color) var(--header-tint),var(--surface));border-radius:9px 9px 0 0;box-shadow:inset 0 -1px 0 var(--note-color)}.solenoid-note--collapsed:not(.solenoid-note--has-fields) .solenoid-note__bar{border-radius:9px;box-shadow:none}.solenoid-note--collapsed .solenoid-note__fields{box-shadow:none;border-radius:0 0 9px 9px}.solenoid-note__chevron{position:absolute;top:50%;left:6px;transform:translateY(-50%);width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:color-mix(in srgb,var(--note-color) 55%,var(--text));opacity:.8;cursor:pointer}.solenoid-note__chevron:hover{opacity:1}.solenoid-note__chevron svg{transition:transform .1s ease;transform:rotate(90deg)}.solenoid-note--collapsed .solenoid-note__chevron svg{transform:rotate(0)}.solenoid-note__name{width:calc(100% - 60px);margin-right:auto;background:transparent;border:none;outline:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--note-color) 55%,var(--text));font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:text}.solenoid-note__name:focus{color:var(--text)}.solenoid-note__name::placeholder{color:currentColor;opacity:.5}.solenoid-note__name-display{width:fit-content;max-width:calc(100% - 60px);margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--note-color) 55%,var(--text));font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:text}.solenoid-note__name-display--empty{opacity:.5}.solenoid-note__swatch{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;color:color-mix(in srgb,var(--note-color) 55%,var(--text));cursor:pointer;opacity:.85}.solenoid-note__swatch:hover{opacity:1}.solenoid-note__palette{position:absolute;top:26px;right:0;z-index:10}.solenoid-note__fields{display:flex;flex-direction:column;flex:0 0 auto;padding:3px 0;overflow:visible;box-shadow:inset 0 -1px color-mix(in srgb,var(--note-color) 35%,transparent)}.solenoid-note__field-row{position:relative;display:flex;align-items:center;gap:6px;padding:2px 10px;min-height:18px;font-size:11px}.solenoid-note__field-glyph{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;background:none;border:none;cursor:pointer;opacity:.9}.solenoid-note__field-glyph:hover{opacity:1}.solenoid-note__field-key{flex:0 0 auto;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono, ui-monospace, monospace);font-weight:600;color:var(--text)}.solenoid-note__field-val{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;padding-right:4px;color:var(--text-muted)}.solenoid-note__field-picker{position:absolute;top:20px;left:8px;z-index:11;display:flex;flex-direction:column;gap:1px;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow-card)}.solenoid-note__field-opt{display:flex;align-items:center;gap:7px;padding:4px 9px 4px 5px;background:none;border:none;border-radius:5px;color:var(--text);font-size:11px;white-space:nowrap;text-align:left;cursor:pointer}.solenoid-note__field-opt:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}.solenoid-note__field-opt--on{background:color-mix(in srgb,var(--note-color) 22%,transparent)}.solenoid-note__content{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;border-radius:0 0 9px 9px}.solenoid-note__body{flex:1;min-height:0;width:100%;background:transparent;border:none;outline:none;resize:none;padding:8px;color:var(--text);font-family:var(--font-sans);font-size:12px;line-height:1.45;cursor:text;overflow:auto}.solenoid-note__body::placeholder{color:var(--text-muted)}.solenoid-note__rendered{flex:1;min-height:0;padding:8px 10px;overflow:auto;cursor:text;font-size:12px;min-width:0;overflow-wrap:anywhere;word-break:break-word}.solenoid-note__rendered.sol-md pre,.solenoid-note__rendered.sol-md table{max-width:100%}.solenoid-note__rendered.sol-md pre{white-space:pre-wrap}.solenoid-note__rendered--empty{color:var(--text-muted)}.solenoid-note__resize{position:absolute;right:2px;bottom:2px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;color:var(--note-color);opacity:.5;cursor:nwse-resize;z-index:7}.solenoid-note__resize:hover{opacity:.9}.solenoid-note__rendered.sol-md{max-width:none;margin:0;line-height:1.45}.solenoid-note__rendered.sol-md>:first-child,.solenoid-note__rendered.sol-md>*>:first-child{margin-top:0}.solenoid-note__rendered.sol-md>:last-child,.solenoid-note__rendered.sol-md>*>:last-child{margin-bottom:0}.solenoid-note__rendered.sol-md h1{font-size:15px;margin:6px 0}.solenoid-note__rendered.sol-md h2{font-size:13.5px;margin:10px 0 5px}.solenoid-note__rendered.sol-md h3{font-size:12.5px;margin:8px 0 4px}.solenoid-note__rendered.sol-md p,.solenoid-note__rendered.sol-md ul,.solenoid-note__rendered.sol-md ol{margin:5px 0}.solenoid-note__rendered.sol-md pre{margin:6px 0}.solenoid-note--selected{box-shadow:0 6px 16px color-mix(in srgb,var(--node-accent) 22%,transparent)}.solenoid-note--selected:after{content:"";position:absolute;inset:-2px;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent) 70%,#fff);border-radius:11px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-note--selected:after{border-color:color-mix(in srgb,var(--node-accent) 68%,#000)}.solenoid-report{position:relative;--node-accent: var(--report-color);--node-socket-x: -7.5px;box-sizing:border-box;display:flex;flex-direction:column;background:var(--report-bg);border:2px solid var(--report-color);border-radius:11px;box-shadow:var(--shadow-card);cursor:grab}.solenoid-report *{box-sizing:border-box}.solenoid-report__bar{position:relative;display:flex;align-items:center;height:26px;padding:0 8px;background:color-mix(in srgb,var(--report-color) var(--header-tint),var(--surface));border-radius:9px 9px 0 0;box-shadow:inset 0 -1px 0 var(--report-color)}.solenoid-report__name{width:calc(100% - 30px);margin-right:auto;background:transparent;border:none;outline:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--report-color) 55%,var(--text));font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:text}.solenoid-report__name::placeholder{color:currentColor;opacity:.5}.solenoid-report__name-display{width:fit-content;max-width:calc(100% - 30px);margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--report-color) 55%,var(--text));font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:text}.solenoid-report__name-display--empty{opacity:.5}.solenoid-report__swatch{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;color:color-mix(in srgb,var(--report-color) 55%,var(--text));cursor:pointer;opacity:.85}.solenoid-report__swatch:hover{opacity:1}.solenoid-report__palette{position:absolute;top:26px;right:0;z-index:10}.solenoid-report__refs{display:flex;flex-direction:column;flex:0 0 auto;padding:3px 0;overflow:visible;box-shadow:inset 0 -1px color-mix(in srgb,var(--report-color) 35%,transparent)}.solenoid-report__ref-row{position:relative;display:flex;align-items:center;gap:6px;padding:2px 10px 2px 16px;min-height:18px;font-size:11px}.solenoid-report__ref-key{flex:0 0 auto;max-width:50%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-mono, ui-monospace, monospace);font-weight:600;color:var(--text)}.solenoid-report__ref-val{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right;color:var(--text-muted)}.solenoid-report__content{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:0 0 9px 9px}.solenoid-report__open{display:flex;align-items:center;gap:6px;padding:5px 10px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:999px;color:var(--text);font-family:var(--font-sans);font-size:11px;font-weight:600;cursor:pointer}.solenoid-report__open:hover{background:var(--btn-hover);border-color:var(--border-strong)}.solenoid-report__embed-count{flex:0 0 auto;color:var(--text-muted);font-size:10.5px}.solenoid-report--selected{box-shadow:0 6px 16px color-mix(in srgb,var(--node-accent) 22%,transparent)}.solenoid-report--selected:after{content:"";position:absolute;inset:-2px;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent) 70%,#fff);border-radius:11px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-report--selected:after{border-color:color-mix(in srgb,var(--node-accent) 68%,#000)}.solenoid-history{position:relative;--node-accent: var(--sock-any);box-sizing:border-box;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-card);cursor:grab}.solenoid-history *{box-sizing:border-box}.solenoid-history__bar{display:flex;align-items:center;justify-content:space-between;height:26px;padding:0 8px 0 10px;background:color-mix(in srgb,var(--sock-any) var(--header-tint),var(--surface));border-radius:7px 7px 0 0;box-shadow:inset 0 -1px 0 var(--border)}.solenoid-history__title{font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.solenoid-history__copy{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;background:none;border:none;color:var(--text-dim);cursor:pointer;opacity:.75}.solenoid-history__copy:hover{opacity:1;color:var(--text)}.solenoid-history__log{flex:1;min-height:0;margin:0;padding:8px 10px;overflow:auto;color:var(--text);font-family:var(--font-mono);font-size:11px;line-height:1.55;white-space:pre-wrap;cursor:text;border-radius:0 0 7px 7px}.solenoid-history--selected{box-shadow:0 6px 16px color-mix(in srgb,var(--node-accent) 22%,transparent)}.solenoid-history--selected:after{content:"";position:absolute;inset:-1px;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent) 70%,#fff);border-radius:8px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-history--selected:after{border-color:color-mix(in srgb,var(--node-accent) 68%,#000)}.solenoid-pres{position:relative;--node-accent: var(--pres-color);box-sizing:border-box;display:flex;flex-direction:column;background:var(--pres-bg);border:2px solid var(--pres-color);border-radius:11px;box-shadow:var(--shadow-card);cursor:grab}.solenoid-pres *{box-sizing:border-box}.solenoid-pres__bar{position:relative;display:flex;align-items:center;height:26px;padding:0 8px;background:color-mix(in srgb,var(--pres-color) var(--header-tint),var(--surface));border-radius:9px 9px 0 0;box-shadow:inset 0 -1px 0 var(--pres-color)}.solenoid-pres__name,.solenoid-pres__name-display{width:calc(100% - 30px);max-width:calc(100% - 30px);margin-right:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--pres-color) 55%,var(--text));font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:text;background:transparent;border:none;outline:none}.solenoid-pres__name-display--empty{opacity:.5}.solenoid-pres__swatch{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;color:color-mix(in srgb,var(--pres-color) 55%,var(--text));cursor:pointer;opacity:.85}.solenoid-pres__swatch:hover{opacity:1}.solenoid-pres__palette{position:absolute;top:26px;right:0;z-index:10}.solenoid-pres__steps{display:flex;flex-direction:column;gap:3px;max-height:220px;overflow-y:auto;padding:8px}.solenoid-pres__empty{padding:10px 4px;color:var(--text-muted);font-size:11px;text-align:center}.solenoid-pres__step{display:flex;align-items:center;gap:4px;border-radius:6px;background:var(--surface-sunken);border:1px solid var(--border)}.solenoid-pres__step--active{border-color:color-mix(in srgb,var(--pres-color) 60%,var(--border));background:color-mix(in srgb,var(--pres-color) 12%,var(--surface-sunken))}.solenoid-pres__step-go{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:6px;padding:5px 8px;background:none;border:none;cursor:pointer;text-align:left}.solenoid-pres__step-title{flex:1 1 auto;min-width:0;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--font-sans);font-size:11.5px;cursor:text}.solenoid-pres__step-count{flex:0 0 auto;min-width:16px;text-align:center;padding:1px 5px;border-radius:999px;background:color-mix(in srgb,var(--pres-color) 20%,transparent);color:var(--text-dim);font-size:10px;font-family:var(--font-mono)}.solenoid-pres__step-actions{flex:0 0 auto;display:flex;align-items:center;padding-right:4px}.solenoid-pres__step-actions button{width:18px;height:18px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-dim);font-size:11px;cursor:pointer;opacity:.7}.solenoid-pres__step-actions button:hover:not(:disabled){opacity:1;color:var(--text)}.solenoid-pres__step-actions button:disabled{opacity:.25;cursor:default}.solenoid-pres__add{margin-top:2px;padding:6px 8px;background:none;border:1px dashed var(--border-strong);border-radius:6px;color:var(--text-dim);font-size:11px;cursor:pointer}.solenoid-pres__add:hover{color:var(--text);border-color:var(--pres-color)}.solenoid-pres__footer{display:flex;align-items:center;justify-content:center;gap:14px;padding:6px 10px 10px}.solenoid-pres__footer button{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--surface-sunken);border:1px solid var(--border);border-radius:50%;color:var(--text);font-size:14px;cursor:pointer}.solenoid-pres__footer button:hover:not(:disabled){background:var(--btn-hover);border-color:var(--border-strong)}.solenoid-pres__footer button:disabled{opacity:.35;cursor:default}.solenoid-pres__counter{font-family:var(--font-mono);font-size:11px;color:var(--text-dim);min-width:40px;text-align:center}.solenoid-pres__footer button.solenoid-pres__present{width:auto;height:24px;border-radius:12px;padding:0 12px;gap:4px;font-size:11px;font-weight:600;color:var(--pres-color, var(--text-bright));border-color:color-mix(in srgb,var(--pres-color, var(--border-strong)) 45%,var(--border))}.solenoid-pres--selected{box-shadow:0 6px 16px color-mix(in srgb,var(--node-accent) 22%,transparent)}.solenoid-pres--selected:after{content:"";position:absolute;inset:-2px;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent) 70%,#fff);border-radius:11px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-pres--selected:after{border-color:color-mix(in srgb,var(--node-accent) 68%,#000)}.solenoid-image{position:relative;--node-accent: #6b8299;--node-socket-x: -6.5px;box-sizing:border-box;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-card);cursor:grab}.solenoid-image *{box-sizing:border-box}.solenoid-image:active{cursor:grabbing}.solenoid-image__bar{position:relative;display:flex;align-items:center;gap:4px;height:26px;padding:0 6px 0 22px;background:color-mix(in srgb,var(--node-accent) var(--header-tint),var(--surface));border-radius:7px 7px 0 0;box-shadow:inset 0 -1px 0 var(--border)}.solenoid-image--collapsed .solenoid-image__bar{border-radius:7px;box-shadow:none}.solenoid-image__chevron{position:absolute;top:50%;left:6px;transform:translateY(-50%);width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:color-mix(in srgb,var(--node-accent) 55%,var(--text));opacity:.8;cursor:pointer}.solenoid-image__chevron:hover{opacity:1}.solenoid-image__chevron svg{transition:transform .1s ease;transform:rotate(90deg)}.solenoid-image--collapsed .solenoid-image__chevron svg{transform:rotate(0)}.solenoid-image__name{flex:1;min-width:0;background:transparent;border:none;outline:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--node-accent) 55%,var(--text));font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;cursor:text}.solenoid-image__name:focus{color:var(--text)}.solenoid-image__name::placeholder{color:currentColor;opacity:.5}.solenoid-image__attach{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;color:color-mix(in srgb,var(--node-accent) 55%,var(--text));cursor:pointer;opacity:.85}.solenoid-image__attach:hover{opacity:1}.solenoid-image__content{display:flex;flex-direction:column;overflow:hidden;border-radius:0 0 7px 7px}.solenoid-image__img{display:block;width:100%;object-fit:contain;background:var(--surface-sunken);-webkit-user-select:none;user-select:none}.solenoid-image__placeholder{display:flex;align-items:center;justify-content:center;width:100%;padding:8px;background:var(--surface-sunken);border:none;color:var(--text-muted);font-family:var(--font-sans);font-size:11px;text-align:center;cursor:pointer}.solenoid-image__placeholder:hover{color:var(--text)}.solenoid-image__controls{display:flex;align-items:center;gap:6px;padding:6px}.solenoid-image__url{flex:1;min-width:0;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:3px 6px;color:var(--text);font-family:var(--font-sans);font-size:11px;outline:none}.solenoid-image__url:focus{border-color:var(--accent)}.solenoid-image__url::placeholder{color:var(--text-muted)}.solenoid-image__height{flex:0 0 auto;display:flex;align-items:center;gap:3px;color:var(--text-muted);font-size:10px;font-weight:600}.solenoid-image__height input{width:46px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:3px 4px;color:var(--text);font-family:var(--font-sans);font-size:11px;outline:none}.solenoid-image__height input:focus{border-color:var(--accent)}.solenoid-image__hint{padding:0 6px 6px;color:var(--text-muted);font-size:10px;line-height:1.3}.solenoid-image--selected{box-shadow:0 6px 16px color-mix(in srgb,var(--node-accent) 22%,transparent)}.solenoid-image--selected:after{content:"";position:absolute;inset:-1px;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent) 70%,#fff);border-radius:8px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-image--selected:after{border-color:color-mix(in srgb,var(--node-accent) 68%,#000)}.solenoid-group{box-sizing:border-box;display:flex;flex-direction:column;border-radius:11px;-webkit-user-select:none;user-select:none}.solenoid-group *{box-sizing:border-box}.solenoid-group__header{position:relative;flex:0 0 auto;width:100%;height:34px;display:flex;align-items:center;padding:0 10px 0 26px;border:2px solid;border-bottom:none;border-radius:11px 11px 0 0;box-shadow:0 1px 3px #0000001f;cursor:grab}.solenoid-group__header:active{cursor:grabbing}.solenoid-group__chevron{position:absolute;top:50%;left:7px;transform:translateY(-50%);width:14px;height:14px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:inherit;opacity:.85;cursor:pointer}.solenoid-group__chevron:hover{opacity:1}.solenoid-group__chevron svg{transition:transform .1s ease;transform:rotate(90deg)}.solenoid-group--collapsed .solenoid-group__chevron svg{transform:rotate(0)}.solenoid-group__label{flex:0 1 auto;width:auto;min-width:0;max-width:68%;margin-right:auto;background:transparent;border:none;outline:none;resize:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:inherit;font-size:14px;font-weight:700;line-height:1.2;letter-spacing:.4px;text-transform:uppercase;cursor:text}textarea.solenoid-group__label{flex:1 1 auto}.solenoid-group__label::placeholder{color:currentColor;opacity:.6}.solenoid-group__tidy,.solenoid-group__swatch{flex:0 0 auto;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;cursor:pointer;opacity:.85}.solenoid-group__swatch{margin-left:2px}.solenoid-group__tidy:hover,.solenoid-group__swatch:hover{opacity:1}.solenoid-group__palette{position:absolute;top:36px;right:6px;z-index:5}.solenoid-group__body{position:relative;flex:1 1 auto;width:100%;border:2px dashed;border-top:none;border-radius:0 0 11px 11px}.solenoid-group__resize{position:absolute;right:2px;bottom:2px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;opacity:.5;cursor:nwse-resize}.solenoid-group__resize:hover{opacity:.9}.solenoid-group__summary{flex:0 0 auto;width:100%;border:2px solid;border-top:none;border-radius:0 0 11px 11px;padding:6px 14px;display:flex;flex-direction:column;gap:3px}.solenoid-group__row{display:flex;align-items:center;justify-content:space-between;gap:10px}.solenoid-group__row-label{flex:0 1 auto;min-width:0;font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solenoid-group__row-val{flex:0 0 auto;font-size:15px;color:var(--text-bright);font-variant-numeric:tabular-nums;white-space:nowrap}.solenoid-group__pill{position:absolute;width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 1.5px var(--surface);z-index:2}.solenoid-group__pill--left{left:-5px}.solenoid-group__pill--right{right:-5px}.solenoid-group__empty{font-size:11px;color:var(--text-dim);font-style:italic}.solenoid-group--selected{box-shadow:0 6px 16px color-mix(in srgb,var(--node-accent) 22%,transparent);border-radius:11px}.solenoid-group--selected:after{content:"";position:absolute;inset:0;box-sizing:border-box;border:2px solid color-mix(in srgb,var(--node-accent) 70%,#fff);border-radius:11px;pointer-events:none;z-index:6}:root[data-theme=light] .solenoid-group--selected:after{border-color:color-mix(in srgb,var(--node-accent) 68%,#000)}.solenoid-group [data-socket-side],.solenoid-group .solenoid-node__input-pill,.solenoid-group .solenoid-node__output-pill{z-index:7}.solenoid-group .solenoid-node__input-pill{left:-5px}.solenoid-group .solenoid-node__output-pill{right:-5px}.solenoid-fc{width:auto;min-width:0;border:2px solid var(--node-accent, var(--border))}.solenoid-fc:not(.solenoid-node--selected):hover{border-color:var(--node-accent, var(--border-strong))}.solenoid-fc .solenoid-node__chevron{display:none}.solenoid-fc__arrow{color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 50%,var(--text))}:root[data-theme=light] .solenoid-fc__arrow{color:var(--text-muted)}.solenoid-fc__row{display:flex;align-items:center;gap:4px;padding:5px}.solenoid-fc__row--custom{padding-top:0}.solenoid-fc__row--none{justify-content:center;min-width:48px;color:var(--text-dim)}.solenoid-fc__select{flex:1 1 0;min-width:64px;max-width:92px;font-size:11px;padding:3px 18px 3px 5px}.solenoid-fc__select--wide{flex:1 1 auto;min-width:90px;max-width:none}.solenoid-fc__row--decimal{padding-top:0}.solenoid-fc__arrow-spacer{flex:0 0 auto;width:9px}.solenoid-fc__digits{flex:0 0 auto;width:28px;font-size:11px;text-align:center}.solenoid-fc__pattern{flex:1 1 0;min-width:0;font-size:11px;text-align:left}.solenoid-fc__note{font-size:10px;color:var(--text-dim);font-style:italic;padding:1px 2px;white-space:nowrap}.solenoid-fc__toggle{flex:0 0 auto;width:20px;height:22px;padding:0;font-size:12px;line-height:1;background:var(--border-subtle);border:1px solid var(--border-strong);border-radius:3px;color:var(--text);cursor:pointer}.solenoid-fc__toggle--on{background:color-mix(in srgb,var(--node-accent, var(--accent)) 30%,var(--border-subtle));border-color:var(--node-accent, var(--accent));color:var(--text)}.solenoid-fc__size{flex:0 0 auto;width:40px;font-size:11px;padding:3px 2px}.solenoid-fc__check{flex:1 1 auto;display:flex;align-items:center;gap:6px;font-size:11px;cursor:pointer;white-space:nowrap}.solenoid-fc__check input{width:13px;height:13px;flex:0 0 auto;margin:0}.solenoid-fc__more-row{display:flex;justify-content:center;padding:0 0 1px}.solenoid-fc__more{display:flex;align-items:center;justify-content:center;width:26px;height:10px;padding:0;background:none;border:none;color:var(--text-muted);cursor:pointer}.solenoid-fc__more:hover{color:var(--text)}.solenoid-fc__lock{flex:0 0 auto;display:inline-flex;align-items:center;color:var(--text-dim)}.solenoid-fc__mismatch{position:absolute;top:-6px;right:-6px;z-index:3;display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;background:#e06c2e;color:#fff;font-size:10px;font-weight:700;line-height:1;box-shadow:0 0 0 2px var(--surface)}.solenoid-socket-ctx{position:fixed;z-index:9999;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;padding:4px;box-shadow:0 4px 16px #00000080;min-width:0}.solenoid-socket-ctx__item{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:none;border:none;border-radius:4px;color:var(--text);font-family:inherit;font-size:12px;text-align:left;cursor:pointer;white-space:nowrap}.solenoid-socket-ctx__item:hover{background:var(--border-subtle);color:var(--text)}.solenoid-socket-ctx__icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;font-size:13px;line-height:1;opacity:.7;flex-shrink:0}.solenoid-standoff-svg{position:absolute;left:0;top:0;width:9999px;height:9999px;overflow:visible;pointer-events:none}.solenoid-standoff__bar{stroke:var(--standoff-bar, rgba(138, 150, 170, .26));stroke-linecap:round;transition:stroke .12s ease}.solenoid-standoff__cap{fill:var(--standoff-cap, rgba(138, 150, 170, .45))}.solenoid-standoff-hit{stroke:transparent;pointer-events:stroke;cursor:pointer}.solenoid-standoff:hover .solenoid-standoff__bar{stroke:var(--standoff-bar-hover, rgba(138, 150, 170, .42))}.solenoid-standoff--selected .solenoid-standoff__bar{stroke:var(--standoff-bar-selected, rgba(150, 168, 196, .6))}.solenoid-standoff--selected .solenoid-standoff__cap{fill:var(--standoff-cap-selected, rgba(170, 188, 214, .85))}:root[data-theme=light] .solenoid-standoff__bar{stroke:#626e8233}:root[data-theme=light] .solenoid-standoff:hover .solenoid-standoff__bar{stroke:#626e8257}:root[data-theme=light] .solenoid-standoff--selected .solenoid-standoff__bar{stroke:#50607a80}.solenoid-standoff-toolbar__field{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--text-dim, #9aa1ad);margin:4px 0}.solenoid-standoff-toolbar__field input{width:56px;background:var(--surface-sunken);border:1px solid var(--border-strong);border-radius:4px;color:var(--text, #e6e9ee);font:inherit;font-size:11px;padding:3px 5px}.solenoid-standoff-toolbar__delete{display:block;width:100%;margin-top:6px;padding:5px 8px;background:none;border:1px solid var(--border-strong, #3a3f49);border-radius:5px;color:var(--text, #e6e9ee);font:inherit;font-size:11px;cursor:pointer}.solenoid-standoff-toolbar__delete:hover{border-color:#c25b5b;color:#e08a8a}.solenoid-node--placeholder{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--sol-error) 40%,transparent)}.solenoid-placeholder{display:flex;flex-direction:column;gap:4px;padding:6px 8px}.solenoid-placeholder__type{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--sol-error);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.solenoid-placeholder__msg{font-size:10.5px;line-height:1.4;color:var(--text-dim);white-space:normal}.solenoid-cmdpalette-scrim{position:fixed;inset:0;z-index:300}.solenoid-cmdpalette-scrim--persistent{pointer-events:none;z-index:150}.solenoid-cmdpalette-scrim--persistent .solenoid-cmdpalette{pointer-events:auto}.solenoid-cmdpalette{position:fixed;left:50%;bottom:40px;transform:translate(-50%);width:min(480px,calc(100vw - 32px));font-family:inherit;font-size:13px;color:var(--text);display:flex;flex-direction:column}.solenoid-cmdpalette__results{order:-1;margin-bottom:4px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow);padding:3px;max-height:min(320px,50vh);overflow-y:auto}.solenoid-cmdpalette__item{padding:6px 10px;border-radius:3px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px;white-space:nowrap}.solenoid-cmdpalette__item:hover,.solenoid-cmdpalette__item--active{background:var(--accent-soft)}.solenoid-cmdpalette__label{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis}.solenoid-cmdpalette__sub{flex:0 0 auto;color:var(--text-dim);font-size:11px}.solenoid-cmdpalette__shortcut{flex:0 0 auto;color:var(--text-muted);font-family:var(--font-mono, monospace);font-size:11px}.solenoid-cmdpalette__input{width:100%;box-sizing:border-box;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;padding:10px 12px;color:var(--text-bright);font-family:inherit;font-size:13px;outline:none;box-shadow:var(--overlay-shadow)}.solenoid-cmdpalette__input:focus{border-color:var(--accent)}.solenoid-cmdpalette__input::placeholder{color:var(--text-muted)}.solenoid-cmdpalette__input::-webkit-search-cancel-button,.solenoid-cmdpalette__input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}html.is-mobile .solenoid-cmdpalette{top:calc(env(safe-area-inset-top,0px) + 92px);bottom:auto}html.is-mobile .solenoid-cmdpalette__results{order:1;margin-bottom:0;margin-top:4px;max-height:38vh}html.is-mobile .solenoid-cmdpalette__item{padding:11px 12px}html.is-mobile .solenoid-cmdpalette__shortcut{display:none}.solenoid-minimap{position:absolute;right:16px;bottom:30px;padding:8px;overflow:hidden;box-sizing:border-box;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow);z-index:100}.solenoid-minimap__node{position:absolute;box-sizing:border-box;border:1px solid;border-radius:1.5px}.solenoid-minimap__viewport{position:absolute;box-sizing:border-box;background:color-mix(in srgb,var(--text) 12%,transparent);border:1px solid color-mix(in srgb,var(--text) 55%,transparent);cursor:grab;transform:scale(.8);transform-origin:center}.solenoid-minimap__viewport:active{cursor:grabbing}.solenoid-nav{position:absolute;top:80px;right:12px;display:flex;flex-direction:row;gap:3px;padding:2px;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--panel-border);border-radius:999px;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-pop);z-index:5}.solenoid-nav__btn{width:28px;height:28px;background:transparent;border:1px solid transparent;color:var(--text);border-radius:50%;font-family:inherit;font-size:14px;line-height:1;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}@media(hover:hover){.solenoid-nav__btn:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-nav__btn--on:hover{border-color:var(--accent);background:var(--accent-soft)}}.solenoid-nav__btn--on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.solenoid-nav__seed-select{height:28px;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--btn-bg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238a8f98' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;border:1px solid var(--btn-border);color:var(--text);border-radius:999px;font-family:inherit;font-size:12px;padding:0 30px 0 14px;cursor:pointer;outline:none;max-width:170px}.solenoid-nav__seed-select:hover,.solenoid-nav__seed-select:focus{border-color:var(--accent)}.solenoid-load-overlay{position:absolute;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--canvas-bg);pointer-events:all;transition:opacity .26s ease;opacity:1}.solenoid-load-overlay--leaving{opacity:0;pointer-events:none}.solenoid-load-overlay__card{min-width:220px;padding:18px 20px 16px;box-sizing:border-box;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:12px;box-shadow:var(--overlay-shadow);transition:transform .26s ease}.solenoid-load-overlay--leaving .solenoid-load-overlay__card{transform:translateY(-8px)}.solenoid-load-overlay__label{font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--text);margin-bottom:11px}.solenoid-load-overlay__track{height:6px;width:100%;border-radius:3px;background:color-mix(in srgb,var(--text-muted) 26%,transparent);overflow:hidden}.solenoid-load-overlay__fill{height:100%;width:100%;border-radius:3px;background:var(--accent);transform-origin:left center;transition:transform .12s linear}.solenoid-load-overlay__pct{margin-top:7px;font-size:11px;font-variant-numeric:tabular-nums;color:var(--text-dim);text-align:right}.solenoid-compute-overlay{position:absolute;inset:0;z-index:190;display:flex;align-items:center;justify-content:center;pointer-events:all;cursor:progress;background:color-mix(in srgb,var(--canvas-bg) 42%,transparent);animation:solenoid-compute-fade .14s ease both}@keyframes solenoid-compute-fade{0%{opacity:0}to{opacity:1}}.solenoid-compute-overlay__card{display:flex;align-items:center;gap:11px;padding:12px 18px;box-sizing:border-box;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:10px;box-shadow:var(--overlay-shadow)}.solenoid-compute-overlay__label{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--text)}.solenoid-compute-overlay__spinner{width:16px;height:16px;border-radius:50%;border:2px solid color-mix(in srgb,var(--text-muted) 30%,transparent);border-top-color:var(--accent);animation:solenoid-compute-spin .7s linear infinite}@keyframes solenoid-compute-spin{to{transform:rotate(360deg)}}.solenoid-isolate-pill{position:fixed;top:84px;left:50%;transform:translate(-50%);z-index:120;display:flex;align-items:center;gap:8px;padding:6px 10px 6px 12px;background:var(--surface);border:1px solid var(--accent);border-radius:999px;box-shadow:0 6px 22px #0006;color:var(--text);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;animation:solenoid-isolate-in .14s ease-out}.solenoid-isolate-pill:hover{border-color:var(--accent);filter:brightness(1.06)}@keyframes solenoid-isolate-in{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}.solenoid-isolate-pill__dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}.solenoid-isolate-pill__exit{margin-left:4px;padding-left:8px;border-left:1px solid var(--border-strong);color:var(--text-muted, var(--text));font-weight:500}.solenoid-toolbar{display:flex;align-items:center;gap:8px;font-family:inherit;-webkit-user-select:none;user-select:none}.solenoid-toolbar__label{padding-left:6px;font-size:11px;font-weight:600;line-height:1.4;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.solenoid-toolbar__segmented{display:flex;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px;padding:2px;gap:2px}.solenoid-toolbar__segment{display:flex;align-items:center;padding:4px 7px;background:transparent;border:none;color:var(--text);font-family:inherit;font-size:12px;cursor:pointer;border-radius:999px;transition:background-color 80ms ease,color 80ms ease;--icon-bg: var(--btn-bg)}.solenoid-toolbar__icon{display:block;width:17px;height:15px}@media(hover:hover){.solenoid-toolbar__segment:hover{color:var(--accent);background:var(--btn-hover);--icon-bg: var(--btn-hover)}}.solenoid-toolbar__segment--active,.solenoid-toolbar__segment--active:hover{background:var(--accent);color:var(--accent-ink);--icon-bg: var(--accent)}.solenoid-toolbar__flow{display:flex;align-items:center;justify-content:center;padding:4px 8px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px;color:var(--text);cursor:pointer;transition:background-color 80ms ease,color 80ms ease,border-color 80ms ease}@media(hover:hover){.solenoid-toolbar__flow:hover{color:var(--accent);background:var(--btn-hover);border-color:var(--accent)}}.solenoid-toolbar__flow--active,.solenoid-toolbar__flow--active:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.solenoid-toolbar__flow-icon{display:block;width:32px;height:13px}.solenoid-toolbar__flow--active .solenoid-toolbar__flow-beads{animation:solenoid-flow-bead 1.1s linear infinite}@keyframes solenoid-flow-bead{to{stroke-dashoffset:-10.01}}@media(prefers-reduced-motion:reduce){.solenoid-toolbar__flow--active .solenoid-toolbar__flow-beads{animation:none}}.solenoid-cable-inspector{position:fixed;left:16px;bottom:calc(31px + env(safe-area-inset-bottom));z-index:110;width:220px;display:flex;flex-direction:column;gap:5px;padding:8px 9px 9px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow);color:var(--text);font-family:inherit;animation:solenoid-cable-inspector-in .13s ease-out;transition:left .12s ease}html:not(.is-mobile) body.solenoid-nav-open .solenoid-cable-inspector{left:272px}@keyframes solenoid-cable-inspector-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}html.is-mobile .solenoid-cable-inspector{bottom:calc(96px + env(safe-area-inset-bottom))}.solenoid-cable-inspector--chip{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-muted, var(--text));--icon-bg: var(--overlay-bg)}.solenoid-cable-inspector--chip:hover{color:var(--accent);border-color:var(--accent)}.solenoid-cable-inspector__chip-icon{width:18px;height:18px;display:block}.solenoid-cable-inspector__head{display:flex;align-items:center;gap:8px;margin-bottom:1px}.solenoid-cable-inspector__title{flex:1;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted, var(--text))}.solenoid-cable-inspector__close{flex:none;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:none;border:none;color:var(--text-muted, var(--text));opacity:.5;padding:0;cursor:pointer}.solenoid-cable-inspector__close:hover{opacity:1;color:var(--accent)}.solenoid-cable-inspector__end{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px}.solenoid-cable-inspector__role{flex:none;width:30px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted, var(--text));opacity:.75}.solenoid-cable-inspector__node{flex:0 1 auto;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:none;border:none;padding:0;color:var(--text);font-family:inherit;font-size:12px;font-weight:600;text-align:left;cursor:pointer}.solenoid-cable-inspector__node:hover{color:var(--accent);text-decoration:underline}.solenoid-cable-inspector__port{flex:none;color:var(--text-muted, var(--text));font-size:11px;font-weight:500}.solenoid-cable-inspector__value{flex:none;margin-left:auto;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.solenoid-cable-inspector__value--empty{color:var(--text-muted, var(--text));font-weight:500;opacity:.7}.solenoid-cable-inspector__value--error{color:var(--sol-error);font-weight:700;font-size:11.5px}.solenoid-cable-inspector .solenoid-array-chip{margin-left:auto;color:var(--text);background:var(--surface-raised);border-color:var(--border-strong)}.solenoid-cable-inspector__wire{display:flex;align-items:baseline;gap:4px 7px;margin-top:5px;padding-top:8px;border-top:1px solid var(--overlay-border)}.solenoid-cable-inspector__shape{display:flex;align-items:flex-start;gap:4px 7px}.solenoid-cable-inspector__shape-cols{display:flex;flex-wrap:wrap;gap:2px 6px;min-width:0}.solenoid-cable-inspector__shape-col{font-size:11px;color:var(--text);white-space:nowrap}.solenoid-cable-inspector__shape-type{color:var(--text-muted, var(--text));opacity:.65;font-weight:500}.solenoid-cable-inspector__shape-dynamic{font-size:10px;color:var(--text-muted, var(--text));opacity:.6;font-style:italic}.solenoid-cable-inspector__arrow{align-self:center;margin:-2px 0;font-size:12px;line-height:1;color:var(--text-muted, var(--text));opacity:.55}.solenoid-iso-ep-svg{position:absolute;left:0;top:0;overflow:visible;pointer-events:none;width:1px;height:1px}.solenoid-iso-ep-cable{fill:none;stroke:var(--sock-any);stroke-width:2;opacity:.85;stroke-dasharray:5 4}.solenoid-iso-ep{position:absolute;box-sizing:border-box}.solenoid-iso-ep__head{box-sizing:border-box;display:flex;align-items:center;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text)}.solenoid-iso-ep__dot{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--sock-any);border:2px solid var(--socket-ring, var(--surface));box-sizing:border-box;z-index:7}.solenoid-iso-ep__dot--right{right:-6px}.solenoid-iso-ep__dot--left{left:-6px}.solenoid-iso-ep--exit .solenoid-node__io-label{padding-left:10px}.solenoid-add-menu{position:fixed;z-index:200;font-family:inherit;font-size:13px;color:var(--text)}.solenoid-add-menu__heading{padding:5px 10px 4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px 8px 0 0;border-bottom:none}.solenoid-add-menu__panel{display:grid;grid-template-columns:auto auto;column-gap:3px;align-content:start;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:0 0 8px 8px;padding:3px;box-shadow:var(--overlay-shadow);min-width:170px;max-height:min(384px,85vh);overflow-y:auto}.solenoid-add-menu__search{margin-bottom:3px;width:100%;box-sizing:border-box;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;padding:5px 8px;color:var(--text-bright);font-family:inherit;font-size:12px;outline:none}.solenoid-add-menu__search:focus{border-color:var(--accent)}.solenoid-add-menu__search::placeholder{color:var(--text-muted)}.solenoid-add-menu__empty{padding:6px 10px;color:var(--text-dim);font-size:12px}.solenoid-add-menu__panel>*:not(.solenoid-add-menu__item--half){grid-column:1 / -1}.solenoid-add-menu__panel--submenu{border-radius:8px;z-index:201}.solenoid-add-menu__item{padding:6px 10px;border-radius:3px;cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;gap:8px;position:relative;white-space:nowrap}.solenoid-add-menu__item:hover,.solenoid-add-menu__item--active,.solenoid-add-menu__item--open{background:var(--accent-soft)}.solenoid-add-menu__item--incompatible{opacity:.3;cursor:not-allowed}.solenoid-add-menu__item--incompatible:hover,.solenoid-add-menu__item--incompatible.solenoid-add-menu__item--active,.solenoid-add-menu__item--incompatible:hover:before,.solenoid-add-menu__item--incompatible.solenoid-add-menu__item--active:before{background:transparent}.solenoid-add-menu__pack-dot{flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:var(--text-dim);opacity:.55}.solenoid-add-menu__item--accent{position:relative;z-index:0;color:color-mix(in srgb,var(--item-accent) 55%,var(--text))}.solenoid-add-menu__item--accent:before{content:"";position:absolute;inset:2px 5px;border-radius:4px;background:color-mix(in srgb,var(--item-accent) 22%,transparent);z-index:-1}.solenoid-add-menu__item--accent:hover,.solenoid-add-menu__item--accent.solenoid-add-menu__item--active{background:transparent}.solenoid-add-menu__item--accent:hover:before,.solenoid-add-menu__item--accent.solenoid-add-menu__item--active:before{background:color-mix(in srgb,var(--item-accent) 38%,transparent)}.solenoid-add-menu__item--half{justify-content:flex-start}.solenoid-add-menu__arrow{font-size:9px;color:var(--text-muted);flex-shrink:0}.solenoid-html-layer{position:absolute;inset:0;z-index:2;pointer-events:none}.solenoid-html-frozen .solenoid-cable-flow{animation-play-state:paused}html.minimap-hidden .solenoid-minimap{display:none}html.minimap-top .solenoid-minimap{top:126px;bottom:auto}html.perf-no-grid-dots .solenoid-canvas{background-image:none}.solenoid-canvas-wrapper{position:relative;width:100%;height:100%;user-select:none;-webkit-user-select:none}.solenoid-canvas{width:100%;height:100%;background-color:var(--canvas-bg);--dot-pct: 100%;background-image:radial-gradient(circle,color-mix(in srgb,var(--canvas-dot) var(--dot-pct),transparent) 1px,transparent 1px);background-size:24px 24px;touch-action:none;-webkit-touch-callout:none;position:relative;isolation:isolate}.solenoid-canvas--locked .solenoid-node,.solenoid-canvas--locked .solenoid-node *,.solenoid-canvas--locked .solenoid-group,.solenoid-canvas--locked .solenoid-group *,.solenoid-canvas--locked .solenoid-cable-hit{pointer-events:none!important}.solenoid-cable-flow{stroke-dasharray:.01 72;animation:solenoid-cable-flow 2.25s linear infinite}@keyframes solenoid-cable-flow{to{stroke-dashoffset:-72.01}}@media(prefers-reduced-motion:reduce){.solenoid-cable-flow{animation:none}}.solenoid-isolate-dim{opacity:.08;pointer-events:none;transition:opacity .15s ease}.solenoid-helpdlg{position:absolute;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.solenoid-helpdlg__panel{position:relative;width:min(460px,92vw);max-height:84vh;overflow:auto;padding:26px 26px 22px;background:var(--surface);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--shadow-pop)}.solenoid-helpdlg__close{position:absolute;top:12px;right:12px;display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;border-radius:6px}.solenoid-helpdlg__close:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-helpdlg__about{text-align:center}.solenoid-helpdlg__wordmark{font-size:30px;font-weight:700;letter-spacing:-.01em;color:var(--text-bright)}.solenoid-helpdlg__version{margin-top:2px;font-size:12px;font-family:var(--font-mono);color:var(--text-muted)}.solenoid-helpdlg__tagline{margin:16px 0 8px;font-size:14px;font-weight:600;color:var(--text)}.solenoid-helpdlg__about-body{margin:0 auto 20px;max-width:34ch;font-size:13px;line-height:1.55;color:var(--text-dim)}.solenoid-helpdlg__eyebrow{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.solenoid-helpdlg__slide{min-height:148px;padding:18px 2px 8px}.solenoid-helpdlg__slide-num{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.solenoid-helpdlg__slide-title{margin:8px 0 10px;font-size:20px;font-weight:700;line-height:1.2;color:var(--text-bright)}.solenoid-helpdlg__slide-body{font-size:14px;line-height:1.55;color:var(--text-dim)}.solenoid-helpdlg__nav{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.solenoid-helpdlg__dots{display:flex;align-items:center;gap:7px}.solenoid-helpdlg__dot{width:7px;height:7px;padding:0;border:none;border-radius:50%;background:var(--border-strong);cursor:pointer;transition:background .12s}.solenoid-helpdlg__dot--on{background:var(--accent)}.solenoid-helpdlg__dot:hover{background:var(--text-dim)}.solenoid-helpdlg__btn{padding:7px 14px;font-size:13px;font-weight:500;color:var(--text);background:var(--btn-bg);border:1px solid var(--border);border-radius:7px;cursor:pointer}.solenoid-helpdlg__btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-bright)}.solenoid-helpdlg__btn:disabled{opacity:.4;cursor:default}.solenoid-helpdlg__btn--accent{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.solenoid-helpdlg__btn--accent:hover:not(:disabled){color:var(--accent-ink);filter:brightness(1.06)}.solenoid-menubar__center{position:absolute;left:50%;top:0;bottom:0;transform:translate(-50%);display:flex;align-items:center;pointer-events:none}.solenoid-menubar__center>.solenoid-doctitle{pointer-events:auto}.solenoid-doctitle{position:relative;display:flex;align-items:center;gap:2px;max-width:42vw}.solenoid-doctitle__name{font-family:inherit;font-size:12.5px;font-weight:600;color:var(--accent-ink);max-width:38vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:none;border:1px solid transparent;border-radius:5px;padding:2px 8px;cursor:text}.solenoid-doctitle__name:hover{background:color-mix(in srgb,var(--accent-ink) 14%,transparent)}.solenoid-doctitle__input{font-family:inherit;font-size:12.5px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--accent);border-radius:5px;padding:2px 8px;outline:none;min-width:160px;max-width:38vw}.solenoid-doctitle__caret{display:flex;align-items:center;justify-content:center;width:24px;height:22px;background:none;border:1px solid transparent;border-radius:5px;color:var(--accent-ink);cursor:pointer}.solenoid-doctitle__caret:hover,.solenoid-doctitle__caret--open{background:color-mix(in srgb,var(--accent-ink) 18%,transparent)}.solenoid-doctitle__menu{position:fixed;z-index:200;min-width:240px;max-width:320px;max-height:70vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 12px 36px #00000073;padding:6px}.solenoid-doctitle__section-head{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, var(--text));opacity:.7;padding:6px 8px 4px}.solenoid-doctitle__docs{display:flex;flex-direction:column}.solenoid-doctitle__doc-open{width:100%;display:flex;align-items:center;gap:6px;background:none;border:none;border-radius:5px;padding:6px 8px;color:var(--text);font:inherit;font-size:12.5px;text-align:left;cursor:pointer;overflow:hidden}.solenoid-doctitle__doc-open:hover,.solenoid-doctitle__action:hover{background:var(--border-subtle)}.solenoid-doctitle__doc--current .solenoid-doctitle__doc-name{font-weight:700}.solenoid-doctitle__check{width:12px;flex:none;color:var(--accent)}:root[data-theme=light] .solenoid-doctitle__check{color:var(--text)}.solenoid-doctitle__doc-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solenoid-doctitle__doc-row{display:flex;align-items:center;border-radius:5px}.solenoid-doctitle__doc-row:hover{background:var(--border-subtle)}.solenoid-doctitle__doc-row .solenoid-doctitle__doc-open{flex:1;min-width:0}.solenoid-doctitle__doc-row .solenoid-doctitle__doc-open:hover{background:none}.solenoid-doctitle__doc-rename{flex:1;min-width:0;font-family:inherit;font-size:12.5px;color:var(--text);background:var(--surface);border:1px solid var(--accent);border-radius:5px;padding:3px 8px;margin:1px 4px 1px 2px;outline:none}.solenoid-doctitle__doc-action{flex:none;display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:2px;padding:0;background:none;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;opacity:.4;transition:opacity .12s ease}.solenoid-doctitle__doc-row:hover .solenoid-doctitle__doc-action,.solenoid-doctitle__doc-action:focus-visible{opacity:1}.solenoid-doctitle__doc-action:hover{background:color-mix(in srgb,var(--text) 14%,transparent);color:var(--text)}.solenoid-doctitle__doc-action--danger:hover{color:#e0524d}.solenoid-doctitle__action{display:block;width:100%;background:none;border:none;border-radius:5px;padding:6px 8px;color:var(--text);font:inherit;font-size:12.5px;text-align:left;cursor:pointer}.solenoid-doctitle__template{color:var(--text)}.solenoid-doctitle__sep{height:1px;background:var(--border-strong);margin:5px 2px}.solenoid-menubar{position:relative;z-index:2;display:flex;align-items:stretch;height:22px;padding:env(safe-area-inset-top) 6px 0;background:var(--accent);color:var(--accent-ink);border-bottom:1px solid rgba(0,0,0,.18);-webkit-user-select:none;user-select:none;font-size:12px}.solenoid-menubar__item{position:relative;display:flex}.solenoid-menubar__top{height:100%;padding:0 9px;background:transparent;border:none;color:var(--accent-ink);font-family:inherit;font-size:12px;cursor:pointer}.solenoid-menubar__top:hover{background:color-mix(in srgb,var(--accent-ink) 14%,transparent)}.solenoid-menubar__top--open{background:color-mix(in srgb,var(--accent-ink) 22%,transparent)}.solenoid-menubar__dropdown{position:absolute;top:100%;left:0;z-index:20;min-width:220px;padding:4px;background:var(--surface);border:1px solid var(--panel-border);border-radius:8px;box-shadow:var(--shadow-pop)}.solenoid-menubar__option{display:flex;align-items:center;gap:8px;width:100%;padding:5px 8px;background:transparent;border:none;border-radius:5px;color:var(--text);font-family:inherit;font-size:12px;text-align:left;cursor:pointer}.solenoid-menubar__option:hover:not(:disabled){background:var(--accent-soft)}.solenoid-menubar__option:disabled{color:var(--text-muted);cursor:default}.solenoid-menubar__check{flex:0 0 12px;width:12px;color:var(--accent);text-align:center}.solenoid-menubar__label{flex:1 1 auto}.solenoid-menubar__shortcut{flex:0 0 auto;color:var(--text-dim);font-size:11px;font-variant-numeric:tabular-nums}.solenoid-menubar__sep{height:1px;margin:4px 6px;background:var(--panel-border)}.solenoid-apptools{display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none}.solenoid-apptools__pill{position:relative;display:inline-flex;align-items:center;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px}.solenoid-apptools__pill .solenoid-apptools__btn{background:transparent;border:none}.solenoid-apptools__pill .solenoid-apptools__btn:first-of-type{border-radius:999px 0 0 999px}.solenoid-apptools__pill .solenoid-apptools__btn:last-of-type{border-radius:0 999px 999px 0}.solenoid-apptools__paint{position:relative}.solenoid-apptools__paint-dot{position:absolute;right:4px;bottom:4px;width:7px;height:7px;border-radius:50%;border:1px solid var(--surface);pointer-events:none}.solenoid-apptools__palette{position:absolute;top:34px;right:0;z-index:6;display:flex;flex-direction:column;align-items:stretch;gap:6px}.solenoid-apptools__palette-theme{display:none;align-items:center;gap:8px;padding:8px 10px;background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;box-shadow:var(--shadow-pop);color:var(--text);font-family:inherit;font-size:13px;cursor:pointer}.solenoid-apptools__palette-theme:active{background:var(--btn-hover)}.solenoid-apptools__btn{width:28px;height:28px;background:var(--btn-bg);border:1px solid var(--btn-border);color:var(--text);border-radius:50%;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}.solenoid-apptools__btn:hover{background:var(--btn-hover);border-color:var(--accent);color:var(--accent)}.solenoid-outline__open-pill{position:absolute;top:80px;left:12px;z-index:5;display:inline-flex;align-items:stretch;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--panel-border);border-radius:16px;box-shadow:var(--shadow-pop);overflow:hidden}.solenoid-outline__open-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0;background:none;border:none;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.solenoid-outline__open-btn:hover{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.solenoid-outline__open-btn+.solenoid-outline__open-btn{box-shadow:inset 1px 0 0 var(--panel-border)}.solenoid-outline{position:absolute;top:80px;left:12px;bottom:30px;z-index:5;width:248px;box-sizing:border-box;display:flex;flex-direction:column;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--shadow-pop);-webkit-user-select:none;user-select:none;overflow:hidden}.solenoid-outline__header{display:flex;align-items:center;gap:8px;padding:8px 8px 8px 12px;border-bottom:1px solid var(--panel-border)}.solenoid-outline__title{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim)}.solenoid-outline__count{flex:1 1 auto;font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.solenoid-outline__collapse{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:none;color:var(--text-dim);font-size:16px;line-height:1;cursor:pointer;border-radius:5px}.solenoid-outline__collapse:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-outline__collapse-all{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:none;color:var(--text-dim);cursor:pointer;border-radius:5px}.solenoid-outline__collapse-all:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-outline__collapse-all svg{display:block}.solenoid-outline__search{margin:8px 8px 6px;height:26px;padding:0 8px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:6px;color:var(--text);font-family:inherit;font-size:12px;outline:none}.solenoid-outline__search:focus{border-color:var(--accent)}.solenoid-outline__filters{display:flex;gap:6px;padding:0 8px 8px}.solenoid-outline__sortrow{display:flex;align-items:center;gap:6px;padding:0 8px 8px}.solenoid-outline__sortlabel{font-size:11px;color:var(--text-dim);margin-right:auto}.solenoid-outline__sortbtn{height:22px;padding:0 10px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px;color:var(--text-dim);font-size:11px;cursor:pointer}.solenoid-outline__sortbtn:hover{color:var(--text);border-color:var(--btn-border-hover)}.solenoid-outline__sortbtn--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.solenoid-outline__chip{flex:1 1 auto;height:24px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px;color:var(--text-dim);font-family:inherit;font-size:11.5px;cursor:pointer}.solenoid-outline__chip:hover{color:var(--text);border-color:var(--btn-border-hover)}.solenoid-outline__chip--on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.solenoid-outline__list{flex:1 1 auto;overflow-y:auto;padding:0 6px 6px;transform:translateZ(0);contain:paint}.solenoid-outline__empty{padding:12px;text-align:center;font-size:12px;color:var(--text-muted)}.solenoid-outline__row{display:flex;align-items:center;gap:8px;width:100%;box-sizing:border-box;padding:5px 8px;margin-top:2px;border-radius:6px;color:var(--text);font-size:12.5px;text-align:left;cursor:pointer}.solenoid-outline__row:hover{background:var(--btn-hover)}.solenoid-outline__row--sel{background:var(--accent-soft);color:var(--accent)}.solenoid-outline__row--sel:hover{background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent)}.solenoid-outline__row--group{font-weight:600}.solenoid-outline__row--group:hover{background:inherit;box-shadow:inset 0 0 0 100vmax #ffffff14}.solenoid-outline__chevron{flex:0 0 auto;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;color:inherit;cursor:pointer}.solenoid-outline__chevron svg{display:block;transition:transform 90ms ease}.solenoid-outline__dot{flex:0 0 auto;width:9px;height:9px;border-radius:2px}.solenoid-outline__label{flex:1 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.solenoid-outline__plug{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px;padding:1px 4px 1px 2px;background:transparent;border:none;border-radius:5px;color:var(--text-muted);cursor:pointer;opacity:.65}.solenoid-outline__row:hover .solenoid-outline__plug{opacity:1}.solenoid-outline__plug:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-outline__plug--on{color:var(--accent);opacity:1}.solenoid-outline__plug svg{display:block}.solenoid-outline__plug-count{font-size:10px;font-variant-numeric:tabular-nums;line-height:1}.solenoid-outline__conns{display:flex;flex-direction:column;gap:1px;padding-right:6px;margin:1px 0 3px}.solenoid-outline__conn{display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:5px;font-size:11.5px;color:var(--text-dim)}.solenoid-outline__conn:hover{background:var(--btn-hover)}.solenoid-outline__conn-text{flex:1 1 auto;display:flex;align-items:baseline;gap:5px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.solenoid-outline__conn-dir{flex:0 0 auto;color:var(--text-muted)}.solenoid-outline__conn-sock{flex:0 0 auto;color:var(--text)}.solenoid-outline__conn-other{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--text-muted)}.solenoid-outline__conn-btn{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:transparent;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;opacity:0}.solenoid-outline__conn:hover .solenoid-outline__conn-btn{opacity:.8}.solenoid-outline__conn-btn:hover{background:var(--btn-hover);color:var(--accent);opacity:1}.solenoid-outline__conn-btn--del:hover{color:#e26d6d}.solenoid-outline__conn-btn svg{display:block}@media(pointer:coarse){.solenoid-outline__conn-btn{opacity:.8}.solenoid-outline__plug{opacity:1}}.solenoid-topbar{position:relative;z-index:1;display:flex;align-items:center;gap:8px;height:44px;padding:0 12px;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--panel-border);box-shadow:0 2px 0 0 var(--accent),var(--shadow-pop);-webkit-user-select:none;user-select:none}.solenoid-topbar__mark{display:block;height:28px;aspect-ratio:573 / 119;background-color:var(--wordmark-color);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.solenoid-topbar__icon{display:none;align-items:center;justify-content:center;flex:0 0 auto;align-self:center;width:34px;height:34px;padding:0;border:1px solid var(--btn-border);border-radius:50%;appearance:none;-webkit-appearance:none;background:var(--btn-bg);cursor:pointer;-webkit-tap-highlight-color:transparent}.solenoid-topbar__icon:active{background:var(--btn-hover)}.solenoid-topbar__nav{display:none}.solenoid-topbar__icon-glyph{display:block;width:20px;height:20px;background-color:var(--wordmark-color);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.solenoid-topbar__divider{align-self:stretch;width:1px;margin:8px 2px;background:var(--panel-border)}.solenoid-topbar__art{flex:1 1 auto;min-width:0;align-self:stretch;display:flex;align-items:center;overflow:hidden}.solenoid-topbar__art-svg{display:block;height:100%;width:100%;object-fit:contain}.solenoid-topbar__group{display:flex;align-items:center;gap:2px;padding:0;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px}.solenoid-topbar__doctitle{display:none}.solenoid-header{position:absolute;top:0;left:0;right:0;z-index:6;display:flex;flex-direction:column}.solenoid-mobile-bar{display:none;position:fixed;left:0;right:0;bottom:0;align-items:center;justify-content:space-between;gap:2px;padding:5px 10px calc(5px + env(safe-area-inset-bottom));background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--panel-border);z-index:100;-webkit-user-select:none;user-select:none}.solenoid-mobile-bar__btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:38px;height:38px;padding:0;background:transparent;border:none;border-radius:50%;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent}.solenoid-mobile-bar__btn:active{background:var(--btn-hover)}.solenoid-mobile-bar__btn:disabled{opacity:.3;pointer-events:none}.solenoid-mobile-bar__btn--dim{opacity:.3}.solenoid-mobile-bar__select.solenoid-mobile-bar__btn--on{background:var(--accent-soft);color:var(--accent)}.solenoid-mobile-bar__delete:active{color:#e26d6d}.solenoid-mobile-bar__add{width:46px;height:46px;background:var(--accent);color:var(--accent-ink);box-shadow:var(--shadow-pop);transform:translateY(-8px)}.solenoid-mobile-bar__add:active{background:var(--accent);filter:brightness(.92)}.fr-backdrop{position:fixed;inset:0;background:#000000a6;z-index:9000;display:flex;align-items:center;justify-content:center}.fr-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;width:96vw;height:91vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #0009}.fr-tabs{display:flex;align-items:stretch;gap:2px;padding:6px 10px 0;background:var(--surface-sunken);border-bottom:1px solid var(--border);flex-shrink:0}.fr-tabs__scroll{display:flex;align-items:stretch;gap:2px;flex:1 1 auto;min-width:0}.fr-tab{padding:7px 14px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.fr-tab:hover{color:var(--text)}.fr-tab--active{color:var(--text-bright);border-bottom-color:var(--accent)}.fr-tabs{position:relative}.fr-tabs .fr-close{position:absolute;right:10px;top:0;bottom:0;margin-block:auto}.fr-doc-scroll{flex:1;overflow:auto;padding:22px 26px 40px}.fr-header{display:flex;flex-direction:column;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface-sunken);flex-shrink:0}.fr-header-row1{display:flex;align-items:center;gap:10px}.fr-title{font-size:14px;font-weight:600;color:var(--text-dim);white-space:nowrap}.fr-search{flex:1;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);font-family:inherit;font-size:13px;padding:5px 10px;outline:none;min-width:0}.fr-search::placeholder{color:var(--text-muted)}.fr-search:focus{border-color:var(--text-muted)}.fr-cats{display:flex;gap:5px;flex-wrap:wrap}.fr-cat{background:var(--surface);border:1px solid var(--border-strong);border-radius:5px;color:var(--text-dim);font-family:inherit;font-size:11px;padding:3px 8px;cursor:pointer;white-space:nowrap;transition:background .1s,color .1s}.fr-cat:hover{background:var(--border);color:var(--text-dim)}.fr-cat--active{background:var(--border-subtle);border-color:var(--text-muted);color:var(--text)}.fr-filters{display:flex;gap:5px;margin-left:auto}.fr-filter-pill{background:var(--surface);border:1px solid var(--border-strong);border-radius:5px;color:var(--text-dim);font-family:inherit;font-size:11px;padding:3px 8px;cursor:pointer;white-space:nowrap;transition:background .1s,color .1s,border-color .1s}.fr-filter-pill:hover{background:var(--border);color:var(--text-dim)}.fr-filter-pill--active{background:#2a1a0a;border-color:#c07830;color:#c07830}.fr-colcheck{display:inline-flex;align-items:center;gap:6px;padding-left:12px;box-shadow:inset 1px 0 0 var(--border);color:var(--text-dim);font-family:inherit;font-size:11px;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none}.fr-colcheck:hover{color:var(--text)}.fr-colcheck input{cursor:pointer;margin:0;accent-color:var(--accent)}.fr-close{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:none;border:none;color:var(--text-muted);font-family:inherit;font-size:18px;line-height:1;cursor:pointer;padding:0;border-radius:4px;flex-shrink:0}.fr-close:hover{color:var(--text-dim);background:var(--border)}.fr-stats{display:flex;gap:16px;padding:6px 16px;background:var(--surface-sunken);border-bottom:1px solid var(--surface-raised);font-size:11px;color:var(--text-muted);flex-shrink:0}.fr-stats span{display:flex;align-items:center;gap:5px}.fr-stats .dot{width:7px;height:7px;border-radius:50%;display:inline-block}.fr-stats .dot--yes{background:#3d9e5a}.fr-stats .dot--no{background:#c07830}.fr-stats .dot--miss{background:#5a7fb0}.fr-stats .dot--oos{background:var(--border-strong)}.fr-scroll{flex:1;overflow-y:auto;overflow-x:auto}.fr-table{width:100%;min-width:717px;border-collapse:collapse;font-size:12.5px;table-layout:fixed}.fr-table--excel{min-width:1067px}.fr-table col.col-excel{width:135px}.fr-table col.col-syntax{width:215px}.fr-table col.col-sol{width:165px}.fr-table col.col-packs{width:110px}.fr-table col.col-dep{width:42px}.fr-table col.col-parity{width:40px}.fr-table col.col-note{width:360px}.fr-table thead th{position:sticky;top:0;background:var(--surface);border-bottom:1px solid var(--border);color:var(--text-muted);font-weight:600;font-size:11px;text-align:left;padding:7px 10px;text-transform:uppercase;letter-spacing:.04em;z-index:2}.fr-table thead th.col-parity,.fr-table thead th.col-dep{text-align:center}.fr-td-packs{color:var(--text-muted);font-size:11px}.fr-td-dep{text-align:center;color:var(--accent)}.fr-table tbody tr{border-bottom:1px solid var(--surface-raised);transition:background .08s}.fr-table tbody tr:hover{background:var(--surface-raised)}.fr-table td{padding:6px 10px;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fr-group-row td{background:var(--surface-sunken);color:var(--text-muted);font-size:11px;font-weight:600;padding:5px 10px;text-transform:uppercase;letter-spacing:.06em;border-top:1px solid var(--border-subtle)}.fr-td-excel{font-weight:600;color:var(--text);font-family:var(--font-mono);font-size:12px}.fr-td-excel--missing{color:var(--border-strong)}.fr-td-excel--sol-only{color:var(--text-muted);font-style:italic;font-weight:400}.fr-td-syntax{color:var(--text-dim);font-family:var(--font-mono);font-size:11.5px}.fr-td-sol{color:#9ecbff;font-size:12px}.fr-td-sol--missing{color:var(--border-strong)}.fr-td-parity{text-align:center}.fr-parity-yes{color:#3d9e5a;font-size:14px;font-weight:700}.fr-parity-warn{color:#c07830;font-size:13px}.fr-parity-miss{color:var(--border-strong);font-size:13px}.fr-sol-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid transparent;border-radius:4px;color:#9ecbff;font-family:inherit;font-size:12px;cursor:pointer;padding:1px 5px 1px 3px;text-align:left;transition:background .1s,border-color .1s}.fr-sol-btn:hover{background:#1a2a3a;border-color:#3a5a8a}.fr-sol-btn__add{font-size:13px;font-weight:700;color:#5a9a6a;opacity:0;transition:opacity .1s}.fr-sol-btn:hover .fr-sol-btn__add{opacity:1}.fr-sol-composition{color:#7a9abf;font-style:italic;font-size:12px}.fr-td-note{color:var(--text-muted);font-size:11.5px;font-style:italic;white-space:normal;line-height:1.4}.fr-td-note--ok{color:#3a6348;font-style:normal}.fr-empty{text-align:center;color:var(--border-strong);padding:48px 0;font-size:13px}.fr-sockets{padding:6px 6px 16px;max-width:440px}.fr-sockets__intro{margin:0 0 16px;color:var(--text-dim);font-size:13px;line-height:1.55}.fr-sockets .solenoid-legend__row{margin-bottom:13px}.fr-sockets .solenoid-legend__type{font-size:14px}.report-backdrop{position:fixed;inset:0;background:#000000a6;z-index:9000;display:flex;align-items:center;justify-content:center}.report-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:10px;width:92vw;height:88vh;max-width:1200px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #0009}.report-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--surface-sunken);border-bottom:1px solid var(--border);flex-shrink:0}.report-title{font-size:14px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-header-actions{position:relative;display:flex;align-items:center;gap:8px;flex-shrink:0}.report-embed-btn{padding:5px 12px;background:var(--surface);border:1px solid var(--border);border-radius:999px;color:var(--text);font-family:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.report-embed-btn:hover:not(:disabled){background:var(--btn-hover);border-color:var(--border-strong)}.report-embed-btn:disabled{opacity:.4;cursor:default}.report-embed-picker{position:absolute;top:34px;right:92px;z-index:11;display:flex;flex-direction:column;gap:1px;max-height:240px;overflow-y:auto;padding:4px;min-width:160px;background:var(--surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow-pop)}.report-embed-opt{padding:6px 9px;background:none;border:none;border-radius:5px;color:var(--text);font-size:12px;text-align:left;cursor:pointer}.report-embed-opt:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}.report-close{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:50%;color:var(--text);cursor:pointer}.report-close:hover{background:var(--btn-hover);border-color:var(--border-strong)}.report-body{display:flex;flex:1;min-height:0}.report-source{flex:1 1 50%;min-width:0;padding:16px 18px;background:var(--surface-sunken);border:none;border-right:1px solid var(--border);outline:none;resize:none;color:var(--text);font-family:var(--font-mono);font-size:13px;line-height:1.55}.report-source::placeholder{color:var(--text-muted)}.report-preview{flex:1 1 50%;min-width:0;overflow:auto;padding:16px 24px}.report-preview__md{max-width:none;margin:0}.report-preview__md>:first-child,.report-preview__md>*>:first-child{margin-top:0}.report-preview__md>:last-child,.report-preview__md>*>:last-child{margin-bottom:0}.report-preview__empty{color:var(--text-muted);font-size:13px}.report-embeds{display:flex;flex-direction:column;gap:10px;margin-top:18px}.report-embed{display:block;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin:12px 0}.report-embed-missing{font-family:var(--font-mono, monospace);font-size:12px;color:var(--text-muted)}.report-embed__header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;background:var(--surface-sunken);border-bottom:1px solid var(--border)}.report-embed__name{font-size:11.5px;font-weight:600;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-embed__remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:none;border:none;border-radius:50%;color:var(--text-dim);cursor:pointer;flex-shrink:0}.report-embed__remove:hover{background:color-mix(in srgb,var(--sol-error) 14%,transparent);color:var(--sol-error)}.report-embed__body{max-height:200px;overflow:auto;padding:10px 14px;font-size:12.5px}.report-tabs{display:none}@media(max-width:760px){.report-tabs{display:flex;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--surface-sunken)}.report-tab{flex:1 1 50%;padding:11px 8px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.report-tab--active{color:var(--text-bright);border-bottom-color:var(--accent)}.report-body{flex-direction:column}.report-source,.report-preview{flex:1 1 100%}.report-body[data-tab=draft] .report-preview,.report-body[data-tab=preview] .report-source{display:none}.report-source{border-right:none}.report-preview{margin:0;max-width:none;align-self:stretch}.report-preview{padding:14px 16px}.report-preview .solenoid-ref-figure,.report-preview .solenoid-ref-embed,.report-preview .report-embed{max-width:100%;overflow-x:auto}.report-preview .solenoid-ref-embed__body,.report-preview .report-embed__body{overflow-x:auto}}html.is-mobile .report-panel{width:100vw;height:100vh;height:100dvh;max-width:none;border:none;border-radius:0}html.is-mobile .report-header{flex-wrap:wrap;padding:calc(8px + env(safe-area-inset-top)) 12px 8px}html.is-mobile .report-embed-btn{padding:8px 12px;font-size:12.5px}html.is-mobile .report-source{padding-bottom:calc(16px + env(safe-area-inset-bottom))}.report-dock-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:50%;color:var(--text);cursor:pointer}.report-dock-btn:hover{background:var(--btn-hover);border-color:var(--border-strong)}.report-dock-btn--on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}html.is-mobile .report-dock-btn{display:none}html.sol-report-docked{--report-dock-w: 440px;--report-dock-top: 66px;--report-dock-bottom: 19px}.report-panel--docked{position:fixed;top:var(--report-dock-top);right:0;bottom:var(--report-dock-bottom);width:var(--report-dock-w);height:auto;max-width:none;border:none;border-left:1px solid var(--border-strong);border-radius:0;box-shadow:-10px 0 28px #00000059;z-index:90}.report-panel--docked .report-tabs{display:flex;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--surface-sunken)}.report-panel--docked .report-tab{flex:1 1 50%;padding:11px 8px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.report-panel--docked .report-tab--active{color:var(--text-bright);border-bottom-color:var(--accent)}.report-panel--docked .report-body{flex-direction:column}.report-panel--docked .report-source,.report-panel--docked .report-preview{flex:1 1 100%}.report-panel--docked .report-body[data-tab=draft] .report-preview,.report-panel--docked .report-body[data-tab=preview] .report-source{display:none}.report-panel--docked .report-source{border-right:none}.report-panel--docked .report-preview{margin:0;max-width:none;align-self:stretch}html.sol-report-docked .solenoid-canvas-wrapper{width:calc(100% - var(--report-dock-w))}html.sol-report-docked .solenoid-nav,html.sol-report-docked .solenoid-hud-stack{right:calc(12px + var(--report-dock-w))}.solenoid-composite-editor__backdrop{position:fixed;inset:0;background:var(--canvas-bg);z-index:4;outline:none}.solenoid-composite-editor__crumbs{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden;flex:1}.solenoid-composite-editor__crumb{background:none;border:none;padding:2px 4px;font-size:13px;font-weight:500;color:var(--text-dim);cursor:pointer;border-radius:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.solenoid-composite-editor__crumb:hover:not(.solenoid-composite-editor__crumb--current){color:var(--text-bright);background:var(--surface)}.solenoid-composite-editor__crumb--current{color:var(--accent);font-weight:600;cursor:default}.solenoid-composite-editor__crumb--root{color:var(--text-muted)}.solenoid-composite-editor__crumb-wrap{display:inline-flex;align-items:center;gap:4px;min-width:0}.solenoid-composite-editor__crumb-sep{color:var(--text-muted);font-size:11px;flex-shrink:0}.solenoid-composite-editor__header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--surface-sunken);border-bottom:1px solid var(--border);flex-shrink:0}.solenoid-composite-editor__title{font-size:14px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solenoid-composite-editor__actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.solenoid-composite-editor__btn{display:flex;align-items:center;gap:5px;padding:4px 10px;font-size:12px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:6px;cursor:pointer}.solenoid-composite-editor__btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-bright)}.solenoid-composite-editor__btn:disabled{opacity:.4;cursor:default}.solenoid-composite-editor__btn--icon{padding:4px;width:26px;height:26px;justify-content:center}.solenoid-composite-editor__host{position:absolute;inset:0;overflow:hidden}.solenoid-composite-editor__strip{position:absolute;top:74px;left:12px;display:flex;align-items:center;gap:10px;padding:4px 6px 4px 8px;background:var(--surface-sunken);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:8px;box-shadow:0 1px 3px #0000002e,0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent);max-width:calc(100vw - 24px)}.solenoid-composite-editor__strip-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.solenoid-composite-editor__controls{position:absolute;top:120px;left:12px;width:240px;display:flex;flex-direction:column;font-size:12px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:8px;box-shadow:0 1px 3px #0000002e}.solenoid-composite-editor__controls--collapsed{width:auto}.solenoid-composite-editor__controls-head{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:6px 10px;background:none;border:none;color:var(--text-dim);font-size:12px;font-weight:600;cursor:pointer;border-radius:8px}.solenoid-composite-editor__controls-head:hover{color:var(--text-bright)}.solenoid-composite-editor__controls-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solenoid-composite-editor__controls-body{display:flex;flex-direction:column;gap:4px;padding:0 10px 8px;max-height:calc(100vh - 200px);overflow-y:auto}html.sol-drilled-in .solenoid-minimap{display:none}html.sol-drilled-in .solenoid-composite-editor__host .solenoid-minimap{display:block}html.sol-drilled-in .solenoid-outline,html.sol-drilled-in .solenoid-outline__open-pill{display:none}.solenoid-composite-editor__canvas{position:absolute;inset:0}.solenoid-composite-editor__loading{position:absolute;inset:0;background:var(--canvas-bg)}html.is-mobile .solenoid-composite-editor__strip{top:calc(88px + env(safe-area-inset-top));left:8px;flex-direction:column;align-items:stretch;gap:5px;padding:4px 6px;max-width:calc(100vw - 150px)}html.is-mobile .solenoid-composite-editor__crumbs{flex:0 0 auto}html.is-mobile .solenoid-composite-editor__crumb{font-size:11.5px;padding:1px 3px;max-width:130px}html.is-mobile .solenoid-composite-editor__crumb-sep{font-size:10px}html.is-mobile .solenoid-composite-editor__btn{min-height:36px;padding:7px 14px;font-size:13px}html.is-mobile .solenoid-composite-editor__controls{top:auto;bottom:calc(96px + env(safe-area-inset-bottom));left:8px;width:min(280px,calc(100vw - 16px))}html.is-mobile .solenoid-composite-editor__controls-head{min-height:40px}html.is-mobile .solenoid-composite-editor__controls-body{max-height:40vh}html.is-mobile .solenoid-composite-editor__host .solenoid-minimap{display:none}html.solenoid-presenting .solenoid-header,html.solenoid-presenting .solenoid-nav,html.solenoid-presenting .solenoid-statusbar,html.solenoid-presenting .solenoid-outline,html.solenoid-presenting .solenoid-outline__open-pill,html.solenoid-presenting .solenoid-legend,html.solenoid-presenting .solenoid-minimap,html.solenoid-presenting .solenoid-mobile-bar,html.solenoid-presenting .solenoid-hud-stack{display:none!important}.solenoid-present{position:fixed;inset:0;z-index:9200;cursor:pointer}.solenoid-present__bar{position:absolute;left:50%;bottom:26px;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--surface-raised, var(--surface));border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 10px 34px #00000073;cursor:default;max-width:calc(100vw - 32px)}.solenoid-present__btn{display:flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 6px;font-size:20px;line-height:1;color:var(--text);background:var(--surface-sunken);border:1px solid var(--border);border-radius:8px;cursor:pointer}.solenoid-present__btn:hover:not(:disabled){color:var(--text-bright);border-color:var(--border-strong)}.solenoid-present__btn:disabled{opacity:.35;cursor:default}.solenoid-present__btn--exit{font-size:14px;color:var(--text-dim)}.solenoid-present__label{display:flex;flex-direction:column;align-items:center;gap:1px;padding:0 10px;min-width:120px;max-width:360px}.solenoid-present__title{font-size:13px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.solenoid-present__counter{font-size:11px;font-family:var(--font-mono);color:var(--text-muted)}.conn-dialog__overlay{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;background:#00000059;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.conn-dialog{width:min(680px,94vw);box-sizing:border-box;padding:16px;background:var(--surface);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--shadow-pop);font-family:inherit;color:var(--text)}.conn-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.conn-dialog__title{font-size:14px;font-weight:700}.conn-dialog__check{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.conn-dialog__check input{accent-color:var(--accent);cursor:pointer}.conn-dialog__label{display:block;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:8px 0 4px}.conn-dialog__arrow{text-align:center;color:var(--text-dim);font-size:16px;margin:6px 0 2px}.conn-dialog__combo{position:relative}.conn-dialog__input{width:100%;box-sizing:border-box;height:38px;padding:0 10px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:7px;color:var(--text-bright);font-family:inherit;font-size:14px;outline:none}.conn-dialog__input:focus{border-color:var(--accent)}.conn-dialog__menu{position:absolute;top:calc(100% + 3px);left:0;right:0;z-index:2;max-height:240px;overflow-y:auto;background:var(--surface);border:1px solid var(--panel-border);border-radius:8px;box-shadow:var(--shadow-pop);padding:3px}.conn-dialog__opt{display:flex;align-items:baseline;gap:6px;width:100%;padding:8px 9px;background:transparent;border:none;border-radius:6px;color:var(--text);font-family:inherit;font-size:13px;text-align:left;cursor:pointer}.conn-dialog__opt:hover,.conn-dialog__opt--active{background:var(--accent-soft)}.conn-dialog__opt-node{font-weight:600;white-space:nowrap}.conn-dialog__opt-sep{color:var(--text-muted)}.conn-dialog__opt-sock{color:var(--text-dim);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conn-dialog__opt-type{flex:0 0 auto;font-size:10.5px;color:var(--text-muted);border:1px solid var(--border);border-radius:999px;padding:0 6px}.conn-dialog__error{min-height:18px;margin:10px 0 4px;font-size:12px;color:#e26d6d}.conn-dialog__buttons{display:flex;justify-content:flex-end;gap:8px}.conn-dialog__btn{height:34px;padding:0 14px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:7px;color:var(--text);font-family:inherit;font-size:13px;cursor:pointer}.conn-dialog__btn:hover{border-color:var(--btn-border-hover)}.conn-dialog__btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.conn-dialog__btn--primary:disabled{opacity:.45;cursor:default}.fx-editor{position:relative;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-family:var(--font-mono, ui-monospace, "SF Mono", Menlo, monospace);font-size:12.5px;line-height:1.5}.fx-editor__hl,.fx-editor__ta{margin:0;padding:7px 9px;font:inherit;letter-spacing:0;tab-size:2;white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;box-sizing:border-box;border:0}.fx-editor__hl{position:absolute;inset:0;pointer-events:none;overflow:hidden;color:var(--text)}.fx-editor__ta{position:relative;display:block;width:100%;background:transparent;color:transparent;caret-color:var(--text);resize:none;outline:none;overflow:auto}.fx-editor__ta::placeholder{color:var(--text-muted);opacity:1}.fx-editor .fx-fn{color:#4aa3df;font-weight:600}.fx-editor .fx-unknown{color:#e0707a}.fx-editor .fx-var{color:#d9a521}.fx-editor .fx-const{color:#b48cff}.fx-editor .fx-num{color:#4cae8f}.fx-editor .fx-str{color:#8aab46}.fx-editor .fx-op,.fx-editor .fx-paren,.fx-editor .fx-comma{color:var(--text-muted)}.fx-editor .fx-err{color:#e0707a;text-decoration:underline wavy}.fx-editor__menu{position:absolute;top:calc(100% + 3px);left:0;z-index:30;margin:0;padding:3px;list-style:none;min-width:170px;max-height:210px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:7px;box-shadow:var(--shadow-card);font-family:var(--font-mono, ui-monospace, monospace);font-size:12px}.fx-editor__item{display:flex;align-items:center;gap:7px;padding:3px 7px;border-radius:5px;cursor:pointer;color:var(--text);white-space:nowrap}.fx-editor__item--on{background:color-mix(in srgb,var(--node-accent, #4aa3df) 24%,transparent)}.fx-editor__item:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}.fx-editor__kind{width:13px;text-align:center;font-size:11px;opacity:.85}.fx-editor__kind--fn{color:#4aa3df}.fx-editor__kind--const{color:#b48cff}.fx-editor__kind--var{color:#d9a521}.fx-editor__name{letter-spacing:.01em}.sol-popup-overlay{position:fixed;inset:0;z-index:9500;display:flex;align-items:center;justify-content:center;padding:10px;box-sizing:border-box;background:#00000059;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.sol-popup{position:relative;box-sizing:border-box;max-width:100%;max-height:100%;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-pop);font-family:inherit;color:var(--text)}.sol-popup button,.sol-popup select{font-family:inherit}.sol-popup__header{position:relative;display:flex;align-items:center;gap:10px;padding:8px 10px 8px 14px;margin:-1px -1px 0;border:2px solid var(--node-accent, transparent);border-bottom:none;box-shadow:inset 0 -1px 0 var(--border);border-top-left-radius:8px;border-top-right-radius:8px;background:color-mix(in srgb,var(--node-accent, var(--surface)) var(--header-tint),var(--surface))}.sol-popup__title{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text))}.sol-popup__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text));font-size:20px;line-height:1;cursor:pointer;padding:0}.sol-popup__close:hover{color:color-mix(in srgb,var(--node-accent, var(--text)) 80%,var(--text))}.sol-popup__pin{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;border-radius:4px;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text));cursor:pointer;padding:0;opacity:.7}.sol-popup__pin:hover{opacity:1;color:color-mix(in srgb,var(--node-accent, var(--text)) 80%,var(--text))}.sol-popup-menu{position:relative;flex-shrink:0;display:inline-flex}.sol-popup-menu__trigger{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;border-radius:4px;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 55%,var(--text));cursor:pointer;padding:0;opacity:.7}.sol-popup-menu__trigger:hover{opacity:1;color:color-mix(in srgb,var(--node-accent, var(--text)) 80%,var(--text))}.sol-popup-menu__list{position:absolute;top:calc(100% + 4px);right:0;z-index:20;min-width:168px;display:flex;flex-direction:column;padding:4px;background:var(--surface-raised, var(--surface));border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-pop)}.sol-popup-menu__item{text-align:left;padding:6px 10px;background:none;border:none;border-radius:4px;color:var(--text);font-size:12px;cursor:pointer;white-space:nowrap}.sol-popup-menu__item:hover:not(:disabled){background:color-mix(in srgb,var(--node-accent, var(--text)) 12%,transparent)}.sol-popup-menu__item:disabled{color:var(--text-dim);cursor:default}.sol-popup__pin--on{opacity:1;color:var(--node-accent, var(--accent));background:color-mix(in srgb,var(--node-accent, var(--accent)) 16%,transparent)}.sol-popup--grouped{border-width:2px;border-color:color-mix(in srgb,var(--group-color, var(--text-dim)) 78%,transparent)}.sol-popup--grouped .sol-popup__header{margin:-2px -2px 0}:root[data-theme=light] .sol-popup--grouped{border-color:var(--group-color-dark, var(--border-strong))}.sol-popup--grouped:before{content:"";position:absolute;inset:-2px;border-radius:8px;background:color-mix(in srgb,var(--group-color, var(--text-dim)) 78%,var(--surface));clip-path:polygon(100% 100%,100% calc(100% - 18px),calc(100% - 18px) 100%);pointer-events:none;z-index:5}:root[data-theme=light] .sol-popup--grouped:before{background:var(--group-color-dark, var(--border-strong))}@media(pointer:coarse){.sol-popup__header{padding:10px 10px 10px 14px}.sol-popup__close,.sol-popup__pin{width:34px;height:34px}.sol-popup__close{font-size:24px}.sol-popup__title{font-size:13px}}.formula-popup{width:min(880px,94vw)}.formula-popup__lock-tag{flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 70%,var(--text));background:color-mix(in srgb,var(--node-accent, transparent) 14%,transparent);border:1px solid color-mix(in srgb,var(--node-accent, var(--border-strong)) 45%,transparent);border-radius:999px;padding:2px 8px}.formula-popup__body{padding:14px}.formula-popup__render{display:flex;align-items:center;justify-content:center;min-height:76px;padding:16px 14px;background:var(--border-subtle);border:1px solid var(--border);border-radius:8px;overflow-x:auto}.formula-popup__render .katex{font-size:1.35em}.formula-popup__raw{font-family:Consolas,Monaco,Courier New,monospace;font-size:14px}.formula-popup__empty{color:var(--text-dim);font-style:italic;font-size:13px}.formula-popup__error{margin-top:8px;font-size:11px;color:#e06c2e}.formula-popup__edit-row{display:flex;align-items:flex-start;gap:6px;margin-top:12px}.formula-popup__prefix{font-size:14px;font-weight:600;color:color-mix(in srgb,var(--node-accent, var(--accent)) 70%,var(--text));line-height:30px;-webkit-user-select:none;user-select:none}.formula-popup__textarea{flex:1;width:0;min-height:30px;max-height:160px;padding:6px 8px;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.5;background:var(--surface);border:1px solid var(--border-strong);border-radius:6px;color:var(--text);resize:vertical;box-sizing:border-box}.formula-popup__textarea:focus{outline:none;border-color:var(--node-accent, var(--accent))}.formula-popup__textarea[readonly]{color:var(--text-dim);cursor:default}.formula-popup__edit-row .fx-editor{flex:1;min-width:0;max-height:180px}.formula-popup__edit-row .fx-editor__ta{min-height:30px}.formula-popup__steps{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.formula-popup__steps-title{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px}.formula-popup__inputs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.formula-popup__chip{display:inline-flex;align-items:center;gap:3px;font-size:12px;padding:2px 8px;border-radius:999px;background:var(--border-subtle);border:1px solid var(--border);color:var(--text)}.formula-popup__steplist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.formula-popup__step{display:flex;align-items:center;font-size:14px;padding:4px 10px;background:var(--border-subtle);border-radius:6px;overflow-x:auto}.formula-popup__steplist{counter-reset:step}.formula-popup__step:before{counter-increment:step;content:counter(step);flex-shrink:0;width:16px;margin-right:8px;font-size:10px;font-weight:700;color:var(--text-dim);text-align:right}.formula-popup__result{margin-top:10px;font-size:15px;color:var(--text)}.formula-popup__result strong{color:color-mix(in srgb,var(--node-accent, var(--accent)) 65%,var(--text))}.formula-popup__steps-note{margin-top:14px;padding-top:12px;border-top:1px solid var(--border);font-size:12px;color:var(--text-dim)}.formula-popup__engine-note{margin-top:10px;padding:6px 8px;font-size:11px;line-height:1.45;color:var(--text-muted);background:color-mix(in srgb,var(--text) 4%,transparent);border-radius:6px}.formula-popup__engine-note strong{color:var(--text);font-weight:600}.table-popup{width:min(1100px,94vw)}.table-popup__dims{flex-shrink:0;font-size:11px;font-family:var(--font-mono);color:color-mix(in srgb,var(--node-accent, var(--text-dim)) 45%,var(--text-dim))}.table-popup__grid-scroll{margin:12px 14px;max-height:56vh;overflow:auto;border:1px solid var(--border);border-radius:4px}.table-popup__grid{border-collapse:separate;border-spacing:0;font-family:var(--font-mono);font-size:13px}.table-popup__grid thead th{position:sticky;top:0;z-index:2}.table-popup__corner,.table-popup__colhead,.table-popup__rowhead{background:var(--surface-sunken);color:var(--text-dim);font-weight:500;font-size:11px;text-align:center;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:2px 6px;-webkit-user-select:none;user-select:none}.table-popup__rowhead{position:sticky;left:0;z-index:1;min-width:28px}.table-popup__colhead--name{text-align:left;font-weight:600;color:color-mix(in srgb,var(--node-accent, var(--text)) 70%,var(--text));white-space:nowrap;min-width:120px;padding:3px 6px}.table-popup__grid thead th.table-popup__corner{position:sticky;left:0;z-index:4}.table-popup__cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:0}.table-popup__cell--nan{background:color-mix(in srgb,var(--text-dim) 12%,transparent)}.table-popup__cell--nan .table-popup__input,.table-popup__cell--nan .table-popup__input[readonly]{color:var(--text-dim);font-style:italic}.table-popup__input{width:100%;min-width:72px;box-sizing:border-box;background:transparent;border:none;padding:4px 8px;color:var(--text-bright);font-family:var(--font-mono);font-size:13px;text-align:right;outline:none}.table-popup__input:focus{background:color-mix(in srgb,var(--accent) 16%,transparent);box-shadow:inset 0 0 0 1px var(--accent)}.table-popup__input[readonly]{color:var(--text);cursor:default}.table-popup__input--text{text-align:left;min-width:120px;font-family:var(--font-sans)}.table-popup__colhead-input{min-width:0;width:100%;padding:2px 6px;font-weight:600;font-size:12px;color:color-mix(in srgb,var(--node-accent, var(--text)) 70%,var(--text))}.table-popup__colhead-edit{display:flex;align-items:center;gap:4px}.table-popup__coltype{flex:0 0 auto;width:18px;height:18px;padding:0;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:700;line-height:1;color:var(--node-accent, var(--text));background:var(--surface);border:1px solid var(--border-strong);border-radius:4px;cursor:pointer}.table-popup__coltype:hover{border-color:var(--node-accent, var(--accent))}.table-popup__csv{display:block;box-sizing:border-box;width:calc(100% - 28px);margin:12px 14px;min-height:120px;max-height:56vh;padding:8px 10px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:4px;color:var(--text-bright);font-family:var(--font-mono);font-size:13px;line-height:1.5;white-space:pre;overflow:auto;resize:vertical;outline:none}.table-popup__csv:focus{box-shadow:inset 0 0 0 1px var(--accent)}.table-popup__csv[readonly]{color:var(--text)}.table-popup__view{display:inline-flex;flex-shrink:0;border:1px solid var(--border-strong);border-radius:999px;overflow:hidden}.table-popup__view button{font-size:12px;padding:5px 11px;background:var(--surface);border:none;color:var(--text-dim);cursor:pointer}.table-popup__view button+button{border-left:1px solid var(--border-strong)}.table-popup__view button[aria-pressed=true]{background:color-mix(in srgb,var(--node-accent, var(--accent)) 22%,var(--surface));color:var(--text)}.table-popup__source-check{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;font-size:12px;color:var(--text-dim);cursor:pointer;-webkit-user-select:none;user-select:none}.table-popup__source-check input{margin:0;cursor:pointer;accent-color:var(--node-accent, var(--accent))}.table-popup__dim-controls{display:flex;gap:6px;margin-left:10px}.table-popup__footer{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0 14px 14px}.table-popup__spacer{flex:1 1 0;min-width:0}.table-popup__btn{font-size:12px;padding:5px 12px;border-radius:4px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer}.table-popup__btn:hover{border-color:var(--accent)}.table-popup__btn--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink, #fff);font-weight:600}.table-popup__btn--primary:hover{filter:brightness(1.08)}@media(pointer:coarse){.table-popup__btn,.table-popup__view button{padding:9px 14px;font-size:13px}}@media(max-width:640px){.table-popup{width:96vw}.table-popup__grid-scroll{max-height:42vh;margin:10px}.table-popup__grid{font-size:14px}.table-popup__input{padding:9px 8px;font-size:14px}.table-popup__colhead,.table-popup__rowhead{font-size:12px}.table-popup__colhead--name{min-width:132px}.table-popup__coltype{width:26px;height:26px;font-size:13px}.table-popup__colhead-input{font-size:13px;padding:4px 6px}.table-popup__csv{font-size:14px;margin:10px;width:calc(100% - 20px)}}.cube-popup__crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:4px 10px;font-size:12px;border-bottom:1px solid var(--border)}.cube-popup__crumb{background:none;border:none;padding:1px 4px;border-radius:4px;color:var(--accent, var(--text-dim));cursor:pointer;font:inherit}.cube-popup__crumb:hover{background:var(--hover-bg, rgba(127,127,127,.15))}.cube-popup__crumb--here{color:var(--text);font-weight:600;cursor:default}.cube-popup__crumb-sep{color:var(--text-muted)}@media(pointer:coarse){.cube-popup__crumb{padding:5px 8px;font-size:13px}}.pivot-editor{width:660px;max-width:92vw;max-height:84vh;display:flex;flex-direction:column}.pivot-editor__body{padding:12px 14px;display:flex;flex-direction:column;gap:12px;overflow:auto}.pivot-fields{border:1px solid var(--border);border-radius:6px;background:var(--surface-sunken);padding:8px 10px}.pivot-fields__head{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text);margin-bottom:6px}.pivot-fields__hint{font-weight:400;text-transform:none;letter-spacing:0}.pivot-fields__list{display:flex;flex-wrap:wrap;gap:6px;min-height:24px}.pivot-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pivot-zone-wrap{display:flex;flex-direction:column;gap:6px}.pivot-zone{border:1px dashed var(--border);border-radius:6px;background:var(--surface);padding:7px 8px;min-height:84px;display:flex;flex-direction:column;gap:6px;transition:border-color .12s,background .12s}.pivot-zone--over{border-color:var(--accent);border-style:solid;background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.pivot-zone--filters{background:var(--surface-sunken);border-style:solid}.pivot-zone__head{display:flex;align-items:center;gap:8px}.pivot-zone__title{flex:1 1 auto;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text)}.pivot-zone__add{font-size:11px;background:var(--surface-sunken);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:2px 4px;max-width:110px}.pivot-zone__chips{display:flex;flex-wrap:wrap;gap:6px;min-height:26px;align-content:flex-start;flex:1 1 auto}.pivot-zone__controls{display:flex;flex-wrap:wrap;gap:8px;padding:0 2px}.pivot-zone__controls label{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--text-dim)}.pivot-ctl{font-size:11px;background:var(--surface-sunken);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:2px 4px}.pivot-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 5px 2px 4px;background:var(--surface-raised, var(--surface));border:1px solid var(--border);border-radius:4px;font-size:12px;color:var(--text);cursor:grab;-webkit-user-select:none;user-select:none;max-width:100%}.pivot-chip:active{cursor:grabbing}.pivot-chip--used{opacity:.74}.pivot-chip__glyph{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:3px;font-size:10px;font-weight:700;background:var(--surface-sunken);color:var(--text)}.pivot-chip__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pivot-chip__func{font-size:10px;background:var(--surface-sunken);color:var(--text);border:1px solid var(--border);border-radius:3px;padding:1px 3px}.pivot-chip__x{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;padding:0;border:none;background:none;color:var(--text-dim);font-size:14px;line-height:1;cursor:pointer;border-radius:3px}.pivot-chip__x:hover{color:var(--text);background:var(--surface-sunken)}.pivot-filter{display:flex;flex-direction:column;gap:4px;width:100%}.pivot-filter__chip{width:100%;box-sizing:border-box}.pivot-filter__name{flex:1 1 auto;text-align:left;background:none;border:none;color:var(--text);font-size:12px;cursor:pointer;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pivot-filter__caret{color:var(--text-dim);font-size:9px}.pivot-filter__list{max-height:168px;overflow:auto;border:1px solid var(--border);border-radius:4px;background:var(--surface-sunken);padding:4px 6px;display:flex;flex-direction:column;gap:2px}.pivot-filter__actions{display:flex;gap:6px;margin-bottom:2px}.pivot-filter__actions button{font-size:10px;padding:1px 7px;border:1px solid var(--border);border-radius:3px;background:var(--surface);color:var(--text);cursor:pointer}.pivot-filter__opt{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text);cursor:pointer}.pivot-filter__opt input{margin:0}.pivot-filter__opt span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pivot-editor__footer{display:flex;align-items:center;justify-content:flex-end;padding:8px 14px;border-top:1px solid var(--border)}.pivot-editor__done{font-size:12px;padding:5px 14px;border-radius:5px;border:1px solid var(--border);background:var(--accent);color:#fff;cursor:pointer}.pivot-editor__done:hover{filter:brightness(1.06)}@media(max-width:640px){.pivot-editor{width:96vw}.pivot-grid{grid-template-columns:1fr}}@media(pointer:coarse){.pivot-chip{font-size:13px;padding:3px 6px 3px 5px}.pivot-chip__x{width:24px;height:24px;font-size:16px}.pivot-ctl,.pivot-zone__add{font-size:12px;padding:5px 6px}.pivot-filter__actions button{font-size:12px;padding:4px 9px}.pivot-editor__done{font-size:13px;padding:9px 16px}}.solenoid-shortcuts{position:absolute;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.solenoid-shortcuts__panel{width:min(560px,92vw);max-height:80vh;overflow:auto;background:var(--surface);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--shadow-pop)}.solenoid-shortcuts__header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--panel-border)}.solenoid-shortcuts__title{font-size:14px;font-weight:600;color:var(--text-bright)}.solenoid-shortcuts__close{width:24px;height:24px;background:transparent;border:none;color:var(--text-dim);font-size:20px;line-height:1;cursor:pointer;border-radius:5px}.solenoid-shortcuts__close:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-shortcuts__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;padding:16px}.solenoid-shortcuts__group-title{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:8px}.solenoid-shortcuts__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0}.solenoid-shortcuts__label{font-size:12.5px;color:var(--text)}.solenoid-shortcuts__keys{display:flex;align-items:center;gap:3px;flex:0 0 auto}.solenoid-shortcuts__kbd{min-width:16px;padding:2px 6px;background:var(--btn-bg);border:1px solid var(--btn-border);border-bottom-width:2px;border-radius:4px;font-family:var(--font-mono);font-size:11px;color:var(--text);text-align:center}.solenoid-settings{position:absolute;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#00000073;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.solenoid-settings__panel{width:min(760px,94vw);max-height:80vh;overflow:auto;background:var(--surface);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--shadow-pop)}.solenoid-settings__header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--panel-border)}.solenoid-settings__title{font-size:14px;font-weight:600;color:var(--text-bright)}.solenoid-settings__close{width:24px;height:24px;background:transparent;border:none;color:var(--text-dim);font-size:20px;line-height:1;cursor:pointer;border-radius:5px}.solenoid-settings__close:hover{background:var(--btn-hover);color:var(--accent)}.solenoid-settings__body{padding:8px 16px 16px}.solenoid-settings__section{padding:12px 0;border-bottom:1px solid var(--panel-border)}.solenoid-settings__section:last-child{border-bottom:none}.solenoid-settings__section-title{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px}.solenoid-settings__row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:8px 0;cursor:pointer}.solenoid-settings__row-text{display:flex;flex-direction:column;gap:3px;min-width:0}.solenoid-settings__row-label{font-size:13px;color:var(--text)}.solenoid-settings__row-help{font-size:11.5px;line-height:1.4;color:var(--text-muted)}.solenoid-settings__subhead{margin:14px 0 4px;font-size:11px;font-weight:600;color:var(--text-dim)}.solenoid-settings__note{font-size:11.5px;line-height:1.5;color:var(--text-muted);padding:4px 0}.solenoid-settings__note code{font-family:var(--font-mono);font-size:11px;padding:1px 5px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:4px;color:var(--text)}.solenoid-settings__muted{color:var(--text-muted);opacity:.8;font-size:11.5px}.solenoid-settings__row--folder{cursor:default;align-items:center}.solenoid-settings__path{margin-top:2px;font-family:var(--font-mono);font-size:11px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.solenoid-settings__folder-actions{display:flex;flex-shrink:0;gap:6px}.solenoid-settings__store-btn{margin-top:12px;height:30px;padding:0 14px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:7px;color:var(--text);font-family:inherit;font-size:12.5px;cursor:pointer}.solenoid-settings__store-btn:disabled{opacity:.5;cursor:default}.solenoid-settings__key-input{margin-top:12px;height:30px;width:190px;padding:0 10px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:7px;color:var(--text);font-family:var(--font-mono);font-size:12px}.solenoid-settings__key-input::placeholder{color:var(--text-dim)}.solenoid-settings__key-input:focus{outline:none;border-color:var(--accent)}.solenoid-settings__segment{display:inline-flex;flex-shrink:0;margin-top:1px;border:1px solid var(--btn-border);border-radius:7px;overflow:hidden}.solenoid-settings__segbtn{height:28px;padding:0 13px;background:var(--btn-bg);border:none;color:var(--text-dim);font-family:inherit;font-size:12.5px;cursor:pointer}.solenoid-settings__segbtn+.solenoid-settings__segbtn{border-left:1px solid var(--btn-border)}.solenoid-settings__segbtn--on{background:var(--accent);color:var(--accent-ink)}.solenoid-settings__row--palette{align-items:flex-start}.solenoid-settings__palette-control{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.solenoid-settings__palette-row{display:flex;align-items:center;gap:8px}.solenoid-settings__palette-edit{height:28px;padding:0 10px;font-size:12px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:7px;color:var(--text);cursor:pointer;white-space:nowrap}.solenoid-settings__palette-edit:hover{border-color:var(--accent);color:var(--accent)}.solenoid-settings__select-wrap{position:relative;display:inline-flex;align-items:center}.solenoid-settings__select{appearance:none;-webkit-appearance:none;margin-top:1px;height:28px;padding:0 30px 0 10px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:8px;color:var(--text);font-family:inherit;font-size:12.5px;cursor:pointer}.solenoid-settings__select-caret{position:absolute;right:9px;top:50%;transform:translateY(-50%);margin-top:1px;color:var(--text-dim);pointer-events:none}.solenoid-settings__switch{flex:0 0 auto;position:relative;width:38px;height:22px;margin-top:1px;padding:0;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:999px;cursor:pointer;transition:background .12s ease,border-color .12s ease}.solenoid-settings__switch--on{background:var(--accent);border-color:var(--accent)}.solenoid-settings__knob{position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--text-bright);border-radius:50%;transition:transform .12s ease}.solenoid-settings__switch--on .solenoid-settings__knob{transform:translate(16px);background:var(--accent-ink)}.sol-docprops__input{width:190px;height:26px;padding:0 8px;font-size:12px;background:var(--surface-sunken);border:1px solid var(--border-strong);border-radius:6px;color:var(--text)}.sol-docprops__input::placeholder{color:var(--text-muted)}.sol-docprops__input:focus{outline:none;border-color:var(--accent)}.sol-pal-panel{width:min(560px,94vw)}.sol-pal-panel__body{display:flex;flex-direction:column;gap:16px}.sol-pal-editor__slots{display:grid;grid-template-columns:1fr 1fr;gap:7px 18px}.sol-pal-editor__slot{display:flex;align-items:center;gap:8px;cursor:pointer}.sol-pal-editor__well{flex:0 0 auto;width:26px;height:22px;padding:0;border:1px solid var(--border-strong);border-radius:4px;background:none;cursor:pointer}.sol-pal-editor__well::-webkit-color-swatch-wrapper{padding:0}.sol-pal-editor__well::-webkit-color-swatch{border:none;border-radius:3px}.sol-pal-editor__well::-moz-color-swatch{border:none;border-radius:3px}.sol-pal-editor__slot-label{font-size:12px;color:var(--text)}.sol-pal-editor__templates{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sol-pal-editor__templates-label{font-size:12px;color:var(--text-dim)}.sol-pal-editor__template-btns{display:flex;gap:6px;flex-wrap:wrap}.sol-pal-editor__template-btn{height:24px;padding:0 9px;font-size:11px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:6px;color:var(--text);cursor:pointer}.sol-pal-editor__template-btn:hover{border-color:var(--accent);color:var(--accent)}.sol-pal-sample{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start;padding:4px 0 2px}.sol-pal-sample__nodeslot{padding:10px}.sol-pal-sample .solenoid-node,.sol-pal-sample .solenoid-node__content{position:relative}.sol-pal-sample__socket{position:absolute;right:-6px;top:50%;margin-top:-6px;width:12px;height:12px;line-height:0}.sol-pal-sample .solenoid-group,.sol-pal-sample .solenoid-node,.sol-pal-sample .solenoid-note{cursor:default}.sol-pal-sample .solenoid-group__header{cursor:default;box-shadow:none}.sol-pal-panel__footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px;border-top:1px solid var(--border-subtle)}.sol-pal-panel__btn{height:28px;padding:0 14px;font-size:12px;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:7px;color:var(--text);cursor:pointer}.sol-pal-panel__btn:hover{border-color:var(--border-strong)}.sol-pal-panel__btn--primary{background:color-mix(in srgb,var(--accent) 22%,var(--btn-bg));border-color:var(--accent);color:var(--text-bright)}.sol-pal-panel__btn--primary:hover{background:color-mix(in srgb,var(--accent) 32%,var(--btn-bg))}.solenoid-pin-layer{display:flex;flex-direction:column;gap:6px;pointer-events:none}.solenoid-pin-layer--collapsed .solenoid-pin,.solenoid-pin-layer--collapsed .solenoid-pin--group{display:none}.solenoid-pin-layer__trigger{pointer-events:auto;position:relative;width:28px;height:28px;margin-left:auto;display:flex;align-items:center;justify-content:center;background:var(--btn-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:50%;color:var(--text);cursor:pointer;box-shadow:var(--overlay-shadow);flex-shrink:0}.solenoid-pin-layer__trigger:hover{background:var(--btn-hover);border-color:var(--accent);color:var(--accent)}.solenoid-pin-layer__count{position:absolute;top:-4px;right:-5px;min-width:14px;height:14px;padding:0 3px;background:var(--accent);color:var(--accent-ink);border-radius:8px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.solenoid-pin-layer:not(.solenoid-pin-layer--collapsed) .solenoid-pin-layer__count{display:none}.solenoid-pin{pointer-events:auto;display:flex;align-items:center;gap:8px;padding:5px 6px 5px 9px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow);cursor:pointer;animation:solenoid-pin-in .13s ease-out}.solenoid-pin:hover{border-color:var(--accent)}@keyframes solenoid-pin-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.solenoid-pin__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted, var(--text));font-size:11px;font-weight:600}.solenoid-pin__value{flex:none;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12px;font-weight:700;font-variant-numeric:tabular-nums}.solenoid-pin__value--empty{color:var(--text-muted, var(--text));font-weight:500;opacity:.7}.solenoid-pin__value--error{color:var(--sol-error);font-weight:700;font-size:11.5px}.solenoid-pin .solenoid-array-chip{color:var(--text);background:var(--surface-raised);border-color:var(--border-strong)}.solenoid-pin .solenoid-array-chip:hover{background:color-mix(in srgb,var(--text) 14%,var(--surface-raised));border-color:var(--text-dim)}.solenoid-pin__remove{flex:none;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;background:none;border:none;color:var(--text-muted, var(--text));opacity:.5;font-size:11px;line-height:1;padding:0;cursor:pointer}.solenoid-pin__remove:hover{opacity:1;color:#e0524d}.solenoid-pin--group{flex-direction:column;align-items:stretch;gap:4px;padding:6px 8px 7px 9px}.solenoid-pin__group-head{display:flex;align-items:center;gap:8px}.solenoid-pin__group-head .solenoid-pin__label{flex:1;font-size:12px;color:var(--text)}.solenoid-pin__rows{display:flex;flex-direction:column;gap:2px}.solenoid-pin__row{display:flex;align-items:baseline;gap:8px}.solenoid-pin__row-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted, var(--text));font-size:11px}.solenoid-alert-layer{display:flex;flex-direction:column;gap:6px;pointer-events:none}.solenoid-alert-layer--collapsed .solenoid-alert{display:none}.solenoid-alert-layer__trigger{pointer-events:auto;position:relative;width:28px;height:28px;margin-left:auto;display:flex;align-items:center;justify-content:center;background:var(--btn-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:50%;color:var(--text);cursor:pointer;box-shadow:var(--overlay-shadow);flex-shrink:0}.solenoid-alert-layer__trigger:hover{background:var(--btn-hover);border-color:var(--accent);color:var(--accent)}.solenoid-alert-layer__count{position:absolute;top:-4px;right:-5px;min-width:14px;height:14px;padding:0 3px;background:#d9822b;color:color-mix(in srgb,#d9822b 20%,#000);border-radius:8px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.solenoid-alert{pointer-events:auto;display:flex;align-items:center;gap:8px;padding:5px 6px 5px 9px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow);cursor:pointer;animation:solenoid-alert-in .13s ease-out}.solenoid-alert:hover{border-color:var(--alert-color, var(--accent))}@keyframes solenoid-alert-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.solenoid-alert__msg{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:11px;font-weight:600}.solenoid-alert__title{color:var(--alert-color, var(--text))}.solenoid-alert__remove{flex:none;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;background:none;border:none;color:var(--text-muted, var(--text));opacity:.5;font-size:11px;line-height:1;padding:0;cursor:pointer}.solenoid-alert__remove:hover{opacity:1;color:#e0524d}.solenoid-problems-layer{display:flex;flex-direction:column;gap:6px;pointer-events:none;max-width:260px}.solenoid-problems-layer--collapsed .solenoid-problem,.solenoid-problems-layer--collapsed .solenoid-problems-layer__filters{display:none}.solenoid-problems-layer__trigger{pointer-events:auto;position:relative;width:28px;height:28px;margin-left:auto;display:flex;align-items:center;justify-content:center;background:var(--btn-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:50%;color:var(--text);cursor:pointer;box-shadow:var(--overlay-shadow);flex-shrink:0}.solenoid-problems-layer__trigger:hover{background:var(--btn-hover);border-color:var(--sol-error);color:var(--sol-error)}.solenoid-problems-layer__count{position:absolute;top:-4px;right:-5px;min-width:14px;height:14px;padding:0 3px;background:var(--sol-error);color:color-mix(in srgb,var(--sol-error) 20%,#000);border-radius:8px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.solenoid-problems-layer__filters{pointer-events:auto;display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.solenoid-problems-layer__filter{background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:6px;color:var(--text-dim);font-size:9.5px;font-weight:600;padding:2px 6px;cursor:pointer}.solenoid-problems-layer__filter:hover{color:var(--text)}.solenoid-problems-layer__filter--active{color:var(--sol-error);border-color:var(--sol-error)}.solenoid-problem{pointer-events:auto;display:flex;align-items:center;gap:8px;padding:5px 6px 5px 9px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow);cursor:pointer;animation:solenoid-problem-in .13s ease-out}.solenoid-problem:hover{border-color:var(--sol-error)}.solenoid-problem--fuzz{border-style:dashed}@keyframes solenoid-problem-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.solenoid-problem__code{flex:none;color:var(--sol-error);font-size:10.5px;font-weight:700;font-family:var(--font-mono)}.solenoid-problem__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:11px}.solenoid-problem__fix{flex:none;background:color-mix(in srgb,var(--accent) 14%,transparent);border:var(--overlay-border-width) solid var(--accent);border-radius:5px;color:var(--accent);font-size:9.5px;font-weight:600;padding:2px 5px;cursor:pointer}.solenoid-problem__fix:hover{background:color-mix(in srgb,var(--accent) 24%,transparent)}.solenoid-problem__remove{flex:none;display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;background:none;border:none;color:var(--text-muted, var(--text));opacity:.5;font-size:11px;line-height:1;padding:0;cursor:pointer}.solenoid-problem__remove:hover{opacity:1;color:var(--sol-error)}.solenoid-comments-layer{display:flex;flex-direction:column;gap:6px;pointer-events:none;max-width:260px}.solenoid-comments-layer--collapsed .solenoid-comment,.solenoid-comments-layer--collapsed .solenoid-comments-layer__author{display:none}.solenoid-comments-layer__trigger{pointer-events:auto;position:relative;width:28px;height:28px;margin-left:auto;display:flex;align-items:center;justify-content:center;background:var(--btn-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:50%;color:var(--text);cursor:pointer;box-shadow:var(--overlay-shadow);flex-shrink:0}.solenoid-comments-layer__trigger:hover{background:var(--btn-hover);border-color:var(--accent);color:var(--accent)}.solenoid-comments-layer__count{position:absolute;top:-4px;right:-5px;min-width:14px;height:14px;padding:0 3px;background:var(--accent);color:var(--accent-contrast, #fff);border-radius:8px;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.solenoid-comments-layer__author{pointer-events:auto;display:flex;justify-content:flex-end}.solenoid-comments-layer__author input{width:120px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:6px;color:var(--text);font-size:10.5px;padding:3px 6px}.solenoid-comment{pointer-events:auto;display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:var(--overlay-bg);border:var(--overlay-border-width) solid var(--overlay-border);border-radius:8px;box-shadow:var(--overlay-shadow)}.solenoid-comment--resolved{opacity:.55}.solenoid-comment--compose-target{border-color:var(--accent)}.solenoid-comment__head{display:flex;align-items:baseline;justify-content:space-between;gap:6px;cursor:pointer}.solenoid-comment__node{font-size:11px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.solenoid-comment__author{flex:none;font-size:9.5px;color:var(--text-muted)}.solenoid-comment__text{font-size:11px;color:var(--text-dim);white-space:pre-wrap;word-break:break-word}.solenoid-comment__actions{display:flex;justify-content:flex-end;align-items:center;gap:6px}.solenoid-comment__resolve{background:none;border:none;color:var(--accent);font-size:10px;font-weight:600;cursor:pointer;padding:0}.solenoid-comment__remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:none;border:none;color:var(--text-muted, var(--text));opacity:.5;cursor:pointer;padding:0}.solenoid-comment__remove:hover{opacity:1;color:var(--sol-error)}.solenoid-comment-compose{display:flex;flex-direction:column;gap:4px}.solenoid-comment-compose__input{resize:vertical;min-height:40px;background:var(--surface-sunken, var(--overlay-bg));border:var(--overlay-border-width) solid var(--overlay-border);border-radius:6px;color:var(--text);font:inherit;font-size:11px;padding:4px 6px}.solenoid-comment-compose__btn{align-self:flex-end;background:var(--accent);color:var(--accent-contrast, #fff);border:none;border-radius:6px;font-size:10.5px;font-weight:600;padding:3px 10px;cursor:pointer}.solenoid-comment-compose__btn:disabled{opacity:.4;cursor:default}.solenoid-hud-stack{position:fixed;top:124px;right:12px;z-index:110;display:flex;flex-direction:column;align-items:flex-end;gap:10px;max-width:260px;pointer-events:none}html.is-mobile .solenoid-hud-stack{top:calc(136px + env(safe-area-inset-top));max-width:min(260px,calc(100vw - 24px))}.solenoid-selbar{position:fixed;top:76px;left:50%;transform:translate(-50%);z-index:7;display:flex;align-items:center;gap:3px;padding:3px;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--panel-border);border-radius:999px;box-shadow:var(--shadow-pop);-webkit-user-select:none;user-select:none}.solenoid-selbar__btn{width:26px;height:26px;background:transparent;border:1px solid transparent;color:var(--text);border-radius:50%;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center}@media(hover:hover){.solenoid-selbar__btn:hover:not(:disabled){background:var(--btn-hover);color:var(--accent)}}.solenoid-selbar__btn:disabled{opacity:.35;cursor:default}.solenoid-selbar__divider{width:1px;height:18px;margin:0 2px;background:var(--panel-border)}@media(max-width:639px){.solenoid-selbar{top:calc(env(safe-area-inset-top,0px) + 92px)}}.renderer-spike{position:fixed;inset:0;z-index:99999;background:#0e1014}.renderer-spike__host{position:absolute;inset:0;touch-action:none}.renderer-spike__host canvas{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.html-canvas-spike__canvas{display:block;width:100%;height:100%;touch-action:none;user-select:none;-webkit-user-select:none}.renderer-spike__chart-overlay{position:absolute;inset:0;overflow:hidden;pointer-events:none}.renderer-spike__chart-world{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}.renderer-spike__chart{position:absolute}.renderer-spike__chart svg{display:block;width:100%;height:100%;overflow:visible}.renderer-spike__hud{position:absolute;top:14px;left:14px;min-width:168px;padding:10px 12px;border-radius:10px;background:#12151bdb;border:1px solid rgba(255,255,255,.1);color:#cfd6e4;font:12px/1.5 system-ui,sans-serif;-webkit-user-select:none;user-select:none}.renderer-spike__row{display:flex;justify-content:space-between;align-items:center;gap:16px}.renderer-spike__row span{opacity:.7}.renderer-spike__row b{font-variant-numeric:tabular-nums}.renderer-spike__row b.ok{color:#5fd28a}.renderer-spike__row b.warn{color:#e6c14b}.renderer-spike__row b.bad{color:#e0685f}.renderer-spike__title{font-weight:600;color:#fff;margin-bottom:6px}.renderer-spike__close{background:none;border:none;color:#9aa3b2;cursor:pointer;font-size:14px;padding:0 2px;line-height:1}.renderer-spike__close:hover{color:#fff}.renderer-spike__counts{display:flex;gap:4px;margin-top:8px}.renderer-spike__counts button{flex:1;padding:4px 0;border-radius:6px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#cfd6e4;cursor:pointer;font-size:11px}.renderer-spike__counts button:hover{background:#ffffff1a}.renderer-spike__counts button.active{background:#3a6df0;border-color:#3a6df0;color:#fff}.renderer-spike__hint{margin-top:10px;font-size:10.5px;opacity:.55}.renderer-spike__seg{display:flex;gap:4px;margin:6px 0;align-items:center}.renderer-spike__seg--sub{margin-top:8px}.renderer-spike__seg-label{font-size:10.5px;opacity:.6;margin-right:2px}.renderer-spike__seg button{flex:1;padding:5px 0;border-radius:6px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#cfd6e4;cursor:pointer;font-size:11px}.renderer-spike__seg button:hover{background:#ffffff1a}.renderer-spike__seg button.active{background:#3a6df0;border-color:#3a6df0;color:#fff}.renderer-spike__edit{position:absolute;z-index:100000;height:24px;padding:2px 6px;border-radius:5px;border:1.5px solid #4d8dff;background:#14171d;color:#fff;font:13px/1 system-ui,sans-serif;outline:none;box-shadow:0 2px 10px #00000080}.renderer-spike__bench{margin-top:6px;font-size:11px}.renderer-spike__bench b{font-variant-numeric:tabular-nums}.renderer-spike__note{margin-top:8px;padding:6px 8px;border-radius:6px;background:#e6c14b1f;border:1px solid rgba(230,193,75,.3);color:#e6c14b;font-size:10.5px;line-height:1.4}.solenoid-webdemo{position:absolute;top:80px;left:50%;transform:translate(-50%);z-index:5;display:flex;align-items:center;gap:12px;padding:6px 8px 6px 14px;background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--panel-border);border-radius:8px;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow-pop);font-size:13px;color:var(--text)}.solenoid-webdemo__text strong{font-weight:600}.solenoid-webdemo__download{padding:4px 10px;background:var(--accent);color:#fff;border-radius:5px;text-decoration:none;font-weight:600;white-space:nowrap}.solenoid-webdemo__download:hover{filter:brightness(1.08)}.solenoid-webdemo__download--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.solenoid-webdemo__close{width:22px;height:22px;flex:0 0 auto;background:transparent;border:none;color:var(--text);opacity:.6;cursor:pointer;padding:0;font-size:18px;line-height:1;border-radius:4px}.solenoid-webdemo__close:hover{opacity:1;background:var(--btn-hover)}:root{font-family:Atkinson Hyperlegible Next Variable,Atkinson Hyperlegible Next,system-ui,sans-serif;--font-sans: "Atkinson Hyperlegible Next Variable", "Atkinson Hyperlegible Next", system-ui, sans-serif;--font-mono: "Atkinson Hyperlegible Mono Variable", "Atkinson Hyperlegible Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, monospace;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--accent: #56b4e9;--accent-soft: rgba(86, 180, 233, .14);--accent-mid: rgba(86, 180, 233, .4);--accent-ink: #1a1a1a;--surface: #1e1e1e;--surface-sunken: #141414;--surface-raised: #262626;--border: #2d2d2d;--border-strong: #3a3a3a;--border-subtle: #2a2a2a;--gauge-track: #4d5157;--text: #e8e8e8;--text-bright: #f3f4f5;--text-dim: #9aa0a6;--text-muted: #80868e;--shadow-card: 0 1px 0 rgba(0, 0, 0, .4);--shadow-pop: 0 4px 14px rgba(0, 0, 0, .3);--header-tint: 22%;--socket-ring: rgba(0, 0, 0, .3);--cable-selected: #ffffff;--app-bg: #141414;--canvas-bg: #0e0e0e;--canvas-dot: #2a2a2a;--panel-bg: rgba(30, 30, 30, .9);--panel-border: var(--border);--overlay-bg: rgba(28, 28, 28, .97);--overlay-border: #474c54;--overlay-border-width: 2px;--overlay-shadow: 0 4px 14px rgba(0, 0, 0, .4), 0 1px 4px rgba(0, 0, 0, .3);--btn-bg: var(--surface-sunken);--btn-hover: #1f1f1f;--btn-border: var(--border);--btn-border-hover: var(--border-strong);--wordmark-color: var(--accent)}:root[data-theme=light]{--surface: #fbfcfd;--surface-sunken: #ffffff;--surface-raised: #eef1f5;--border: #ccd2da;--border-strong: #b2bac4;--border-subtle: #dfe3e9;--gauge-track: #a8b0bb;--text: #1b1e23;--text-bright: #0d0f12;--text-dim: #5b636b;--text-muted: #6a717b;--shadow-card: 0 1px 2px rgba(20, 30, 50, .08);--shadow-pop: 0 4px 14px rgba(20, 30, 50, .1);--header-tint: 52%;--socket-ring: rgba(0, 0, 0, .2);--cable-selected: #2a2f37;--app-bg: #f4f5f7;--canvas-bg: #eef1f5;--canvas-dot: #d3d9e1;--panel-bg: rgba(252, 253, 255, .94);--overlay-bg: rgba(255, 255, 255, .98);--overlay-border: #aeb6c1;--overlay-shadow: 0 4px 14px rgba(20, 30, 50, .14), 0 1px 4px rgba(20, 30, 50, .08);--btn-hover: #e9ecf0;--wordmark-color: #1b1e23}html,body,#root{margin:0;padding:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;background:var(--app-bg);color:var(--text)}.solenoid-app{position:relative;width:100vw;height:100vh}button,input,select,textarea{font-family:inherit}.solenoid-statusbar{position:absolute;bottom:0;left:0;right:0;z-index:6;display:flex;align-items:center;gap:14px;height:19px;padding:0 10px env(safe-area-inset-bottom);background:var(--panel-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--panel-border);-webkit-user-select:none;user-select:none;font-size:11px;color:var(--text-dim)}.solenoid-statusbar__counts{flex:0 0 auto;display:flex;align-items:center;gap:7px;color:var(--text-dim)}.solenoid-statusbar__budget{display:inline-block;width:52px;height:5px;border-radius:3px;background:var(--btn-hover);overflow:hidden}.solenoid-statusbar__budget-fill{display:block;height:100%;border-radius:3px;background:var(--accent);transition:width .18s ease}.solenoid-statusbar__counts--warn .solenoid-statusbar__budget-fill{background:#e0a100}.solenoid-statusbar__counts--warn{color:var(--text)}.solenoid-statusbar__counts--over .solenoid-statusbar__budget-fill{background:#e5484d}.solenoid-statusbar__counts--over{color:#e5484d;font-weight:600}.solenoid-statusbar__dot{margin:0 6px;color:var(--text-muted)}.solenoid-statusbar__sel{flex:1 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--text);font-variant-numeric:tabular-nums}.solenoid-statusbar__zoom{flex:0 0 auto;color:var(--text-dim);font-variant-numeric:tabular-nums}.solenoid-statusbar__calc{flex:0 0 auto;display:inline-flex;align-items:center;height:14px;margin-right:10px;padding:0 8px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);font:inherit;font-size:11px;letter-spacing:.02em}button.solenoid-statusbar__calc--dirty{background:var(--accent);color:var(--accent-contrast, #fff);font-weight:600;cursor:pointer}.solenoid-statusbar__sketch{flex:0 0 auto;margin-right:10px;color:#d9a93b;letter-spacing:.02em;font-variant-numeric:tabular-nums}.solenoid-statusbar__problems{flex:0 0 auto;display:inline-flex;align-items:center;height:14px;margin-right:10px;padding:0 8px;border:none;border-radius:7px;background:color-mix(in srgb,var(--sol-error) 16%,transparent);color:var(--sol-error);font:inherit;font-size:11px;font-weight:600;letter-spacing:.02em;cursor:pointer}.solenoid-statusbar__problems:hover{background:color-mix(in srgb,var(--sol-error) 26%,transparent)}.solenoid-nbmodal{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#00000052;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.solenoid-nbmodal__panel{width:min(420px,calc(100vw - 40px));padding:20px 22px 18px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:12px;box-shadow:var(--shadow-pop);color:var(--text)}.solenoid-nbmodal__title{font-size:16px;font-weight:600;margin-bottom:10px}.solenoid-nbmodal__body{margin:0 0 10px;font-size:13px;line-height:1.5;color:var(--text-dim)}.solenoid-nbmodal__body strong{color:var(--text);font-weight:600}.solenoid-nbmodal__actions{display:flex;justify-content:flex-end;margin-top:14px}.solenoid-nbmodal__ok{padding:7px 16px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-weight:600;font-size:13px;cursor:pointer}.solenoid-nbmodal__ok:hover{filter:brightness(1.08)}html.is-mobile .solenoid-mobile-bar{display:flex}html.is-mobile .solenoid-app{height:100dvh}html.is-mobile .solenoid-minimap{display:none}html.is-mobile .solenoid-topbar{height:52px;padding:0 8px;gap:4px;background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none}html.is-mobile .solenoid-topbar__group--file,html.is-mobile .solenoid-topbar__divider,html.is-mobile .solenoid-topbar__art,html.is-mobile .solenoid-topbar .solenoid-toolbar,html.is-mobile .solenoid-topbar__mark,html.is-mobile .solenoid-topbar__doctitle{display:none}html.is-mobile .solenoid-topbar__group--layout{display:flex;gap:2px}html.is-mobile .solenoid-topbar .solenoid-nav__btn{width:34px;height:34px}html.is-mobile .solenoid-topbar .solenoid-nav__btn svg{width:17px;height:17px}html.is-mobile .solenoid-topbar__icon{display:flex}html.is-mobile .solenoid-topbar__icon-glyph{background-color:var(--wordmark-color)}html.is-mobile .solenoid-topbar__nav{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:34px;height:34px;padding:0;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:50%;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent}html.is-mobile .solenoid-topbar__nav:active{background:var(--btn-hover)}html.is-mobile .solenoid-doctitle__menu{left:10px;right:10px;transform:none;min-width:0;max-width:none}html.is-mobile .solenoid-apptools{gap:2px;margin-left:auto}html.is-mobile .solenoid-apptools__btn{width:34px;height:34px}html.is-mobile .solenoid-apptools__palette{top:40px}html.is-mobile .solenoid-apptools__theme{display:none}html.is-mobile .solenoid-apptools__palette-theme{display:flex}html.is-mobile .solenoid-apptools__pill .solenoid-apptools__paint{border-radius:999px}html.is-mobile .solenoid-apptools__btn svg{stroke-width:2}html.is-mobile .solenoid-menubar{position:relative;height:auto;min-height:0;padding:env(safe-area-inset-top) 10px 0;background:var(--accent);color:var(--accent-ink);border:none;z-index:8}html.is-mobile .solenoid-menubar__item{display:none}html.is-mobile .solenoid-menubar__center{position:static;transform:none;display:flex;flex:1 1 auto;align-items:center;justify-content:flex-start;min-width:0;height:30px;pointer-events:auto}html.is-mobile .solenoid-menubar__center .solenoid-doctitle{max-width:100%}html.is-mobile .solenoid-menubar__center .solenoid-doctitle__name,html.is-mobile .solenoid-menubar__center .solenoid-doctitle__caret{max-width:none}html.is-mobile .solenoid-menubar__sheet{position:absolute;top:calc(82px + env(safe-area-inset-top));left:8px;width:max-content;max-width:min(280px,86vw);max-height:calc(100vh - 150px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 150px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;background:var(--surface);border:1px solid var(--panel-border);border-radius:10px;box-shadow:var(--shadow-pop);padding:6px}html.is-mobile .solenoid-menubar__sheet-section+.solenoid-menubar__sheet-section{border-top:1px solid var(--panel-border);margin-top:4px;padding-top:6px}html.is-mobile .solenoid-menubar__sheet-heading{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:4px 10px 2px}html.is-mobile .solenoid-menubar__option{padding:11px 10px;font-size:14px}html.is-mobile .solenoid-menubar__sheet .solenoid-menubar__shortcut{display:none}html.is-mobile .solenoid-menubar__sheet-seed{width:100%;max-width:none;height:40px;margin:2px 0 4px;font-size:14px}html.is-mobile .solenoid-menubar__sheet .solenoid-toolbar{padding:2px 10px 6px;gap:10px;justify-content:center}html.is-mobile .solenoid-menubar__sheet .solenoid-toolbar__label{display:none}html.is-mobile .solenoid-menubar__sheet .solenoid-toolbar__segment{padding:8px 12px}html.is-mobile .solenoid-menubar__sheet .solenoid-toolbar__icon{width:20px;height:18px}html.is-mobile .solenoid-menubar__sheet .solenoid-toolbar__flow{padding:8px 12px}html.is-mobile .solenoid-menubar__sheet .solenoid-toolbar__flow-icon{width:36px;height:15px}html.is-mobile .solenoid-webdemo{top:calc(48px + env(safe-area-inset-top));max-width:calc(100vw - 120px);padding:6px 8px;font-size:12px;text-align:center}html.is-mobile .solenoid-webdemo__download{display:none}html.is-mobile .solenoid-nav{top:calc(92px + env(safe-area-inset-top));gap:2px;padding:3px}html.is-mobile .solenoid-nav__btn--zoomin,html.is-mobile .solenoid-nav__btn--zoomout,html.is-mobile .solenoid-nav__btn--flourish{display:none}html.is-mobile .solenoid-nav .solenoid-nav__btn{width:30px;height:30px;font-size:13px}html.is-mobile .solenoid-nav .solenoid-nav__btn svg{width:15px;height:15px}html.is-mobile .solenoid-add-menu{font-size:13px}html.is-mobile .solenoid-add-menu__item{padding:7px 12px}html.is-mobile .solenoid-add-menu__search{padding:7px 10px;font-size:13px}html.is-mobile .solenoid-add-menu__panel{max-width:92vw;max-height:min(86vh,448px)}html.is-mobile .solenoid-outline__open-pill{display:none}html.is-mobile .solenoid-outline{top:calc(88px + env(safe-area-inset-top));bottom:calc(84px + env(safe-area-inset-bottom));width:min(248px,84vw)}html.is-mobile .solenoid-outline__collapse{width:32px;height:32px;font-size:20px}html.is-mobile .solenoid-outline__chip{height:32px;font-size:13px}html.is-mobile .solenoid-outline__row{padding:9px 8px;font-size:14px}html.is-mobile .solenoid-outline__search{height:34px;font-size:14px}html.is-mobile .solenoid-segbtn{height:30px;font-size:11px}html.is-mobile .sol-switch__opt{width:28px;height:26px;font-size:12px}html.is-mobile .sol-switch__cycle{height:30px;padding:0 12px}html.is-mobile .solenoid-group__header{padding-left:30px}html.is-mobile .solenoid-group__chevron{width:22px;height:22px;left:4px}html.is-mobile .solenoid-group__tidy,html.is-mobile .solenoid-group__swatch{width:26px;height:26px}html.is-mobile .solenoid-note__bar{padding-left:27px}html.is-mobile .solenoid-note__chevron{width:20px;height:20px;left:4px}html.is-mobile .solenoid-note__swatch{width:26px;height:26px}html.is-mobile .solenoid-conduit-toolbar--docked{left:12px;bottom:calc(96px + env(safe-area-inset-bottom))}html.is-mobile .solenoid-conduit-toolbar__extend{padding:8px 14px;font-size:12px}html.is-mobile .table-popup__coltype{width:26px;height:26px;font-size:12px}html.is-mobile .table-popup__view button,html.is-mobile .table-popup__btn{padding:9px 14px}html.is-mobile .table-popup__grid-scroll,html.is-mobile .table-popup__csv{max-height:48vh}html.is-mobile .conn-dialog__input{height:44px;font-size:15px}html.is-mobile .conn-dialog__opt{padding:11px 9px}html.is-mobile .conn-dialog__btn{height:42px;padding:0 18px}html.is-mobile .solenoid-settings__close,html.is-mobile .solenoid-shortcuts__close{width:34px;height:34px}html.is-mobile .solenoid-settings__row{padding:10px 0}html.is-mobile .solenoid-settings__switch{width:46px;height:26px}html.is-mobile .solenoid-settings__knob{width:20px;height:20px}html.is-mobile .solenoid-settings__switch--on .solenoid-settings__knob{transform:translate(20px)}html.is-mobile .fr-panel{width:92vw;height:88vh}html.is-mobile .fr-tab{padding:10px 14px}html.is-mobile .fr-tabs{padding-right:52px}html.is-mobile .fr-tabs__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}html.is-mobile .fr-tabs .fr-close{top:4px;bottom:auto;margin-block:0;right:8px;width:40px;height:40px;background:var(--surface-raised);border:1px solid var(--border-strong);color:var(--text)}html.is-mobile .fr-close svg{width:20px;height:20px}html.is-mobile .fr-header-row1{flex-wrap:wrap}html.is-mobile .fr-search{flex:1 1 100%}html.is-mobile .fr-filters{margin-left:0}html.is-mobile .fr-filter-pill{padding:7px 12px;flex-shrink:0}html.is-mobile .fr-colcheck{padding-top:6px;padding-bottom:6px}html.is-mobile .fr-cats{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}html.is-mobile .fr-cat{padding:7px 12px;flex-shrink:0}html.is-mobile .fr-stats{display:none}html.is-mobile .fr-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}html.is-mobile .fr-table col.col-note{width:240px}html.is-mobile .fr-sol-btn__add{opacity:1}@media(max-width:540px){html.is-mobile .solenoid-shortcuts__grid{grid-template-columns:1fr}}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-normal-C6vrW8VD.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-normal-BcXVPD7q.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-ext-wght-italic-Cigfgs4r.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-next-latin-wght-italic-DC5MiAaX.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Mono Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-mono-latin-ext-wght-normal-CXgNM06D.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Mono Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-mono-latin-wght-normal-CoA7y8X5.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Mono Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-mono-latin-ext-wght-italic-CM_msFld.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Mono Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/assets/atkinson-hyperlegible-mono-latin-wght-italic-BkGwxmNN.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html[data-shell=desktop] div[data-tauri-decorum-tb]{height:22px!important;align-items:center!important;pointer-events:none}html[data-shell=desktop] div[data-tauri-decorum-tb] button.decorum-tb-btn{pointer-events:auto;width:37px!important;height:22px!important;font-size:8.5px!important;font-weight:200!important;color:var(--accent-ink)!important}html[data-shell=desktop] .solenoid-menubar{padding-right:120px}
