:root{--nn-bg:#f7f7f5;--nn-panel:#fff;--nn-border:#d9d9d4;--nn-text:#1c1c1c;--nn-muted:#6b6b66;--nn-accent:#2f5fa8;--nn-older:#b7791f;--nn-newer:#0e7c86;--nn-target:#2b8a3e;--nn-warn:#a33;--nn-lower:400px}html,body{background:var(--nn-bg);height:100%;color:var(--nn-text);font-variant-numeric:tabular-nums;margin:0;font:13px/1.35 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}.nn-host{flex-direction:column;height:100vh;display:flex;overflow:hidden}.muted{color:var(--nn-muted)}.small{font-size:11.5px}.warn{color:var(--nn-warn)}b{font-weight:600}code{font:11.5px ui-monospace,SFMono-Regular,Menlo,monospace}h3{margin:0 0 6px;font-size:13px}h4{margin:10px 0 4px;font-size:12px}.nn-btn,.nn-seg,.nn-select,.nn-num,.nn-text,.nn-tab,.nn-mini{font:inherit;color:var(--nn-text);background:var(--nn-panel);border:1px solid var(--nn-border);cursor:pointer;border-radius:4px;padding:3px 8px;line-height:1.2}.nn-btn:hover,.nn-seg:hover,.nn-mini:hover{border-color:#999}.nn-btn:focus-visible,.nn-seg:focus-visible,.nn-select:focus-visible,.nn-num:focus-visible,.nn-text:focus-visible,.nn-tab:focus-visible,.nn-cell:focus-visible,.nn-neuron:focus-visible,.nn-orow:focus-visible,.nn-mini:focus-visible,.nn-scrub:focus-visible,.nn-resize:focus-visible,.nn-plane-canvas:focus-visible,.nn-help:focus-visible{outline:2px solid var(--nn-accent);outline-offset:1px}.nn-btn:disabled,.nn-mini:disabled{opacity:.45;cursor:default}.nn-btn-sm{padding:2px 6px;font-size:11.5px}.nn-primary{background:var(--nn-accent);color:#fff;border-color:var(--nn-accent)}.nn-primary.running{background:#a33;border-color:#a33}.nn-seg{border-radius:0;margin-left:-1px;padding:2px 7px}.nn-seg:first-of-type{border-radius:4px 0 0 4px;margin-left:0}.nn-seg:last-of-type{border-radius:0 4px 4px 0}.nn-seg[aria-checked=true]{border-color:var(--nn-accent);color:var(--nn-accent);z-index:1;background:#e6ecf7;position:relative}.nn-seg-tok{min-width:20px;padding:2px 4px;font-family:ui-monospace,monospace}.nn-num{cursor:text;width:92px}.nn-num-sm{width:64px;padding:2px 4px}.nn-text{cursor:text;width:220px;font-family:ui-monospace,monospace}.nn-select{padding:2px 4px}.nn-field{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.nn-field>span:first-child{color:var(--nn-muted)}.nn-sep{background:var(--nn-border);width:1px;height:20px;margin:0 2px}.nn-ctl-group{flex-wrap:wrap;align-items:center;gap:0;display:inline-flex}.nn-ctl-group .nn-ctl-label{margin-right:6px}.nn-ctl-label{color:var(--nn-muted);white-space:nowrap}.nn-controls{border-bottom:1px solid var(--nn-border);background:var(--nn-panel);flex-wrap:wrap;align-items:center;gap:6px 16px;padding:6px 10px;display:flex}.nn-link{color:var(--nn-accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.nn-help{border:1px solid var(--nn-border);text-align:center;width:15px;height:15px;color:var(--nn-muted);cursor:help;border-radius:50%;font-size:10px;line-height:13px;display:inline-block}.sw{vertical-align:middle;border:1px solid #bbb;width:12px;height:8px;margin-right:3px;display:inline-block}.sw-div{background:linear-gradient(90deg,#2166ac,#f7f7f7,#b2182b);width:40px}.sw-x{background:linear-gradient(90deg,#018571,#f7f7f7,#a6611a);width:30px}.sw-p{background:linear-gradient(90deg,#fff,#54278f);width:30px}.sw-dash{border:none;border-top:2px dashed #888;height:0}.nn-legend-inline{margin:0 2px}.nn-legend-canvas{vertical-align:middle;margin-left:8px}.nn-toolbar{background:var(--nn-panel);border-bottom:1px solid var(--nn-border);flex-wrap:wrap;flex:none;align-items:center;gap:6px 10px;padding:6px 10px;display:flex}.nn-title{margin-right:6px}.nn-arch,.nn-progress{white-space:nowrap}.nn-warning{color:#6b4a00;background:#fff4e5;border-bottom:1px solid #f0c98a;flex:none;align-items:flex-start;gap:10px;padding:5px 10px;font-size:12px;display:flex}.nn-warning[hidden]{display:none}.nn-warning-text{flex:auto}.nn-walk{background:#f0f5ec;border-bottom:1px solid #c9dcc0;flex:none;grid-template-columns:1fr auto;align-items:center;gap:4px 14px;padding:6px 10px;display:grid}.nn-walk-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.nn-stages{gap:4px;display:inline-flex}.nn-stage{border:1px solid var(--nn-border);color:var(--nn-muted);background:#fff;border-radius:10px;padding:1px 8px;font-size:11.5px}.nn-stage.done{border-color:var(--nn-target);color:var(--nn-target)}.nn-stage.active{background:var(--nn-target);color:#fff;border-color:var(--nn-target)}.nn-excerpt{white-space:nowrap;text-overflow:ellipsis;grid-column:1;font:12.5px ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden}.nn-ex-ctx{outline:1px solid var(--nn-older);background:#ffe9b8}.nn-ex-target{outline:1px solid var(--nn-target);background:#cdeccd;font-weight:700}.nn-walk-detail{grid-column:1;font-size:12.5px}.nn-walk-btns{flex-direction:column;grid-area:1/2/span 3;gap:4px;display:flex}.nn-upper{background:var(--nn-panel);flex:1 1 0;gap:0;min-height:0;display:flex}.nn-expanded .nn-upper,.nn-expanded .nn-resize{display:none}.nn-expanded .nn-lower{flex:1 1 0;height:auto}.nn-net{border-right:1px solid var(--nn-border);flex:1 1 0;min-width:520px;position:relative;overflow:hidden}.nn-wires{position:absolute;inset:0}.nn-nodes{pointer-events:none;position:absolute;inset:0}.nn-nodes>*{pointer-events:auto;position:absolute}.nn-wire{fill:none;stroke-linecap:round;pointer-events:none;opacity:.85;transition:opacity .12s}.nn-wire.dim{opacity:.12}.nn-wire.hot{opacity:1;stroke:#000!important;stroke-width:3px!important}.nn-wire.sel{opacity:1;stroke-dasharray:4 2}.nn-wire-hit{fill:none;stroke:#0000;stroke-width:7px;cursor:pointer}.nn-lookup path{fill:none;stroke-width:1.6px}.nn-colhead{white-space:nowrap;text-align:center;font-size:11px}.nn-layerctl{pointer-events:none;justify-content:center;align-items:center;gap:3px;display:flex}.nn-layerctl>.nn-mini{pointer-events:auto}.nn-mini{min-width:16px;padding:0 3px;font-size:11px;line-height:15px}.nn-mini-del{color:var(--nn-warn)}.nn-ins{padding:0 4px;font-size:10px}.nn-slot{background:#fff;border:2px solid;border-radius:6px;flex-direction:column;align-items:center;gap:1px;padding:2px 4px;display:flex}.nn-slot-label{white-space:nowrap;font-size:10px;font-weight:600}.nn-slot-select{border:1px solid var(--nn-border);background:#fff;border-radius:3px;width:44px;padding:0 2px;font:600 13px ui-monospace,monospace}.nn-crow{align-items:stretch;gap:0;display:flex}.nn-crow-label{width:16px;font:var(--nn-rowfont,10px) ui-monospace, monospace;color:var(--nn-muted);text-align:right;justify-content:flex-end;align-items:center;padding-right:2px;line-height:1;display:flex}.nn-crow.ctx-older .nn-ccell{box-shadow:inset 0 0 0 2px var(--nn-older)}.nn-crow.ctx-newer .nn-ccell{box-shadow:inset 0 0 0 2px var(--nn-newer)}.nn-crow.ctx-older.ctx-newer .nn-ccell{box-shadow:inset 0 0 0 2px var(--nn-older), inset 0 0 0 4px var(--nn-newer)}.nn-crow.ctx-older .nn-crow-label,.nn-crow.ctx-newer .nn-crow-label{color:var(--nn-text);font-weight:700}.nn-cell{cursor:ew-resize;user-select:none;touch-action:none;border:1px solid #0000001f;border-radius:0;padding:0;font:8.5px/1 ui-monospace,monospace}.nn-cell.hot{outline-offset:-1px;z-index:2;outline:2px solid #000}.nn-cell.selected{outline:2px solid var(--nn-accent);outline-offset:-1px;z-index:2}.nn-cell.related{border-color:#0009}.nn-cell.dragging{cursor:ew-resize}.nn-cell.clipped:after{content:"";background:#000;border-radius:50%;width:3px;height:3px;position:absolute;top:1px;right:1px}.nn-mcell{width:15px;height:15px;position:relative}.nn-tile{cursor:pointer;text-align:center;background:0 0;border:none;padding:0;display:block}.nn-tile canvas{box-sizing:content-box;border:1px solid #00000059;display:block}.nn-xtile canvas{border-width:2px}.nn-tile.selected canvas{outline:2.5px solid var(--nn-accent);outline-offset:1px}.nn-tile-label{color:var(--nn-text);white-space:nowrap;font:9.5px/12px ui-monospace,monospace;display:block}.nn-bigmap{margin:6px 0}.nn-bigmap canvas{display:block}.nn-bigmap-caption{color:var(--nn-muted);margin-top:2px;font-size:11px}.nn-orow{font:var(--nn-rowfont,10px) ui-monospace, monospace;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:2px;align-items:center;gap:4px;padding:0 2px;display:flex}.nn-orow:hover{background:#eef1f6}.nn-orow.selected{box-shadow:inset 0 0 0 1px var(--nn-accent);background:#e6ecf7}.nn-orow.target{box-shadow:inset 0 0 0 2px var(--nn-target)}.nn-olabel{width:12px;font-weight:700}.nn-oval{width:38px}.nn-obar{background:#eeeeea;border-radius:1px;flex:1 1 0;height:70%;overflow:hidden}.nn-obar-fill{height:100%;display:block}.nn-oval{text-align:right;width:40px}.nn-oz{text-align:right;width:36px;color:var(--nn-muted)}.nn-net-legend{max-width:70%;color:var(--nn-muted);pointer-events:none;flex-wrap:wrap;justify-content:flex-end;gap:14px;font-size:10.5px;display:flex;position:absolute;top:4px;right:8px}.nn-matrices{border-right:1px solid var(--nn-border);flex:none;width:max-content;max-width:22%;padding:6px 8px;overflow:auto}.nn-matrices-mode{color:var(--nn-muted);margin-bottom:4px;font-size:11px}.nn-matrix{margin-bottom:10px}.nn-matrix-title{max-width:260px;margin-bottom:3px;font-size:11.5px}.nn-grid{align-items:center;gap:1px;display:grid}.nn-grid-col,.nn-grid-row{color:var(--nn-muted);text-align:center;font:9px ui-monospace,monospace}.nn-grid-row{text-align:right;padding-right:3px}.nn-inspector{flex:0 0 330px;padding:8px 10px;font-size:12.5px;overflow:auto}.nn-insp-head{border-bottom:1px solid var(--nn-border);margin-bottom:8px;padding-bottom:6px}.nn-insp-title{margin-bottom:4px}.nn-insp-ctx{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.nn-tok{border:2px solid var(--nn-newer);text-align:center;background:#fff;border-radius:3px;min-width:18px;padding:0 3px;font:700 12px ui-monospace,monospace;display:inline-block}.nn-tok-out{border-color:var(--nn-accent)}.nn-terms{border-collapse:collapse;margin:4px 0;font:11.5px ui-monospace,monospace}.nn-terms th{color:var(--nn-muted);text-align:right;border-bottom:1px solid var(--nn-border);padding:1px 4px;font-weight:600}.nn-terms td{text-align:right;padding:1px 4px}.nn-terms tr:hover td{cursor:pointer;background:#eef1f6}.nn-stats th,.nn-stats td{text-align:left}.nn-stats tr:hover td{cursor:default;background:0 0}.nn-eq{margin:4px 0;font-size:12px}.nn-emp{background:#f3f3ef;border-radius:4px;padding:4px 6px}.nn-apply{background:#f0f5ec;border:1px solid #c9dcc0;border-radius:4px;padding:6px 8px;font-family:ui-monospace,monospace;font-size:11.5px}.nn-edit-row{align-items:center;gap:6px;margin:4px 0;display:flex}.nn-scrub{border:1px dashed var(--nn-border);text-align:center;cursor:ew-resize;user-select:none;touch-action:none;color:var(--nn-muted);background:#fafaf8;border-radius:4px;margin:4px 0;padding:4px}.nn-scrub.dragging{border-style:solid;border-color:var(--nn-accent)}.nn-resize{background:var(--nn-bg);border-top:1px solid var(--nn-border);border-bottom:1px solid var(--nn-border);cursor:ns-resize;touch-action:none;flex:none;height:7px}.nn-resize:after{content:"";background:#aaa;width:40px;height:1px;margin:2px auto;display:block}.nn-lower{height:var(--nn-lower);background:var(--nn-panel);flex-direction:column;flex:none;min-height:0;display:flex}.nn-tabs{border-bottom:1px solid var(--nn-border);background:var(--nn-bg);flex:none;gap:2px;padding:4px 8px 0;display:flex}.nn-tab{background:#eeeeea;border-bottom:none;border-radius:4px 4px 0 0;padding:4px 12px}.nn-tab[aria-selected=true]{background:var(--nn-panel);font-weight:600;position:relative;top:1px}.nn-lower-body,.nn-lower-body>[role=tabpanel]{flex-direction:column;flex:1 1 0;min-height:0;display:flex}.nn-lower-body>[hidden]{display:none!important}.nn-compare-stage{flex:1 1 0;justify-content:center;align-items:flex-start;gap:18px;min-height:0;padding:6px 10px;display:flex;overflow:auto}.nn-hm{flex-direction:column;align-items:flex-start;display:flex}.nn-hm-title{min-height:30px;margin-bottom:2px;font-size:11.5px;line-height:1.25}.nn-hm-canvas,.nn-atlas-canvas{display:block}.nn-compare-status{height:38px;color:var(--nn-muted);border-top:1px solid var(--nn-border);flex:none;padding:4px 10px;font-size:11.5px;line-height:1.3;overflow:hidden}.nn-embed-stage{flex:1 1 0;justify-content:center;align-items:flex-start;gap:24px;min-height:0;padding:6px 10px;display:flex;overflow:auto}.nn-plane{flex-direction:column;display:flex}.nn-plane-title{margin-bottom:4px;font-size:11.5px}.nn-plane-canvas{border:1px solid var(--nn-border);cursor:crosshair;touch-action:none;display:block}.nn-train{gap:16px;padding:8px 10px;overflow:auto;flex-direction:row!important}.nn-curves{flex-direction:column;flex:1 1 0;min-width:0;display:flex}.nn-curves-canvas{flex:none;display:block}.nn-curves-readout{margin-top:4px;font-size:12px}.nn-gen{flex-direction:column;flex:0 0 380px;display:flex}.nn-gen-row{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.nn-gen-out{white-space:pre-wrap;word-break:break-all;border:1px solid var(--nn-border);background:#fafaf8;border-radius:4px;flex:auto;min-height:90px;padding:6px 8px;font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.nn-gen-ctx{outline:1px solid var(--nn-older);background:#ffe9b8;font-weight:700}.nn-corpus{padding:8px 12px;overflow:auto;display:block!important}.nn-corpus[hidden]{display:none!important}.nn-corpus-cols{grid-template-columns:1fr 1fr;gap:16px;display:grid}.nn-pre{white-space:pre-wrap;word-break:break-all;border:1px solid var(--nn-border);background:#fafaf8;border-radius:4px;max-height:150px;margin:0;padding:6px 8px;font:11.5px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.nn-tip{z-index:100;pointer-events:none;color:var(--nn-text);background:#fff;border:1px solid #999;border-radius:4px;max-width:340px;padding:5px 8px;font-size:12px;line-height:1.35;display:none;position:fixed;box-shadow:0 1px 4px #0000001f}@media (prefers-reduced-motion:reduce){.nn-wire{transition:none}}@media (width<=1100px){.nn-host{height:auto;overflow:auto}.nn-upper{flex-direction:column}.nn-net{border-right:none;border-bottom:1px solid var(--nn-border);min-width:0;height:420px}.nn-matrices{border-right:none;border-bottom:1px solid var(--nn-border);max-width:none;max-height:320px}.nn-inspector{flex:none}.nn-train{flex-direction:column!important}.nn-gen{flex:none}.nn-corpus-cols{grid-template-columns:1fr}}
