.nm-shell{position:fixed;top:68px;right:0;bottom:0;z-index:20;display:flex;background:var(--bg);transition:left .2s}.nm-shell.is-fullscreen{top:0;left:0!important}.nm-canvas{position:relative;flex:1;min-width:0}.nm-canvas .react-flow{--xy-background-color: var(--bg);--xy-edge-stroke-selected: var(--ember);--xy-selection-background-color: var(--ember-wash);--xy-selection-border: 1px dashed var(--ember);--xy-minimap-background-color: var(--bg-2);--xy-minimap-mask-background-color: color-mix(in srgb, var(--bg) 72%, transparent);--xy-minimap-mask-stroke-color: var(--ember);--xy-minimap-mask-stroke-width: 2;--xy-minimap-node-background-color: var(--line-hot);--xy-attribution-background-color: transparent;--xy-resize-background-color: var(--ember);font-family:var(--mono)}.nm-canvas .react-flow__pane{cursor:default}.nm-canvas .react-flow__pane.draggable{cursor:grab}.nm-canvas .react-flow__pane.dragging{cursor:grabbing}.nm-bg{background-color:transparent!important}.nm-bg.nm-bg--minor .react-flow__background-pattern{stroke:var(--grid-line)}.nm-bg.nm-bg--major .react-flow__background-pattern{stroke:color-mix(in srgb,var(--ember) 9%,transparent)}[data-theme=light] .nm-bg.nm-bg--major .react-flow__background-pattern{stroke:color-mix(in srgb,var(--ink) 9%,transparent)}.nm-canvas .react-flow__attribution{font-size:9px;padding:2px 6px;opacity:.55}.nm-canvas .react-flow__attribution a{color:var(--ink-faint)}.nm-titlebar{display:flex;align-items:center;gap:12px;max-width:calc(100% - 580px);min-width:0;padding:8px 14px 8px 8px;background:color-mix(in srgb,var(--bg-2) 92%,transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.nm-back{display:grid;place-items:center;width:30px;height:30px;color:var(--ink-faint);border:1px solid var(--line-hot);flex:none}.nm-back:hover{color:var(--ember);border-color:var(--ember)}.nm-title{margin:1px 0 0;font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.1;font-variation-settings:"opsz" 144,"SOFT" 80,"wght" 400}.nm-toolbar{display:flex;align-items:stretch;background:color-mix(in srgb,var(--bg-2) 94%,transparent);border:1px solid var(--line);box-shadow:0 10px 30px -18px #000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.nm-toolbar>i{width:1px;background:var(--line);margin:6px 0}.nm-toolbar button{display:inline-flex;align-items:center;gap:7px;padding:0 11px;height:36px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim);transition:color .15s,background .15s}.nm-toolbar button svg{width:14px;height:14px}.nm-toolbar button:hover:not(:disabled){color:var(--ember);background:var(--ember-wash)}.nm-toolbar button:disabled{opacity:.35;cursor:default}.nm-toolbar button.is-on{color:var(--ember);box-shadow:inset 0 -2px 0 var(--ember)}.nm-save{min-width:112px;justify-content:flex-start}.nm-save-dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex:none}.nm-save.is-dirty .nm-save-dot{background:var(--warn)}.nm-save.is-saving .nm-save-dot{background:var(--ember);animation:nm-blink .8s ease-in-out infinite alternate}.nm-save.is-error,.nm-save.is-conflict{color:var(--red)!important}.nm-save.is-error .nm-save-dot,.nm-save.is-conflict .nm-save-dot{background:var(--red)}.nm-toolbar .nm-save:disabled{opacity:1}.nm-titleblock-panel{margin:0 0 14px 14px!important}.nm-titleblock{display:grid;grid-template-columns:minmax(160px,1.8fr) repeat(2,minmax(80px,1fr)) repeat(3,auto);border:1px solid var(--line-hot);background:color-mix(in srgb,var(--bg-2) 92%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);max-width:640px}.nm-tb-cell{display:flex;flex-direction:column;gap:2px;padding:6px 10px;border-left:1px solid var(--line);min-width:0}.nm-tb-cell:first-child{border-left:0}.nm-tb-cell span{font-size:8px;letter-spacing:.24em;text-transform:uppercase;color:var(--ink-faint)}.nm-tb-cell b{font-weight:500;font-size:11px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-tb-cell--wide b{font-family:var(--serif);font-style:italic;font-size:14px;font-weight:400;font-variation-settings:"opsz" 144,"SOFT" 80,"wght" 420}.nm-minimap{border:1px solid var(--line);margin:0 14px 14px 0!important}.nm-minimap .react-flow__minimap-svg{display:block}.nm-mini-dev.nm-mini--up,.nm-mini-dev.nm-mini--online{fill:var(--green)}.nm-mini-dev.nm-mini--down{fill:var(--red)}.nm-mini-dev.nm-mini--pending{fill:var(--warn)}.nm-mini-dev.nm-mini--maintenance{fill:var(--blue)}.nm-mini-dev.nm-mini--offline{fill:var(--ink-faint)}.nm-mini-zone{fill:transparent;stroke:var(--line-hot);stroke-width:6;stroke-dasharray:18 12}.nm-canvas[data-far=true] .nm-port-tag:not(.is-selected),.nm-canvas[data-far=true] .nm-edge-label:not(.is-selected):not(.is-path){display:none}.nm-device{position:relative;display:flex;flex-direction:column;width:208px;min-height:124px;padding:10px 12px 11px 15px;background:var(--bg-2);border:1px solid var(--line-hot);color:var(--ink);font-family:var(--mono);box-shadow:0 1px #00000040,0 14px 28px -20px #000c;transition:border-color .15s,box-shadow .2s}[data-theme=light] .nm-device{box-shadow:0 1px #14110d0f,0 14px 26px -20px #14110d59}.nm-device:hover{border-color:var(--ink-faint)}.nm-device.is-sketch{border-style:dashed;background:color-mix(in srgb,var(--bg-2) 72%,var(--bg))}.nm-device.is-archived{opacity:.6}.nm-device.is-path{border-color:color-mix(in srgb,var(--ember) 70%,var(--line-hot))}.nm-device.is-selected{border-color:var(--ember);box-shadow:0 0 0 1px var(--ember),0 0 0 7px var(--ember-wash),0 18px 34px -16px #000c}.nm-device.is-drop{outline:1px dashed var(--ember);outline-offset:6px}.nm-device.is-drop:after{content:"plug in here";position:absolute;left:50%;bottom:-26px;transform:translate(-50%);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ember);white-space:nowrap}.nm-live-bar{position:absolute;left:-1px;top:-1px;bottom:-1px;width:3px;background:var(--live)}.nm-device-head{display:flex;align-items:center;gap:9px;margin-bottom:8px}.nm-glyph{flex:none;display:grid;place-items:center;width:26px;height:26px;border:1px solid var(--line-hot);background:var(--bg-3);color:var(--ink-dim)}.nm-glyph svg{width:14px;height:14px;stroke-width:1.6}.tier-edge .nm-glyph,.nm-glyph.tier-edge{color:var(--ember);border-color:color-mix(in srgb,var(--ember) 45%,var(--line-hot))}.tier-outside .nm-glyph,.nm-glyph.tier-outside{color:var(--blue);border-color:color-mix(in srgb,var(--blue) 45%,var(--line-hot))}.tier-fabric .nm-glyph,.nm-glyph.tier-fabric{color:var(--ink)}.nm-kicker{flex:1;min-width:0;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-rec{margin-left:6px;color:var(--ember);font-size:8px}.nm-dot{position:relative;flex:none;width:7px;height:7px;border-radius:50%;background:var(--live)}.nm-device[data-live=up] .nm-dot:after,.nm-device[data-live=online] .nm-dot:after,.nm-device[data-live=down] .nm-dot:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:1px solid var(--live);animation:nm-pulse 2.6s ease-out infinite}.nm-device[data-live=down] .nm-dot:after{animation-duration:1.1s}.nm-device[data-live=down]{border-color:color-mix(in srgb,var(--red) 55%,var(--line-hot))}.nm-name{font-family:var(--serif);font-style:italic;font-size:16.5px;line-height:1.15;font-variation-settings:"opsz" 144,"SOFT" 80,"wght" 420;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-addr{margin-top:3px;font-size:11px;color:var(--ink-dim);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto;padding-top:9px}.nm-chip{padding:1px 5px 0;font-size:8.5px;line-height:14px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--line-hot);white-space:nowrap}.nm-chip--ember{color:var(--ember);border-color:color-mix(in srgb,var(--ember) 60%,transparent)}.nm-chip--bad{color:var(--red);border-color:color-mix(in srgb,var(--red) 60%,transparent)}.nm-chip--warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 60%,transparent)}.nm-feeds{position:absolute;right:-1px;bottom:-1px;min-width:18px;padding:0 4px;font-size:9px;line-height:15px;text-align:center;color:var(--ink-faint);border-left:1px solid var(--line-hot);border-top:1px solid var(--line-hot);background:var(--bg-3);font-variant-numeric:tabular-nums}.nm-device--outside{min-height:0;border-radius:999px;padding:11px 22px 12px;text-align:center;outline:1px dashed color-mix(in srgb,var(--blue) 40%,var(--line-hot));outline-offset:5px;background:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--blue) 10%,var(--bg-2)),var(--bg-2) 70%)}.nm-device--outside .nm-device-head{justify-content:center;margin-bottom:4px}.nm-device--outside .nm-kicker{flex:none}.nm-device--outside .nm-glyph{border-radius:50%}.nm-device--outside .nm-chips{justify-content:center}.nm-device--outside.is-selected{outline-color:var(--ember)}.nm-device--outside.is-drop{outline-style:solid;outline-color:var(--ember)}.nm-device .nm-handle{width:9px;height:9px;min-width:0;min-height:0;border-radius:0;background:var(--bg);border:1px solid var(--ember);opacity:0;transition:opacity .12s,transform .12s,background .12s}.nm-device--outside .nm-handle{border-radius:50%}.react-flow__node:hover .nm-handle,.nm-device.is-selected .nm-handle{opacity:1}.nm-device .nm-handle:hover{background:var(--ember)}.react-flow__handle.nm-catch{position:absolute;right:0;bottom:0;top:0;left:0;width:100%;height:100%;transform:none;border:0;border-radius:0;background:transparent;opacity:0}.nm-draft path{fill:none;stroke:var(--ember);stroke-width:1.5;stroke-dasharray:5 4}.nm-draft rect{fill:var(--bg);stroke:var(--ember);stroke-width:1.5}.nm-draft.is-valid path{stroke-dasharray:none}.nm-draft.is-valid rect{fill:var(--ember)}.nm-link .nm-stroke{stroke:var(--ink-faint);stroke-width:1.5;fill:none;transition:stroke .15s}.nm-link.is-uplink .nm-stroke{stroke:var(--ink-dim)}.nm-link--fibre .nm-stroke,.nm-link--fibre.is-uplink .nm-stroke{stroke:var(--blue);stroke-width:2.2}.nm-link--wan .nm-stroke,.nm-link--wan.is-uplink .nm-stroke{stroke:var(--ink);stroke-width:3}.nm-link--wifi .nm-stroke{stroke-dasharray:.5 5;stroke-linecap:round;stroke-width:2.2}.nm-link--vpn .nm-stroke,.nm-link--vpn.is-uplink .nm-stroke{stroke:var(--ember);stroke-dasharray:7 5;stroke-width:1.6}.nm-link--logical .nm-stroke{stroke-dasharray:2 4;opacity:.7}.nm-link--trunk .nm-stroke{stroke-width:5}.nm-link .nm-gap{fill:none;stroke:var(--bg);stroke-width:1.6;pointer-events:none}.nm-link.is-path .nm-stroke{stroke:var(--ember)}.nm-link.is-down .nm-stroke{stroke:var(--red);opacity:.6}.react-flow__edge.selected .nm-link .nm-stroke{filter:drop-shadow(0 0 4px var(--ember-glow))}.nm-flow{fill:none;stroke:var(--ember);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:.1 17;animation:nm-flow 1.15s linear infinite;pointer-events:none}.nm-link--wan .nm-flow{stroke-width:3.4}.nm-port-end{fill:var(--bg);stroke:var(--ink-faint);stroke-width:1;pointer-events:none}.nm-link.is-uplink .nm-port-end{stroke:var(--ink-dim)}.nm-port-end.is-gateway{fill:var(--ink-dim)}.nm-link.is-path .nm-port-end,.react-flow__edge.selected .nm-port-end{stroke:var(--ember)}.nm-link.is-path .nm-port-end.is-gateway,.react-flow__edge.selected .nm-port-end.is-gateway{fill:var(--ember)}.nm-edge-label{position:absolute;pointer-events:all;cursor:pointer;display:flex;align-items:center;gap:6px;padding:2px 6px 1px;font-family:var(--mono);font-size:9px;line-height:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);background:var(--bg-2);border:1px solid var(--line-hot);white-space:nowrap}.nm-edge-label b{font-weight:500;color:var(--ink)}.nm-edge-label b+b:before{content:"·";margin-right:6px;color:var(--ink-faint)}.nm-edge-label span{text-transform:none;letter-spacing:.02em;font-size:10px}.nm-edge-label svg{color:var(--ember)}.nm-edge-label.is-selected,.nm-edge-label.is-path{border-color:var(--ember);color:var(--ember)}.nm-port-tag{position:absolute;pointer-events:all;cursor:pointer;font-family:var(--mono);font-size:9px;line-height:12px;letter-spacing:.04em;color:var(--ink-faint);background:color-mix(in srgb,var(--bg) 82%,transparent);padding:0 3px;white-space:nowrap}.nm-port-tag.is-selected{color:var(--ember)}.nm-zone{position:relative;width:100%;height:100%;border:1px dashed color-mix(in srgb,var(--tone) 65%,transparent);background-color:color-mix(in srgb,var(--tone) 4%,transparent);background-image:repeating-linear-gradient(135deg,color-mix(in srgb,var(--tone) 7%,transparent) 0 1px,transparent 1px 11px)}.nm-zone.is-selected{border-style:solid;border-color:var(--tone)}.nm-zone-grip{position:absolute;top:9px;left:12px;max-width:calc(100% - 24px);pointer-events:all;cursor:grab;display:inline-flex;align-items:baseline;gap:7px;padding:2px 8px 2px 0;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in srgb,var(--tone) 85%,var(--ink));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-zone-grip:active{cursor:grabbing}.nm-zone-mark{font-family:var(--serif);font-style:italic;font-size:14px;letter-spacing:0;font-weight:400}.nm-reg{position:absolute;width:10px;height:10px;border-color:var(--tone);border-style:solid;border-width:0;opacity:.9}.nm-reg--tl{left:-6px;top:-6px;border-left-width:1px;border-top-width:1px}.nm-reg--tr{right:-6px;top:-6px;border-right-width:1px;border-top-width:1px}.nm-reg--bl{left:-6px;bottom:-6px;border-left-width:1px;border-bottom-width:1px}.nm-reg--br{right:-6px;bottom:-6px;border-right-width:1px;border-bottom-width:1px}.react-flow__node-zone .react-flow__resize-control{pointer-events:all}.react-flow__node-zone .nm-zone-handle{width:9px;height:9px;border-radius:0;background:var(--bg);border:1px solid var(--ember)}.react-flow__node-zone .nm-zone-line{border-color:transparent}.nm-empty{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:min(460px,80%);height:-moz-fit-content;height:fit-content;padding:34px 34px 30px;text-align:center;background:color-mix(in srgb,var(--bg-2) 94%,transparent);border:1px dashed var(--line-hot);pointer-events:auto;z-index:5}.nm-empty h2{margin:10px 0 0;font-size:28px}.nm-empty p{margin:12px auto 0;max-width:360px;font-size:12px;line-height:1.7;color:var(--ink-dim)}.nm-empty-actions{display:flex;gap:10px;justify-content:center;margin-top:22px;flex-wrap:wrap}.nm-conflict{position:absolute;top:64px;left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;max-width:min(720px,92%);font-size:12px;color:var(--ink);background:var(--bg-2);border:1px solid var(--red);border-left:3px solid var(--red);box-shadow:0 16px 40px -20px #000c}.nm-rail{flex:none;width:236px;display:flex;flex-direction:column;background:var(--bg-2);border-right:1px solid var(--line);overflow-y:auto}.nm-rail--collapsed{width:40px;align-items:center;padding-top:10px;gap:10px;overflow:hidden}.nm-rail-toggle{display:grid;place-items:center;width:24px;height:24px;color:var(--ink-faint)}.nm-rail-toggle:hover{color:var(--ember)}.nm-rail-count{font-size:10px;padding:1px 5px;color:var(--ember);border:1px solid currentColor;font-variant-numeric:tabular-nums}.nm-rail-head{display:flex;align-items:center;gap:10px;padding:16px 14px 10px 18px}.nm-rail-head--sub{border-top:1px solid var(--line);margin-top:14px}.nm-rail-meta{font-size:10px;color:var(--ink-faint)}.nm-rail-note{margin:0;padding:0 18px 4px;font-size:11px;line-height:1.6;color:var(--ink-faint)}.nm-rail-note--foot{margin-top:auto;padding:14px 18px 18px;border-top:1px solid var(--line)}.nm-rail-search{display:flex;align-items:center;gap:8px;margin:0 14px 8px;padding:0 10px;border:1px solid var(--line-hot);background:var(--bg);color:var(--ink-faint)}.nm-rail-search:focus-within{border-color:var(--ember)}.nm-rail-search input{flex:1;min-width:0;padding:7px 0;font-size:12px;background:transparent;outline:none}.nm-rail-search input::-moz-placeholder{color:var(--ink-faint)}.nm-rail-search input::placeholder{color:var(--ink-faint)}.nm-records{list-style:none;margin:0;padding:0 8px;max-height:38vh;overflow-y:auto}.nm-records li{display:flex;align-items:center;gap:10px;padding:7px 8px 7px 10px;cursor:grab;border-left:2px solid transparent;transition:background .12s,border-color .12s}.nm-records li:hover{background:var(--bg-3);border-left-color:var(--ember)}.nm-records li:active{cursor:grabbing}.nm-records-glyph{flex:none;display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--line-hot);color:var(--ink-dim)}.nm-records-glyph svg{width:12px;height:12px}.nm-records-name{display:block;font-size:12px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-records-addr{display:block;font-size:10px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.nm-records-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--ink-faint)}.nm-records-dot.is-on{background:var(--green)}.nm-records-none{cursor:default!important;font-size:11px;color:var(--ink-faint)}.nm-rail-action{display:flex;align-items:center;justify-content:center;gap:8px;margin:8px 14px 0;padding:8px 10px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ember);border:1px dashed color-mix(in srgb,var(--ember) 55%,transparent)}.nm-rail-action:hover{background:var(--ember-wash);border-style:solid}.nm-kinds{padding:0 14px;display:flex;flex-direction:column;gap:12px}.nm-kinds-title{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:6px}.nm-kinds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.nm-kinds-grid button{display:flex;flex-direction:column;align-items:center;gap:5px;padding:9px 2px 7px;font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--line);background:var(--bg);cursor:grab;transition:border-color .12s,color .12s}.nm-kinds-grid button svg{width:15px;height:15px;stroke-width:1.6}.nm-kinds-grid button span{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-kinds-grid button:hover{border-color:var(--ember);color:var(--ember)}.nm-inspector{flex:none;width:324px;background:var(--bg-2);border-left:1px solid var(--line);overflow-y:auto}.nm-panel{padding-bottom:24px}.nm-panel-head{display:flex;align-items:center;gap:14px;padding:20px 20px 16px;border-bottom:1px solid var(--line);border-top:3px solid var(--ember)}.nm-glyph--lg{width:40px;height:40px}.nm-glyph--lg svg{width:18px;height:18px}.nm-glyph--lg .nm-swatch{width:30px}.nm-panel-title{margin:3px 0 0;font-size:22px;line-height:1.15;font-variation-settings:"opsz" 144,"SOFT" 80,"wght" 400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-panel-title--sm{font-size:17px;white-space:normal}.nm-section{padding:16px 20px 4px}.nm-section+.nm-section{border-top:1px solid var(--line);margin-top:12px}.nm-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.nm-section-head .kicker{font-size:10px}.nm-aside{font-size:10px;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase}.nm-panel-foot{padding:20px 20px 0;margin-top:16px;border-top:1px solid var(--line)}.nm-input{padding:7px 10px;font-size:12px}textarea.nm-input{resize:vertical;min-height:64px;line-height:1.5}.nm-btn{padding:7px 12px;font-size:10px}.nm-button-row{display:flex;gap:6px;flex-wrap:wrap}.nm-hint{margin:0;font-size:11px;line-height:1.6;color:var(--ink-faint)}.nm-hint b{color:var(--ink-dim);font-weight:500}.nm-warn{margin:0;font-size:11px;color:var(--warn)}.nm-chain{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.nm-chain li{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-dim)}.nm-chain li svg{color:var(--ember)}.nm-chain li:nth-child(n+2){padding-left:10px}.nm-chain li:nth-child(n+3){padding-left:20px}.nm-chain li:nth-child(n+4){padding-left:30px}.nm-attach{margin-top:14px}.nm-attach-row{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.nm-attach-row button{display:grid;place-items:center;height:32px;color:var(--ink-dim);border:1px dashed var(--line-hot)}.nm-attach-row button svg{width:14px;height:14px}.nm-attach-row button:hover{color:var(--ember);border-color:var(--ember);border-style:solid}.nm-facts{margin:0;display:grid;gap:4px}.nm-facts div{display:grid;grid-template-columns:74px 1fr;gap:8px;font-size:11px}.nm-facts dt{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.14em;font-size:9px;padding-top:2px}.nm-facts dd{margin:0;color:var(--ink);word-break:break-word;font-variant-numeric:tabular-nums}.nm-live-line{display:flex;align-items:center;gap:8px;font-size:11px}.nm-live-pip{flex:none;width:7px;height:7px;border-radius:50%;background:var(--live, var(--line-hot))}.nm-live-state{color:var(--ink)}.nm-live-src{margin-left:auto;color:var(--ink-faint);font-size:10px}.nm-monitors{list-style:none;margin:0;padding:0;border:1px solid var(--line)}.nm-monitors li{display:flex;align-items:center;gap:8px;padding:5px 8px;font-size:11px}.nm-monitors li+li{border-top:1px solid var(--line)}.nm-monitors li[data-state=up]{--live: var(--green)}.nm-monitors li[data-state=down]{--live: var(--red);color:var(--red)}.nm-monitors li[data-state=pending]{--live: var(--warn)}.nm-monitors li[data-state=maintenance]{--live: var(--blue)}.nm-issues{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.nm-issues li{font-size:11px;padding-left:10px;border-left:2px solid var(--warn);color:var(--warn)}.nm-issues li[data-tone=bad]{border-color:var(--red);color:var(--red)}.nm-rules{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-direction:column;gap:3px}.nm-rules li{display:grid;grid-template-columns:auto 1fr;gap:10px;font-size:11px;color:var(--ink-dim)}.nm-rules li span:first-child{color:var(--ember)}.nm-link-out{display:inline-flex;align-items:center;gap:5px;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.nm-fn{display:flex;flex-wrap:wrap;gap:5px}.nm-fn button{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--line-hot);transition:color .12s,border-color .12s,background .12s}.nm-fn-on{color:var(--ember);border-color:var(--ember)!important;background:var(--ember-wash)}.nm-fn-off{color:var(--ink-faint);border-style:dashed!important}.nm-fn-off:hover{color:var(--ink);border-color:var(--ink-faint)!important}.nm-conns{list-style:none;margin:0;padding:0;border:1px solid var(--line)}.nm-conns li+li{border-top:1px solid var(--line)}.nm-conns button{display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;font-size:11px;color:var(--ink)}.nm-conns button:hover{background:var(--bg-3)}.nm-conn-role{font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}.nm-seg{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line-hot)}.nm-seg button{padding:8px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-dim)}.nm-seg button+button{border-left:1px solid var(--line-hot)}.nm-seg button.is-on{color:var(--bg);background:var(--ember)}[data-theme=light] .nm-seg button.is-on{color:#f0e7d2}.nm-seg button:disabled{opacity:.35;cursor:not-allowed}.nm-media{display:grid;grid-template-columns:1fr 1fr;gap:4px}.nm-media button{display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--line)}.nm-media button:hover{border-color:var(--ink-faint);color:var(--ink)}.nm-media button.is-on{border-color:var(--ember);color:var(--ember);background:var(--ember-wash)}.nm-swatch{flex:none;overflow:visible}.nm-quick{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.nm-quick button{padding:2px 7px;font-size:10px;color:var(--ink-faint);border:1px solid var(--line);font-variant-numeric:tabular-nums}.nm-quick button:hover{color:var(--ink);border-color:var(--ink-faint)}.nm-quick button.is-on{color:var(--ember);border-color:var(--ember)}.nm-tones{display:flex;gap:6px}.nm-tones button{width:28px;height:22px;border:1px dashed var(--tone);background:color-mix(in srgb,var(--tone) 14%,transparent)}.nm-tones button.is-on{border-style:solid;box-shadow:0 0 0 2px var(--bg-2),0 0 0 3px var(--tone)}.nm-stats{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.nm-stats div{display:flex;flex-direction:column;gap:2px;padding:10px 12px}.nm-stats div:nth-child(2n){border-left:1px solid var(--line)}.nm-stats div:nth-child(n+3){border-top:1px solid var(--line)}.nm-stats b{font-family:var(--serif);font-style:italic;font-weight:400;font-size:24px;line-height:1;font-variation-settings:"opsz" 144,"SOFT" 80,"wght" 380}.nm-stats b i{font-size:15px;color:var(--ink-faint)}.nm-stats span{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint)}.nm-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.nm-legend li{display:grid;grid-template-columns:40px 64px 1fr;align-items:center;gap:8px;font-size:11px;color:var(--ink)}.nm-legend li i{font-style:normal;font-size:10px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-legend--live{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.nm-legend--live li{grid-template-columns:12px 1fr}.nm-legend-plate{width:12px;height:9px;border:1px solid var(--ink-dim)}.nm-legend-plate.is-sketch{border-style:dashed}.nm-keys{margin:0;display:flex;flex-direction:column;gap:4px}.nm-keys div{display:flex;justify-content:space-between;font-size:11px}.nm-keys dt{color:var(--ink)}.nm-keys dd{margin:0;color:var(--ink-faint)}.nm-thumb{display:block;width:100%;height:150px;background:var(--bg);border:1px solid var(--line)}.nm-thumb .grid-line{stroke:var(--grid-line)}.nm-thumb .zone{fill:none;stroke:var(--line-hot);stroke-dasharray:4 3}.nm-thumb .wire{stroke:var(--ink-faint);fill:none}.nm-thumb .dev{fill:var(--bg-3);stroke:var(--ink-dim)}.nm-thumb .dev.tier-edge{stroke:var(--ember)}.nm-thumb .dev.tier-outside{stroke:var(--blue)}@keyframes nm-flow{to{stroke-dashoffset:-17.1}}@keyframes nm-pulse{0%{transform:scale(.6);opacity:.9}80%,to{transform:scale(1.9);opacity:0}}@keyframes nm-blink{0%{opacity:.3}to{opacity:1}}@media(prefers-reduced-motion:reduce){.nm-flow{animation:none;stroke-dasharray:none;opacity:.5}.nm-dot:after{animation:none!important;display:none}.nm-save.is-saving .nm-save-dot{animation:none}}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-border-default: 1px solid #bbb;--xy-node-border-selected-default: 1px solid #555;--xy-handle-background-color-default: #333;--xy-selection-background-color-default: rgba(150, 150, 180, .1);--xy-selection-border-default: 1px dotted rgba(155, 155, 155, .8);--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default))}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border:var(--xy-node-border, var(--xy-node-border-default));color:var(--xy-node-color, var(--xy-node-color-default))}.react-flow__node-input.selected,.react-flow__node-input:focus,.react-flow__node-input:focus-visible,.react-flow__node-default.selected,.react-flow__node-default:focus,.react-flow__node-default:focus-visible,.react-flow__node-output.selected,.react-flow__node-output:focus,.react-flow__node-output:focus-visible,.react-flow__node-group.selected,.react-flow__node-group:focus,.react-flow__node-group:focus-visible{outline:none;border:var(--xy-node-border-selected, var(--xy-node-border-selected-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter Tight,ui-sans-serif,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{border-color:var(--line)}*:focus{outline:none}*:focus-visible{outline:2px solid var(--ember);outline-offset:2px}html,body{background:var(--bg);color:var(--ink);font-family:var(--mono);font-size:13px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:geometricPrecision}body{min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:48px 48px;pointer-events:none;z-index:0}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:var(--vignette);pointer-events:none;z-index:1}#root{position:relative;z-index:2;min-height:100vh}::-moz-selection{background:var(--ember);color:var(--bg)}::selection{background:var(--ember);color:var(--bg)}input,select,textarea,button{font-family:inherit;color:inherit}h1,h2{font-family:var(--serif);font-style:italic;font-variation-settings:"opsz" 144,"SOFT" 80,"wght" 380;letter-spacing:-.015em;color:var(--ink)}a{color:var(--ember);text-decoration:none;transition:color .15s}a:hover{color:var(--ember-deep)}.tnum,[data-tnum]{font-variant-numeric:tabular-nums}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.btn-base{display:inline-flex;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;justify-content:center;gap:.5rem;font-family:var(--mono);font-weight:500;text-transform:uppercase;letter-spacing:.18em;border-radius:0;border:1px solid var(--line-hot);background:transparent;color:var(--ink);transition:border-color .15s,color .15s,background .15s;padding:8px 16px;font-size:11px}.btn-base:hover{border-color:var(--ink)}.btn-base:disabled,.btn-base[disabled]{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--ember);border-color:var(--ember);color:var(--bg)}.btn-primary:hover{background:var(--ember-deep);border-color:var(--ember-deep);color:var(--bg)}[data-theme=light] .btn-primary,[data-theme=light] .btn-primary:hover{color:#f0e7d2}.btn-secondary{background:transparent;border-color:var(--line-hot);color:var(--ink-dim)}.btn-secondary:hover{border-color:var(--ink);color:var(--ink)}.btn-danger{background:transparent;border-color:var(--red);color:var(--red)}.btn-danger:hover{background:var(--red);color:var(--bg)}.btn-ghost{border-color:transparent;color:var(--ink-dim)}.btn-ghost:hover{color:var(--ember);border-color:transparent;background:var(--ember-wash)}.input-field{display:block;width:100%;padding:9px 12px;border:1px solid var(--line-hot);border-radius:0;font-family:var(--mono);font-size:13px;background:var(--bg);color:var(--ink);transition:border-color .15s,box-shadow .15s}[data-theme=light] .input-field{background:var(--bg);border-color:var(--line)}.input-field::-moz-placeholder{color:var(--ink-faint)}.input-field::placeholder{color:var(--ink-faint)}.input-field:focus{outline:none;border-color:var(--ember);box-shadow:0 0 0 1px var(--ember-glow)}.input-field:disabled{opacity:.55;cursor:not-allowed}.label-micro{display:block;margin-bottom:6px;font-family:var(--mono);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-dim)}.surface{background:var(--bg-2);border:1px solid var(--line);border-radius:0}.surface-sunken{background:var(--bg-3);border:1px solid var(--line);border-radius:0}.card-instrument{background:var(--bg-2);border:1px solid var(--line);border-left:3px solid var(--line-hot);border-radius:0;padding:22px;transition:border-left-color .15s,background .15s}.card-instrument:hover{border-left-color:var(--ember);background:var(--bg-3)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.kicker{font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.22em;color:var(--ink-dim)}.badge-instrument{display:inline-flex;align-items:center;padding:3px 9px;border:1px solid currentColor;border-radius:0;font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;background:transparent;line-height:1.3}.modal-panel{background:var(--bg-2);border:1px solid var(--line);border-top:3px solid var(--ember);border-radius:0;box-shadow:0 20px 60px #00000080}[data-theme=light] .modal-panel{box-shadow:0 20px 60px #14110d2e}.empty-instrument{border:1px dashed var(--line-hot);background:var(--bg-2);padding:48px 24px;text-align:center;border-radius:0}.theme-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--line);background:var(--bg-2);color:var(--ink);font-family:var(--mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.2em;border-radius:0;cursor:pointer;transition:border-color .15s,color .15s}.theme-pill:hover{border-color:var(--ember);color:var(--ember)}.nav-item{display:flex;align-items:center;gap:12px;padding:9px 14px;font-family:var(--mono);font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.18em;color:var(--ink-faint);border-left:3px solid transparent;transition:color .15s,background .15s,border-left-color .15s}.nav-item:hover{color:var(--ink);background:var(--bg-3)}.nav-item-active{color:var(--ember);background:var(--ember-wash);border-left-color:var(--ember)}.tnum-mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.left-0{left:0}.left-0\.5{left:.125rem}.left-3{left:.75rem}.right-2{right:.5rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1\/2{top:50%}.top-\[27px\]{top:27px}.z-10{z-index:10}.z-30{z-index:30}.z-50{z-index:50}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.-m-1{margin:-.25rem}.m-0{margin:0}.-mx-4{margin-left:-1rem;margin-right:-1rem}.-my-6{margin-top:-1.5rem;margin-bottom:-1.5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.-mb-px{margin-bottom:-1px}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-\[240px\]{margin-left:240px}.ml-\[64px\]{margin-left:64px}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-8{height:2rem}.h-\[68px\]{height:68px}.h-\[calc\(100vh-68px\)\]{height:calc(100vh - 68px)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-48{max-height:12rem}.max-h-96{max-height:24rem}.max-h-\[60vh\]{max-height:60vh}.max-h-\[88vh\]{max-height:88vh}.min-h-\[120px\]{min-height:120px}.min-h-\[200px\]{min-height:200px}.min-h-\[60px\]{min-height:60px}.min-h-\[60vh\]{min-height:60vh}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-72{width:18rem}.w-8{width:2rem}.w-\[240px\]{width:240px}.w-\[64px\]{width:64px}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-\[120px\]{min-width:120px}.min-w-\[180px\]{min-width:180px}.min-w-\[200px\]{min-width:200px}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.max-w-\[1400px\]{max-width:1400px}.max-w-\[180px\]{max-width:180px}.max-w-\[260px\]{max-width:260px}.max-w-\[280px\]{max-width:280px}.max-w-\[340px\]{max-width:340px}.max-w-\[88\%\]{max-width:88%}.max-w-\[min\(1280px\,94vw\)\]{max-width:min(1280px,94vw)}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.origin-left{transform-origin:left}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-5{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-x-0{--tw-scale-x: 0;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-none{resize:none}.resize-y{resize:vertical}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-\[140px_1fr\]{grid-template-columns:140px 1fr}.grid-cols-\[72px_1fr\]{grid-template-columns:72px 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-px{gap:1px}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1{row-gap:.25rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-line>:not([hidden])~:not([hidden]){border-color:var(--line)}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-all{word-break:break-all}.rounded{border-radius:0}.rounded-full{border-radius:9999px}.rounded-lg,.rounded-xl{border-radius:0}.border{border-width:1px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-\[3px\]{border-left-width:3px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-\[var\(--line\)\]{border-color:var(--line)}.border-amber-300{--tw-border-opacity: 1;border-color:rgb(252 211 77 / var(--tw-border-opacity, 1))}.border-bad{border-color:var(--red)}.border-ember{border-color:var(--ember)}.border-gray-100{--tw-border-opacity: 1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-line{border-color:var(--line)}.border-line-hot{border-color:var(--line-hot)}.border-ok{border-color:var(--green)}.border-transparent{border-color:transparent}.border-warn{border-color:var(--warn)}.bg-\[var\(--ember-wash\)\]{background-color:var(--ember-wash)}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-black\/75{background-color:#000000bf}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-cyan-500{--tw-bg-opacity: 1;background-color:rgb(6 182 212 / var(--tw-bg-opacity, 1))}.bg-ember{background-color:var(--ember)}.bg-ember-wash{background-color:var(--ember-wash)}.bg-emerald-500{--tw-bg-opacity: 1;background-color:rgb(16 185 129 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity, 1))}.bg-ink-faint{background-color:var(--ink-faint)}.bg-line{background-color:var(--line)}.bg-line-hot{background-color:var(--line-hot)}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-pink-500{--tw-bg-opacity: 1;background-color:rgb(236 72 153 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-sky-500{--tw-bg-opacity: 1;background-color:rgb(14 165 233 / var(--tw-bg-opacity, 1))}.bg-surface{background-color:var(--bg)}.bg-surface-raised{background-color:var(--bg-2)}.bg-surface-sunken{background-color:var(--bg-3)}.bg-teal-500{--tw-bg-opacity: 1;background-color:rgb(20 184 166 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.\!p-0{padding:0!important}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0{padding-left:0;padding-right:0}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-16{padding-left:4rem;padding-right:4rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-7{padding-left:1.75rem;padding-right:1.75rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-5{padding-bottom:1.25rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pl-9{padding-left:2.25rem}.pr-24{padding-right:6rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.pt-\[18vh\]{padding-top:18vh}.pt-\[6vh\]{padding-top:6vh}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.font-sans{font-family:Inter Tight,ui-sans-serif,system-ui,sans-serif}.font-serif{font-family:Fraunces,Georgia,serif}.text-2xl{font-size:26px}.text-3xl{font-size:32px}.text-4xl{font-size:42px}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[22px\]{font-size:22px}.text-\[9px\]{font-size:9px}.text-\[clamp\(56px\,8vw\,108px\)\]{font-size:clamp(56px,8vw,108px)}.text-base{font-size:13px}.text-lg{font-size:17px}.text-sm{font-size:12px}.text-xl{font-size:21px}.text-xs{font-size:11px}.text-xxs{font-size:10px}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.leading-\[0\.95\]{line-height:.95}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.4em\]{letter-spacing:.4em}.tracking-button{letter-spacing:.18em}.tracking-kicker{letter-spacing:.22em}.tracking-normal{letter-spacing:0em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-bad{color:var(--red)}.text-ember{color:var(--ember)}.text-ember-deep{color:var(--ember-deep)}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-info{color:var(--blue)}.text-ink{color:var(--ink)}.text-ink-dim{color:var(--ink-dim)}.text-ink-faint{color:var(--ink-faint)}.text-line-hot{color:var(--line-hot)}.text-ok{color:var(--green)}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-warn{color:var(--warn)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur: blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root,[data-theme=dark]{--bg: #0A0805;--bg-2: #14110D;--bg-3: #1E1A14;--line: #2A251D;--line-hot: #3a3327;--ink: #F0E7D2;--ink-dim: #B9A77C;--ink-faint: #7A6F5E;--ember: #E85D2B;--ember-deep: #C8441C;--ember-glow: rgba(232, 93, 43, .3);--ember-wash: rgba(232, 93, 43, .06);--green: #6FB57E;--red: #E07360;--warn: #D9A23A;--blue: #6CA8C7;--grid-line: rgba(232, 93, 43, .04);--vignette: radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,.55) 100%);--serif: "Fraunces", Georgia, "Times New Roman", serif;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--sans: "Inter Tight", ui-sans-serif, system-ui, sans-serif}[data-theme=light]{--bg: #F0E7D2;--bg-2: #EADEC0;--bg-3: #DCCFA8;--line: #B9A77C;--line-hot: #8B7F66;--ink: #181511;--ink-dim: #5B5140;--ink-faint: #8B7F66;--ember: #C8441C;--ember-deep: #8C2E12;--ember-glow: rgba(200, 68, 28, .28);--ember-wash: rgba(200, 68, 28, .07);--green: #4F7A3A;--red: #A8261B;--warn: #9A6E0F;--blue: #1F4E7A;--grid-line: rgba(20, 17, 13, .04);--vignette: radial-gradient(ellipse at center, transparent 70%, rgba(120, 95, 30, .1) 100%)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-hot);border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint)}*{scrollbar-width:thin;scrollbar-color:var(--line-hot) transparent}.placeholder\:text-ink-faint::-moz-placeholder{color:var(--ink-faint)}.placeholder\:text-ink-faint::placeholder{color:var(--ink-faint)}.last\:border-b-0:last-child{border-bottom-width:0px}.hover\:border-ember:hover{border-color:var(--ember)}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:border-line:hover{border-color:var(--line)}.hover\:bg-\[var\(--bg-2\)\]:hover{background-color:var(--bg-2)}.hover\:bg-\[var\(--bg-3\)\]:hover{background-color:var(--bg-3)}.hover\:bg-\[var\(--ember-wash\)\]:hover{background-color:var(--ember-wash)}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-surface-raised:hover{background-color:var(--bg-2)}.hover\:bg-surface-sunken:hover{background-color:var(--bg-3)}.hover\:text-\[var\(--ember\)\]:hover{color:var(--ember)}.hover\:text-\[var\(--red\)\]:hover,.hover\:text-bad:hover{color:var(--red)}.hover\:text-ember:hover{color:var(--ember)}.hover\:text-ink:hover{color:var(--ink)}.hover\:text-ok:hover{color:var(--green)}.hover\:text-red-500:hover{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.hover\:text-warn:hover{color:var(--warn)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-70:hover{opacity:.7}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:\!border-bad:focus{border-color:var(--red)!important}.focus\:border-ember:focus{border-color:var(--ember)}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:scale-x-100{--tw-scale-x: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-ember{color:var(--ember)}.group:hover .group-hover\:text-ink{color:var(--ink)}.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:inline{display:inline}.sm\:flex{display:flex}}@media(min-width:768px){.md\:inline{display:inline}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:1024px){.lg\:-mx-6{margin-left:-1.5rem;margin-right:-1.5rem}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:flex-\[0_0_460px\]{flex:0 0 460px}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media(min-width:1280px){.xl\:flex-\[0_0_520px\]{flex:0 0 520px}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.dark\:border-amber-700\/60:where([data-theme=dark],[data-theme=dark] *){border-color:#b4530999}.dark\:border-gray-600:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.dark\:border-gray-700:where([data-theme=dark],[data-theme=dark] *){--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.dark\:bg-amber-900\/20:where([data-theme=dark],[data-theme=dark] *){background-color:#78350f33}.dark\:bg-gray-600:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-700:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-700\/50:where([data-theme=dark],[data-theme=dark] *){background-color:#37415180}.dark\:bg-gray-800:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.dark\:bg-green-900\/30:where([data-theme=dark],[data-theme=dark] *){background-color:#14532d4d}.dark\:bg-red-900\/30:where([data-theme=dark],[data-theme=dark] *){background-color:#7f1d1d4d}.dark\:text-amber-500:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.dark\:text-gray-300:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-gray-700:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.dark\:text-green-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-red-400:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-white:where([data-theme=dark],[data-theme=dark] *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-gray-600:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-700:hover:where([data-theme=dark],[data-theme=dark] *){--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.dark\:hover\:bg-gray-700\/50:hover:where([data-theme=dark],[data-theme=dark] *){background-color:#37415180}.\[\&_\.ProseMirror\]\:min-h-\[200px\] .ProseMirror{min-height:200px}.\[\&_\.ProseMirror\]\:outline-none .ProseMirror{outline:2px solid transparent;outline-offset:2px}.\[\&_\.ProseMirror_p\.is-editor-empty\:first-child\:\:before\]\:pointer-events-none .ProseMirror p.is-editor-empty:first-child:before{pointer-events:none}.\[\&_\.ProseMirror_p\.is-editor-empty\:first-child\:\:before\]\:float-left .ProseMirror p.is-editor-empty:first-child:before{float:left}.\[\&_\.ProseMirror_p\.is-editor-empty\:first-child\:\:before\]\:h-0 .ProseMirror p.is-editor-empty:first-child:before{height:0px}.\[\&_\.ProseMirror_p\.is-editor-empty\:first-child\:\:before\]\:text-gray-400 .ProseMirror p.is-editor-empty:first-child:before{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.\[\&_\.ProseMirror_p\.is-editor-empty\:first-child\:\:before\]\:content-\[attr\(data-placeholder\)\] .ProseMirror p.is-editor-empty:first-child:before{--tw-content: attr(data-placeholder);content:var(--tw-content)}
