.mindmap-theme{--primary:var(--studio-primary,#5e6ad2);--primary-hover:var(--studio-primary-hover,#828fff);--primary-focus:var(--studio-primary-focus,#5e69d1);--ink:var(--studio-ink,#f7f8f8);--ink-muted:var(--studio-ink-muted,#d0d6e0);--ink-subtle:var(--studio-ink-subtle,#8a8f98);--ink-tertiary:var(--studio-ink-tertiary,#62666d);--canvas:var(--studio-canvas,#010102);--surface-1:var(--studio-surface-1,#0f1011);--surface-2:var(--studio-surface-2,#141516);--surface-3:var(--studio-surface-3,#18191a);--surface-4:var(--studio-surface-4,#191a1b);--hairline:var(--studio-hairline,#23252a);--hairline-strong:var(--studio-hairline-strong,#34343a);--success:var(--studio-success,#27a644);--warning:var(--studio-warning,#d6a434);--danger:var(--studio-danger,#e15d5d);--shadow:var(--studio-shadow,0 24px 80px #0000006b);--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;font-family:SF Pro Display,SF Pro Text,Noto Sans SC,Microsoft YaHei UI,ui-sans-serif,system-ui,sans-serif}.mindmap-theme,.mindmap-theme *,.mindmap-theme :before,.mindmap-theme :after{box-sizing:border-box}.mindmap-theme .sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mindmap-theme{background:var(--app-background,radial-gradient(circle at 28% -10%, #5e6ad22e, transparent 30%), linear-gradient(180deg, #08090b 0%, var(--canvas) 42%));color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}.mindmap-theme :is(button,textarea,input,select){font:inherit}.mindmap-theme button{cursor:pointer}.mindmap-theme button:disabled{cursor:not-allowed}.markdown-text{min-width:0}.markdown-inline,.markdown-inline p{display:inline}.markdown-block{display:block}.markdown-block p{margin:0}.markdown-block p+p{margin-top:.55em}.markdown-text code{color:var(--ink);background:#fff1;border:1px solid #ffffff1f;border-radius:5px;padding:.05em .32em;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.92em}:where(.search-strip,.matrix-summary,.result-pill,.workspace-head h2,.module-title-block p,.step-panel h2,.state-panel-head,.table-heading,.pseudocode-list,th,td,caption) .markdown-text code{color:inherit;background:0 0;border:0;border-radius:0;padding:0}.markdown-text pre{border:1px solid var(--hairline);border-radius:var(--radius-md);background:#00000038;padding:10px 12px;overflow:auto}.markdown-text pre code{background:0 0;border:0;padding:0}.markdown-text .katex{font-size:1em}.markdown-text .katex-display{width:var(--katex-adaptive-width,max-content);height:var(--katex-adaptive-height,auto);margin:.45em 0;overflow:visible}.markdown-text .katex-display>.katex{max-width:none;transform:scale(var(--katex-adaptive-scale,1));transform-origin:top}.app-shell{background:var(--presentation-background);min-height:100vh;color:var(--ink);grid-template-columns:clamp(252px,20vw,304px) minmax(0,1fr);display:grid}.sidebar{border-right:1px solid var(--hairline);background:var(--nav-rail-left-bg);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);flex-direction:column;height:100vh;min-height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand-lockup{align-items:center;gap:12px;margin-bottom:30px;display:flex}.brand-copy{min-width:0}.brand-mark{border-radius:var(--radius-md);background:var(--primary);width:36px;height:36px;color:var(--primary-foreground,#fff);box-shadow:0 0 0 1px var(--studio-surface-1), var(--brand-shadow);place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.brand-mark{box-shadow:0 0 0 1px color-mix(in oklch, var(--studio-surface-1) 18%, transparent), var(--brand-shadow)}}.brand-lockup h1,.brand-lockup p,.workspace-head h2,.step-panel h2,.panel-title-row h2,.pseudocode h2,.table-heading h3{margin:0}.brand-lockup h1{letter-spacing:0;font-size:.95rem;font-weight:650}.brand-lockup p,.module-title-block p,.step-explanation,.input-hint,.input-error,.table-heading span{color:var(--ink-subtle)}.sidebar-theme-toggle{flex:none;margin-left:auto}.sidebar-section-label{color:var(--ink-tertiary);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.73rem;font-weight:600}.sidebar-section-heading{justify-content:space-between;align-items:center;gap:10px;margin:0 8px 10px;display:flex}.algorithm-library-status{max-width:74px;color:var(--ink-tertiary);opacity:0;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;line-height:1;transition:opacity .16s;overflow:hidden}.algorithm-library-status:not(.visible){width:0}.algorithm-library-status.visible{opacity:1}.algorithm-library-actions{justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex}.algorithm-library-action{border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface-1);min-height:28px;color:var(--ink-subtle);white-space:nowrap;justify-content:center;align-items:center;gap:3px;padding:3px 7px;font-size:.72rem;font-weight:600;line-height:1;display:inline-flex}.algorithm-library-action:hover:not(:disabled){border-color:var(--hairline-strong);background:var(--surface-2);color:var(--ink)}.algorithm-library-action.danger{color:var(--danger)}.algorithm-library-action.danger:hover:not(:disabled){border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.algorithm-library-action.danger:hover:not(:disabled){border-color:color-mix(in oklch, var(--danger) 38%, var(--hairline))}}.algorithm-library-action.danger:hover:not(:disabled){background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.algorithm-library-action.danger:hover:not(:disabled){background:color-mix(in oklch, var(--danger) 10%, var(--surface-1))}}.algorithm-library-action:disabled{cursor:not-allowed;opacity:.45}.algorithm-list{align-content:start;gap:14px;min-height:0;padding-right:2px;display:grid;overflow:auto}.algorithm-group{border-radius:var(--radius-md);border:1px solid #0000;min-width:0;padding:5px;transition:background .14s,border-color .14s}.algorithm-group.drop-active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.algorithm-group.drop-active{border-color:color-mix(in oklch, var(--primary) 48%, var(--hairline))}}.algorithm-group.drop-active{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.algorithm-group.drop-active{background:color-mix(in oklch, var(--primary) 7%, transparent)}}.algorithm-group-heading{color:var(--ink-tertiary);letter-spacing:.035em;text-transform:lowercase;justify-content:space-between;align-items:center;gap:8px;padding:2px 6px 6px;font-size:.72rem;font-weight:650;display:flex}.algorithm-group-heading span:last-child{background:var(--surface-2);min-width:20px;color:var(--ink-subtle);font-variant-numeric:tabular-nums;text-align:center;border-radius:999px;padding:1px 6px}.algorithm-group-items{gap:4px;display:grid}.algorithm-group-empty{border:1px dashed var(--hairline-strong);border-radius:var(--radius-sm);min-height:42px;color:var(--ink-tertiary);place-items:center;font-size:.74rem;display:grid}.algorithm-item{border-radius:var(--radius-sm);width:100%;color:var(--ink);text-align:left;cursor:grab;background:0 0;border:1px solid #0000;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:5px;padding:7px 9px;transition:background .16s,border-color .16s,box-shadow .16s,color .16s,opacity .14s;display:grid}.algorithm-item:active{cursor:grabbing}.algorithm-item.dragging{opacity:.4}.algorithm-item.delete-mode{cursor:pointer}.algorithm-item.marked-for-delete{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.algorithm-item.marked-for-delete{border-color:color-mix(in oklch, var(--danger) 46%, var(--hairline))}}.algorithm-item.marked-for-delete{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.algorithm-item.marked-for-delete{background:color-mix(in oklch, var(--danger) 10%, var(--surface-1))}}.algorithm-item.marked-for-delete{color:var(--danger)}.algorithm-item.drop-before{box-shadow:inset 0 2px 0 var(--primary)}.algorithm-item.drop-after{box-shadow:inset 0 -2px 0 var(--primary)}.algorithm-item-grip{color:var(--ink-tertiary);pointer-events:none}.algorithm-item-checkbox{border:1px solid var(--hairline-strong);width:14px;height:14px;color:var(--primary-foreground,#fff);border-radius:4px;place-items:center;display:grid}.algorithm-item.marked-for-delete .algorithm-item-checkbox{border-color:var(--danger);background:var(--danger)}.algorithm-item:hover,.algorithm-item.selected{background:var(--surface-2);border-color:var(--hairline)}.algorithm-item.selected.accent-teal{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){.algorithm-item.selected.accent-teal{background:color-mix(in oklch, var(--primary) 18%, var(--surface-2))}}.algorithm-item.selected.accent-amber{background:var(--warning)}@supports (color:color-mix(in lab, red, red)){.algorithm-item.selected.accent-amber{background:color-mix(in oklch, var(--warning) 16%, var(--surface-2))}}.algorithm-item.selected.accent-red{background:var(--danger)}@supports (color:color-mix(in lab, red, red)){.algorithm-item.selected.accent-red{background:color-mix(in oklch, var(--danger) 15%, var(--surface-2))}}.algorithm-item strong{letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.84rem;font-weight:560;line-height:1.25;display:block;overflow:hidden}@media (pointer:coarse){.algorithm-item{min-height:44px}.sidebar .icon-button{width:44px;min-height:44px}}.workspace{min-width:0;padding:24px clamp(20px,3vw,38px) 34px}.viewer-workspace{min-height:100vh;color:var(--studio-ink);background:0 0;place-items:center;padding:32px clamp(20px,3vw,38px);display:grid;overflow:hidden}.workbench-viewer-frame{width:min(var(--viewer-width), calc(100vw - clamp(252px, 20vw, 304px) - clamp(40px, 6vw, 76px)));min-width:0;max-width:100%;height:min(var(--viewer-height), calc(100vh - 64px));min-height:0}.algorithm-viewer{grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;min-height:0;display:grid}.workspace-head{padding:0 0 12px}.module-title-block{align-items:center;gap:10px;min-width:0;display:flex}.workspace-head h2{letter-spacing:0;border:1px solid var(--hairline);background:var(--surface-2);white-space:nowrap;border-radius:999px;padding:4px 9px;font-size:.98rem;font-weight:650;line-height:1.2}.module-title-block p{border:1px solid var(--hairline);background:var(--subtle-panel-tint);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;flex:1;min-width:0;max-width:none;margin:0;padding:4px 9px;font-size:.84rem;line-height:1.35;overflow:hidden}.module-meta-editor{flex:1;grid-template-columns:minmax(130px,.32fr) minmax(150px,.42fr) minmax(220px,1fr);gap:8px;min-width:0;display:grid}.module-meta-editor label{gap:4px;min-width:0;display:grid}.module-meta-editor label span{color:var(--ink-tertiary);font-size:.68rem;font-weight:700;line-height:1}.module-meta-editor input{border:1px solid var(--hairline-strong);border-radius:var(--radius-md);background:var(--surface-2);width:100%;min-height:31px;color:var(--ink);font:inherit;padding:0 9px;font-size:.82rem;font-weight:600}.module-meta-actions{flex:none;align-items:center;gap:6px;display:inline-flex}.module-meta-status{color:var(--ink-tertiary);white-space:nowrap;flex:none;font-size:.72rem;font-weight:650}.algorithm-settings-backdrop{z-index:80;background:#0000006b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.algorithm-settings-dialog{border:1px solid var(--hairline-strong);border-radius:var(--radius-xl);background:var(--surface-1);width:min(920px,100vw - 48px);max-height:min(860px,100vh - 48px);box-shadow:var(--shadow);grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.algorithm-settings-head,.algorithm-settings-actions{justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.algorithm-settings-head{border-bottom:1px solid var(--hairline)}.algorithm-settings-head h2{color:var(--ink);margin:0;font-size:1rem;font-weight:700}.algorithm-settings-head p{color:var(--ink-tertiary);margin:4px 0 0;font-size:.76rem}.algorithm-settings-body{gap:12px;min-height:0;padding:14px;display:grid;overflow:auto}.algorithm-settings-section{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-1);min-width:0;padding:14px}.algorithm-settings-fields{grid-template-columns:minmax(150px,.4fr) minmax(180px,.6fr);gap:0 10px;display:grid}.algorithm-settings-description{grid-column:1/-1}.algorithm-settings-id{background:var(--surface-2);color:var(--ink-muted);cursor:text;font-family:var(--font-mono,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace)}.algorithm-settings-actions{border-top:1px solid var(--hairline);justify-content:flex-end}.algorithm-settings-actions .module-meta-status{margin-right:auto}.step-kicker,.result-pill{border:1px solid var(--hairline);background:var(--surface-2);color:var(--ink-muted);border-radius:999px;align-items:center;gap:7px;padding:4px 9px;font-size:.76rem;font-weight:600;display:inline-flex}.work-grid{gap:10px;min-width:0;margin-top:16px;display:grid}.algorithm-viewer-grid{grid-template-columns:minmax(0,1.7fr) minmax(340px,.86fr);align-items:stretch;min-height:760px}.control-zone{grid-template-rows:minmax(340px,.64fr) minmax(170px,.36fr);gap:10px;min-width:0;min-height:760px;display:grid}.control-single{min-width:0;min-height:760px}.control-single .pseudocode,.control-single .state-panel{height:100%;min-height:0}.visual-zone{grid-template-rows:auto minmax(0,1fr);gap:10px;min-width:0;min-height:760px;display:grid}.canvas-stack{grid-template-rows:minmax(0,1fr) auto;gap:16px;min-height:0;display:grid}.canvas-shell,.step-panel,.state-panel,.input-panel,.pseudocode,.data-table-shell{border:1px solid var(--hairline);border-radius:var(--radius-xl);background:var(--surface-1);box-shadow:var(--shadow)}.canvas-shell{background:linear-gradient(#ffffff06 1px, transparent 1px), linear-gradient(90deg, #ffffff06 1px, transparent 1px), var(--surface-1);background-size:28px 28px;min-height:0;position:relative;overflow:hidden}.dual-visual-shell{grid-template-rows:auto minmax(0,1fr);min-height:560px;display:grid}.dual-visual-shell .canvas-toolbar{pointer-events:none;padding:12px 14px 10px;position:static}.dual-visual-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0;display:grid}.dual-visual-pane{min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.dual-visual-pane-graph{border-right:1px solid var(--hairline)}.visual-pane-title{z-index:2;border:1px solid var(--hairline);color:var(--ink-muted);pointer-events:none;background:#0f1011d1;border-radius:999px;padding:4px 8px;font-size:.73rem;font-weight:650;position:absolute;top:10px;left:12px}.graph-canvas{width:100%;height:100%;min-height:440px}.zoomable-svg-canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;min-height:440px;display:block}.zoomable-svg-canvas.is-panning{cursor:grabbing}.zoomable-svg-canvas:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}.algorithm-custom-grid{grid-template-columns:1fr;height:100%;min-height:0}.concept-canvas-shell{height:100%;min-height:0}.degree-demo{grid-template-columns:minmax(0,1fr) 210px;gap:14px;height:100%;min-height:560px;padding:18px;display:grid}.degree-demo-board{min-width:0;min-height:0;position:relative;overflow:hidden}.degree-graph{width:100%;height:100%;min-height:500px;display:block}.degree-edge{fill:none;stroke:var(--ink-muted)}@supports (color:color-mix(in lab, red, red)){.degree-edge{stroke:color-mix(in oklch, var(--ink-muted) 52%, transparent)}}.degree-edge{stroke-width:2.2px;stroke-linecap:round;opacity:.54;transition:opacity .16s,stroke .16s,stroke-width .16s}.degree-edge.incoming{stroke:var(--viz-primary-border);stroke-width:5px;opacity:.95}.degree-edge.outgoing{stroke:var(--viz-warning-border);stroke-width:5px;opacity:.95}.degree-edge.both{stroke:var(--viz-danger-border);stroke-width:5.5px;opacity:1}.degree-arrow-neutral{fill:var(--ink-muted)}@supports (color:color-mix(in lab, red, red)){.degree-arrow-neutral{fill:color-mix(in oklch, var(--ink-muted) 52%, transparent)}}.degree-arrow-in{fill:var(--viz-primary-border)}.degree-arrow-out{fill:var(--viz-warning-border)}.degree-arrow-both{fill:var(--viz-danger-border)}.degree-node{cursor:pointer;outline:none}.degree-node circle{fill:var(--surface-2);stroke:var(--hairline-strong);stroke-width:2px;filter:drop-shadow(0 12px 18px #0003);transition:fill .16s,stroke .16s,stroke-width .16s,filter .16s}.degree-node text{pointer-events:none;fill:var(--ink);color:var(--ink);-webkit-user-select:none;user-select:none;font-family:Aptos,Noto Sans SC,sans-serif;font-size:1rem;font-weight:820}.degree-node:hover circle,.degree-node:focus-visible circle{stroke:var(--primary);stroke-width:3px;filter:drop-shadow(0 14px 22px #0000003d)}.degree-node.selected circle{fill:var(--viz-danger-bg);stroke:var(--viz-danger-border);stroke-width:3.5px;filter:drop-shadow(0 0 12px var(--viz-danger-border))}@supports (color:color-mix(in lab, red, red)){.degree-node.selected circle{filter:drop-shadow(0 0 12px color-mix(in oklch, var(--viz-danger-border) 42%, transparent))}}.degree-node.selected text{fill:var(--viz-danger-ink);color:var(--viz-danger-ink)}.degree-readout{align-content:start;gap:10px;min-width:0;display:grid}.degree-readout>div{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-1);gap:6px;padding:14px;display:grid}.degree-readout span{color:var(--ink-tertiary);font-size:.74rem;font-weight:700}.degree-readout strong{color:var(--ink);font-size:2.1rem;font-weight:840;line-height:1}.degree-stat-in strong{color:var(--viz-primary-ink)}.degree-stat-out strong{color:var(--viz-warning-ink)}.degree-readout p{color:var(--ink-subtle);margin:0;font-size:.78rem;font-weight:560;line-height:1.45}.dag-dp-demo{height:100%;min-height:560px;padding:14px;position:relative}.dag-dp-toolbar{z-index:2;pointer-events:none;align-items:center;gap:10px;display:flex;position:absolute;top:18px;left:18px;right:18px}.dag-dp-status,.dag-dp-order{pointer-events:auto;gap:2px;min-width:0;padding:5px 0;display:grid}.dag-dp-status span,.dag-dp-order span{color:var(--ink-subtle);letter-spacing:0;font-size:.72rem;font-weight:760}.dag-dp-status strong,.dag-dp-order strong{color:var(--ink);font-size:.9rem;line-height:1.1}.dag-dp-order{flex:1}.dag-dp-order strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dag-dp-layout-button{pointer-events:auto;border:1px solid var(--viz-primary-border)}@supports (color:color-mix(in lab, red, red)){.dag-dp-layout-button{border:1px solid color-mix(in oklch, var(--viz-primary-border) 42%, var(--hairline))}}.dag-dp-layout-button{background:var(--viz-primary-bg);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.dag-dp-layout-button{background:color-mix(in oklch, var(--viz-primary-bg) 72%, var(--surface-1))}}.dag-dp-layout-button{color:var(--viz-primary-ink);cursor:pointer;font:inherit;padding:7px 11px;font-size:.82rem;font-weight:800;transition:background .14s,border-color .14s,transform .14s}.dag-dp-layout-button:hover:not(:disabled),.dag-dp-layout-button:focus-visible:not(:disabled){border-color:var(--viz-primary-border);background:var(--viz-primary-bg)}@supports (color:color-mix(in lab, red, red)){.dag-dp-layout-button:hover:not(:disabled),.dag-dp-layout-button:focus-visible:not(:disabled){background:color-mix(in oklch, var(--viz-primary-bg) 88%, var(--surface-1))}}.dag-dp-layout-button:hover:not(:disabled),.dag-dp-layout-button:focus-visible:not(:disabled){outline:none;transform:translateY(-1px)}.dag-dp-layout-button:disabled{cursor:not-allowed;opacity:.48}.dag-dp-graph{width:100%;height:100%;min-height:528px;display:block}.dag-dp-edge{fill:none;stroke:var(--viz-primary-border)}@supports (color:color-mix(in lab, red, red)){.dag-dp-edge{stroke:color-mix(in oklch, var(--viz-primary-border) 76%, var(--ink-muted))}}.dag-dp-edge{stroke-width:2.6px;stroke-linecap:round;opacity:.84;transition:opacity .16s,stroke .16s}.dag-dp-arrow{fill:var(--viz-primary-border)}@supports (color:color-mix(in lab, red, red)){.dag-dp-arrow{fill:color-mix(in oklch, var(--viz-primary-border) 76%, var(--ink-muted))}}.dag-dp-node circle{fill:var(--surface-1)}@supports (color:color-mix(in lab, red, red)){.dag-dp-node circle{fill:color-mix(in oklch, var(--surface-1) 86%, var(--viz-primary-bg))}}.dag-dp-node circle{stroke:var(--viz-primary-border)}@supports (color:color-mix(in lab, red, red)){.dag-dp-node circle{stroke:color-mix(in oklch, var(--viz-primary-border) 58%, var(--hairline))}}.dag-dp-node circle{stroke-width:2.4px;filter:drop-shadow(0 10px 18px #0000002e);transition:cx .26s,cy .26s,fill .16s,stroke .16s}.dag-dp-node text{pointer-events:none;fill:var(--ink);font-size:.92rem;font-weight:840}.dag-dp-footer{z-index:2;color:var(--ink-subtle);pointer-events:none;gap:12px;font-size:.78rem;font-weight:740;display:flex;position:absolute;bottom:16px;right:18px}.sequence-canvas{grid-template-rows:auto 1px auto auto;align-content:center;gap:24px;width:100%;height:100%;min-height:520px;padding:54px clamp(18px,3vw,34px) 28px;display:grid;position:relative;overflow:hidden}.sequence-section{gap:12px;min-width:0;display:grid}.sequence-heading{color:var(--ink-subtle);justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;font-weight:650;display:flex}.sequence-heading span{color:var(--ink-muted)}.sequence-heading strong{color:#9ae6a8;font-weight:750}.sequence-row{grid-template-columns:repeat(var(--cell-count,12), minmax(0, 1fr));gap:8px;padding:4px 2px;display:grid;overflow:visible}.sequence-cell{aspect-ratio:1;border:1px solid var(--hairline);border-radius:var(--radius-md);min-width:0;color:var(--ink);background:#ffffff07;grid-template-rows:minmax(0,.75fr) minmax(0,1.25fr) minmax(0,1fr);place-items:center;padding:5px;display:grid;overflow:hidden}.sequence-cell-number-only{grid-template-rows:1fr}.sequence-cell-label,.sequence-cell small{max-width:100%;color:var(--ink-tertiary);text-align:center;font-size:.67rem;font-weight:650;line-height:1.05}.sequence-cell strong{text-overflow:ellipsis;max-width:100%;font-size:.98rem;font-weight:780;line-height:1;overflow:hidden}.sequence-cell small{white-space:normal;word-break:keep-all;overflow:visible}.sequence-cell-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sequence-motion-chip{z-index:6;pointer-events:none;border-radius:var(--radius-md);color:var(--ink);background:#27a64438;border:1px solid #27a644b8;place-items:center;font-size:1rem;font-weight:800;animation:.62s cubic-bezier(.22,1,.36,1) forwards sequence-move-to-tail;display:grid;position:absolute;box-shadow:0 14px 32px #00000038}.sequence-motion-replace{background:#d6a43438;border-color:#d6a434b8}@keyframes sequence-move-to-tail{0%{opacity:.8;transform:translate(0)scale(.94)}72%{opacity:1}to{opacity:0;transform:translate(var(--move-x), var(--move-y)) scale(1)}}.sequence-cell-processed{background:#5e6ad21a;border-color:#828fff61}.sequence-cell-current,.sequence-cell-mid{background:#e15d5d29;border-color:#e15d5db3}.sequence-cell-search{background:#d6a4341a;border-style:dashed;border-color:#d6a43485}.sequence-cell-append{background:#27a64429;border-color:#27a644a6}.sequence-cell-replace{background:#d6a43424;border-color:#d6a434a6}.sequence-cell-answer{background:#27a64429;border-color:#27a644a3}.two-d-lis-canvas{grid-template-rows:minmax(0,1.15fr) minmax(0,1fr);gap:10px;width:100%;height:100%;min-height:0;padding:48px 16px 16px;display:grid;overflow:hidden}.two-d-lis-panel{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:#ffffff05;grid-template-rows:auto minmax(0,1fr);gap:9px;min-width:0;min-height:0;padding:10px;display:grid;overflow:hidden}.two-d-lis-title{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.two-d-lis-title h3{color:var(--ink);margin:0;font-size:.9rem;font-weight:680}.two-d-lis-title span{color:var(--ink-subtle);font-size:.74rem;font-weight:600}.two-d-lis-point-grid{grid-template-columns:repeat(var(--column-count,8), var(--cell-size,44px));justify-content:space-between;align-items:stretch;gap:6px;min-height:0;display:grid;overflow:hidden}.two-d-lis-column{width:var(--cell-size,44px);grid-template-rows:minmax(0,1fr) auto;gap:5px;min-width:0;min-height:0;display:grid;overflow:hidden}.two-d-lis-stack{flex-direction:column;justify-content:flex-end;align-items:stretch;gap:5px;min-height:0;display:flex;overflow:hidden}.two-d-lis-axis-label{min-height:22px;width:var(--cell-size,44px);border-top:1px solid var(--hairline);color:var(--ink-tertiary);place-items:center;font-size:.7rem;font-weight:700;display:grid}.two-d-lis-point-cell,.two-d-lis-tail-cell{width:var(--cell-size,44px);height:var(--cell-size,44px);min-width:var(--cell-size,44px);min-height:var(--cell-size,44px);border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--ink);text-align:center;background:#ffffff07;place-items:center;gap:2px;padding:3px;display:grid}.two-d-lis-point-cell{flex:0 0 var(--cell-size,44px)}.two-d-lis-point-cell span,.two-d-lis-tail-cell span,.two-d-lis-point-cell em,.two-d-lis-tail-cell em{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ink-tertiary);font-size:.62rem;font-style:normal;font-weight:700;overflow:hidden}.two-d-lis-point-cell strong,.two-d-lis-tail-cell strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--ink);font-size:.68rem;font-weight:760;line-height:1;overflow:hidden}.two-d-lis-point-cell strong{letter-spacing:0}.two-d-lis-tail-cell em{letter-spacing:0;font-size:.58rem}.two-d-lis-cell-processed{background:#5e6ad21a;border-color:#828fff61}.two-d-lis-cell-current,.two-d-lis-cell-mid{background:#e15d5d29;border-color:#e15d5db3}.two-d-lis-cell-search{background:#d6a4341a;border-style:dashed;border-color:#d6a43485}.two-d-lis-cell-append,.two-d-lis-cell-answer{background:#27a64429;border-color:#27a644a6}.two-d-lis-cell-replace{background:#d6a43424;border-color:#d6a434a6}.two-d-lis-tails{grid-template-rows:auto minmax(0,1fr) auto}.two-d-lis-tail-grid{grid-template-columns:repeat(var(--tail-count,1), var(--cell-size,44px));place-content:center start;gap:6px;min-height:0;display:grid;overflow:hidden}.two-d-lis-tail-cell{min-height:var(--cell-size,44px)}.two-d-lis-empty{border:1px dashed var(--hairline);border-radius:var(--radius-md);color:var(--ink-tertiary);text-align:center;grid-column:1/-1;padding:14px}.five-copy-canvas{grid-template-rows:minmax(0,1.25fr) minmax(0,.95fr);gap:12px;width:100%;height:100%;min-height:520px;padding:54px clamp(14px,2vw,24px) 24px;display:grid;overflow:hidden}.five-copy-panel{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:#ffffff05;grid-template-rows:auto minmax(0,1fr);gap:12px;min-width:0;min-height:0;padding:12px;display:grid;overflow:hidden}.five-copy-source{grid-template-rows:auto minmax(0,1fr) minmax(0,1fr)}.five-copy-title,.five-copy-current{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.five-copy-title h3{color:var(--ink);margin:0;font-size:.9rem;font-weight:680}.five-copy-title span,.five-copy-current span,.five-copy-current em{color:var(--ink-subtle);font-size:.74rem;font-style:normal;font-weight:600}.five-copy-sequence-row{grid-template-rows:auto minmax(0,1fr);gap:8px;min-height:0;display:grid}.five-copy-sequence-label{color:var(--ink-muted);font-size:.75rem;font-weight:700}.five-copy-sequence-cells{grid-template-columns:repeat(15,minmax(30px,1fr));align-content:start;gap:6px;min-height:0;display:grid;overflow:auto}.five-copy-sequence-cell,.five-copy-tail-cell{border:1px solid var(--hairline);border-radius:var(--radius-sm);min-width:0;color:var(--ink);background:#ffffff07}.five-copy-sequence-cell{place-items:center;min-height:38px;padding:4px;display:grid}.five-copy-sequence-cell span,.five-copy-tail-cell span{color:var(--ink-tertiary);font-size:.62rem;font-weight:700}.five-copy-sequence-cell strong,.five-copy-tail-cell strong{font-size:.92rem;line-height:1}.five-copy-sequence-cell.related,.five-copy-sequence-cell.related{background:#d6a4341a;border-color:#d6a43470}.five-copy-sequence-cell.active{background:#27a6442e;border-color:#27a644a8;box-shadow:inset 0 0 0 1px #27a6442e}.five-copy-tails{grid-template-rows:auto auto minmax(0,1fr)}.five-copy-current{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface-2);padding:8px 9px}.five-copy-current strong{color:#9ae6a8;font-size:1rem}.five-copy-tail-grid{grid-template-columns:repeat(12,minmax(34px,1fr));align-content:start;gap:8px;min-height:0;display:grid;overflow:auto}.five-copy-tail-cell{aspect-ratio:1;place-items:center;padding:5px;display:grid}.five-copy-tail-cell.active{background:#e15d5d29;border-color:#e15d5da8}.five-copy-tail-cell.done{background:#27a64429;border-color:#27a644a8}.five-copy-empty{border:1px dashed var(--hairline);border-radius:var(--radius-md);color:var(--ink-tertiary);text-align:center;grid-column:1/-1;padding:14px}.sequence-divider{background:var(--hairline);height:1px}.sequence-empty{border:1px dashed var(--hairline);border-radius:var(--radius-md);min-height:72px;color:var(--ink-tertiary);place-items:center;font-size:.86rem;display:grid}.search-strip{flex-wrap:wrap;align-items:center;gap:8px;padding-top:2px;display:flex}.search-strip>span,.search-strip>strong{border:1px solid var(--hairline);background:var(--surface-2);min-height:28px;color:var(--ink-subtle);border-radius:999px;align-items:center;padding:5px 9px;font-size:.75rem;font-weight:650;display:inline-flex}.search-strip strong{color:var(--ink-muted)}.matrix-canvas{grid-template-rows:auto minmax(0,1fr);gap:14px;width:100%;height:100%;min-height:520px;padding:52px clamp(16px,2.6vw,30px) 24px;display:grid}.matrix-summary{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.matrix-summary-main{align-items:center;gap:8px;min-width:0;display:flex}.matrix-context-chips{flex:none;align-items:center;gap:6px;display:flex}.matrix-context-chips>strong,.matrix-summary-main>span,.matrix-summary>strong{border:1px solid var(--hairline);background:var(--surface-2);min-height:30px;color:var(--ink-subtle);border-radius:999px;align-items:center;padding:5px 10px;font-size:.76rem;font-weight:650;display:inline-flex}.matrix-context-chips>strong{color:#f2d68d;background:#d6a4341f;border-color:#d6a43473}.matrix-summary-main>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.matrix-summary>strong{color:#9ae6a8;flex:none}.matrix-scroll{min-height:0;overflow:visible}.matrix-grid{grid-template-columns:repeat(var(--matrix-cols), minmax(0, 1fr));align-content:start;gap:5px;width:100%;min-width:0;margin:0 auto;display:grid}.matrix-axis,.matrix-cell{aspect-ratio:1;border:1px solid var(--hairline);border-radius:var(--radius-sm);place-items:center;min-width:0;font-size:.78rem;font-weight:720;display:grid;overflow:hidden}.matrix-axis{color:var(--ink-subtle);background:#0f1011f0}.matrix-axis-match{color:var(--ink);background:#27a6442e;border-color:#27a644a8;box-shadow:inset 0 0 0 1px #27a6442e}.matrix-axis-current{color:var(--ink);background:#e15d5d24;border-color:#e15d5d94}.matrix-corner{z-index:4}.matrix-row-axis{z-index:3}.matrix-cell{color:var(--ink);background:#ffffff06}.matrix-cell-empty{color:#0000;background:#ffffff03}.matrix-cell-base{color:var(--ink-tertiary);background:#ffffff05}.matrix-cell-filled{background:#5e6ad214;border-color:#828fff47}.matrix-cell-current{background:#e15d5d29;border-color:#e15d5db8}.matrix-cell-match{background:#27a6442e;border-color:#27a644a8}.matrix-cell-source{background:#d6a4341f;border-style:dashed;border-color:#d6a43494}.matrix-cell-path,.matrix-cell-answer{background:#27a6442e;border-color:#27a644b8;box-shadow:inset 0 0 0 1px #27a64438}.knapsack-canvas{grid-template-rows:auto minmax(0,1fr);gap:12px;width:100%;height:100%;min-height:520px;padding:52px clamp(16px,2.6vw,30px) 24px;display:grid;overflow:hidden}.knapsack-context{grid-template-columns:minmax(130px,.75fr) minmax(130px,.75fr) minmax(260px,1.55fr) minmax(86px,.42fr);gap:9px;min-width:0;display:grid}.knapsack-current-item,.knapsack-current-capacity,.knapsack-answer,.knapsack-candidate{border:1px solid var(--hairline);border-radius:var(--radius-md);background:#ffffff08;min-width:0;padding:9px 10px}.knapsack-current-item,.knapsack-current-capacity,.knapsack-answer{gap:2px;display:grid}.knapsack-current-item span,.knapsack-current-capacity span,.knapsack-answer span,.knapsack-candidate span{color:var(--ink-tertiary);font-size:.68rem;font-weight:720}.knapsack-current-item strong,.knapsack-current-capacity strong,.knapsack-answer strong,.knapsack-candidate strong{color:var(--ink);font-size:1.02rem;font-weight:820;line-height:1.1}.knapsack-current-item small,.knapsack-current-capacity small,.knapsack-candidate small{min-width:0;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:650;overflow:hidden}.knapsack-candidates{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;min-width:0;display:grid}.knapsack-candidate{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value""formula formula";align-items:center;gap:3px 8px;display:grid}.knapsack-candidate span{grid-area:label}.knapsack-candidate strong{grid-area:value}.knapsack-candidate small{grid-area:formula}.knapsack-candidate-chosen{background:#27a64429;border-color:#27a644ad;box-shadow:inset 0 0 0 1px #27a64429}.knapsack-candidate-unavailable{opacity:.64}.knapsack-answer{text-align:center;align-content:center}.knapsack-answer strong{color:#9ae6a8;font-size:1.24rem}.knapsack-table-scroll{min-height:0;padding-bottom:2px;overflow:auto}.knapsack-grid{grid-template-columns:minmax(74px, 1.45fr) repeat(var(--knapsack-cols), minmax(34px, 1fr));align-content:start;gap:5px;width:100%;min-width:min-content;margin:0 auto;display:grid}.knapsack-axis,.knapsack-cell{border:1px solid var(--hairline);border-radius:var(--radius-sm);place-items:center;min-width:0;min-height:34px;font-size:.76rem;font-weight:740;display:grid;overflow:hidden}.knapsack-axis{color:var(--ink-subtle);background:#0f1011f0}.knapsack-corner,.knapsack-row-axis{justify-items:start;padding:0 6px}.knapsack-axis-current{color:var(--ink);background:#d6a43421;border-color:#d6a434a8}.knapsack-cell{color:var(--ink);background:#ffffff06}.knapsack-cell-empty{color:#0000;background:#ffffff03}.knapsack-cell-base{color:var(--ink-tertiary);background:#ffffff05}.knapsack-cell-filled{border-color:var(--hairline);background:#ffffff06}.knapsack-cell-skip-source,.knapsack-cell-take-source{background:#5e6ad226;border-style:dashed;border-color:#828fff9e}.knapsack-cell-current{background:#e15d5d33;border-color:#e15d5dd6;box-shadow:inset 0 0 0 1px #e15d5d38}.one-d-knapsack-canvas{grid-template-rows:auto minmax(0,1fr);gap:12px;width:100%;height:100%;min-height:520px;padding:52px clamp(16px,2.6vw,30px) 24px;display:grid;overflow:hidden}.one-d-knapsack-context{grid-template-columns:minmax(130px,.75fr) minmax(130px,.75fr) minmax(260px,1.55fr) minmax(86px,.42fr);gap:9px;min-width:0;display:grid}.one-d-knapsack-card,.one-d-knapsack-candidate{border:1px solid var(--hairline);border-radius:var(--radius-md);background:#ffffff08;gap:2px;min-width:0;padding:9px 10px;display:grid}.one-d-knapsack-card span,.one-d-knapsack-candidate span{color:var(--ink-tertiary);font-size:.68rem;font-weight:720}.one-d-knapsack-card strong,.one-d-knapsack-candidate strong{color:var(--ink);font-size:1.02rem;font-weight:820;line-height:1.1}.one-d-knapsack-card small,.one-d-knapsack-candidate small{min-width:0;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:650;overflow:hidden}.one-d-knapsack-answer{text-align:center;align-content:center}.one-d-knapsack-answer strong{color:#9ae6a8;font-size:1.24rem}.one-d-knapsack-candidates{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;min-width:0;display:grid}.one-d-knapsack-candidate{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value""formula formula";align-items:center;gap:3px 8px}.one-d-knapsack-candidate span{grid-area:label}.one-d-knapsack-candidate strong{grid-area:value}.one-d-knapsack-candidate small{grid-area:formula}.one-d-knapsack-candidate-chosen{background:#27a64429;border-color:#27a644ad;box-shadow:inset 0 0 0 1px #27a64429}.one-d-knapsack-array{place-items:center;min-height:0;display:grid;overflow:auto}.one-d-knapsack-row{grid-template-columns:repeat(var(--one-d-cols), minmax(44px, 1fr));gap:7px;width:100%;min-width:min-content;margin:0 auto;display:grid}.one-d-knapsack-cell{aspect-ratio:1;border:1px solid var(--hairline);border-radius:var(--radius-sm);min-width:0;color:var(--ink);background:#ffffff06;grid-template-rows:auto minmax(0,1fr);place-items:center;padding:6px 4px;display:grid;overflow:hidden}.one-d-knapsack-cell span{color:var(--ink-tertiary);font-size:.64rem;font-weight:720}.one-d-knapsack-cell strong{font-size:1rem;font-weight:820}.one-d-knapsack-cell-source{background:#5e6ad226;border-style:dashed;border-color:#828fff9e}.one-d-knapsack-cell-current{background:#e15d5d33;border-color:#e15d5dd6;box-shadow:inset 0 0 0 1px #e15d5d38}.multi-knapsack-canvas{grid-template-rows:auto auto minmax(0,1fr);gap:12px;width:100%;height:100%;min-height:520px;padding:52px clamp(16px,2.6vw,30px) 24px;display:grid;overflow:hidden}.multi-knapsack-context{grid-template-columns:minmax(130px,.75fr) minmax(130px,.75fr) minmax(260px,1.55fr) minmax(86px,.42fr);gap:9px;min-width:0;display:grid}.multi-knapsack-card,.multi-knapsack-candidate{border:1px solid var(--hairline);border-radius:var(--radius-md);background:#ffffff08;gap:2px;min-width:0;padding:9px 10px;display:grid}.multi-knapsack-card span,.multi-knapsack-candidate span{color:var(--ink-tertiary);font-size:.68rem;font-weight:720}.multi-knapsack-card strong,.multi-knapsack-candidate strong{color:var(--ink);font-size:1.02rem;font-weight:820;line-height:1.1}.multi-knapsack-card small,.multi-knapsack-candidate small{min-width:0;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:650;overflow:hidden}.multi-knapsack-candidates{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;min-width:0;display:grid}.multi-knapsack-candidate{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value""formula formula";align-items:center;gap:3px 8px}.multi-knapsack-candidate span{grid-area:label}.multi-knapsack-candidate strong{grid-area:value}.multi-knapsack-candidate small{grid-area:formula}.multi-knapsack-candidate-chosen{background:#27a64429;border-color:#27a644ad;box-shadow:inset 0 0 0 1px #27a64429}.multi-knapsack-answer{text-align:center;align-content:center}.multi-knapsack-answer strong{color:#9ae6a8;font-size:1.24rem}.multi-knapsack-split{grid-template-rows:auto auto;gap:8px;min-width:0;display:grid;overflow:hidden}.multi-knapsack-source-row,.multi-knapsack-bundle-row{gap:7px;min-width:0;display:flex;overflow:hidden}.multi-knapsack-bundle-row{padding-bottom:2px;overflow-x:auto}.multi-knapsack-source-chip,.multi-knapsack-bundle-chip,.multi-knapsack-empty{border:1px solid var(--hairline);border-radius:var(--radius-sm);min-width:0;color:var(--ink-subtle);background:#ffffff06;flex:none;font-size:.73rem;font-weight:700}.multi-knapsack-source-chip{grid-template-columns:auto auto auto auto;align-items:center;gap:7px;padding:6px 8px;display:grid}.multi-knapsack-bundle-chip{gap:1px;padding:6px 9px;display:grid}.multi-knapsack-source-chip strong,.multi-knapsack-bundle-chip strong{color:var(--ink)}.multi-knapsack-count{color:#f0a0a0;background:#e15d5d29;border:1px solid #e15d5d9e;border-radius:999px;justify-content:center;align-items:center;min-height:20px;padding:2px 7px;font-size:.74rem;font-weight:850;line-height:1;display:inline-flex}.multi-knapsack-bundle-chip small{color:var(--ink-muted);font-size:.68rem;font-weight:650}.multi-knapsack-source-current,.multi-knapsack-bundle-current{background:#d6a43421;border-color:#d6a434a8}.multi-knapsack-bundle-processed{background:#27a6441a;border-color:#27a64473}.multi-knapsack-empty{width:100%;color:var(--ink-muted);padding:8px 10px}.multi-knapsack-array{place-items:center;min-height:0;display:grid;overflow:auto}.multi-knapsack-row{grid-template-columns:repeat(var(--multi-knapsack-cols), minmax(44px, 1fr));gap:7px;width:100%;min-width:min-content;margin:0 auto;display:grid}.multi-knapsack-cell{aspect-ratio:1;border:1px solid var(--hairline);border-radius:var(--radius-sm);min-width:0;color:var(--ink);background:#ffffff06;grid-template-rows:auto minmax(0,1fr);place-items:center;padding:6px 4px;display:grid;overflow:hidden}.multi-knapsack-cell span{color:var(--ink-tertiary);font-size:.64rem;font-weight:720}.multi-knapsack-cell strong{font-size:1rem;font-weight:820}.multi-knapsack-cell-source{background:#5e6ad226;border-style:dashed;border-color:#828fff9e}.multi-knapsack-cell-current{background:#e15d5d33;border-color:#e15d5dd6;box-shadow:inset 0 0 0 1px #e15d5d38}.group-knapsack-canvas{grid-template-rows:auto auto minmax(0,1fr);gap:12px;width:100%;height:100%;min-height:520px;padding:52px clamp(16px,2.6vw,30px) 24px;display:grid;overflow:hidden}.group-knapsack-context{grid-template-columns:minmax(130px,.75fr) minmax(130px,.75fr) minmax(260px,1.55fr) minmax(86px,.42fr);gap:9px;min-width:0;display:grid}.group-knapsack-card,.group-knapsack-candidate{border:1px solid var(--hairline);border-radius:var(--radius-md);background:#ffffff08;gap:2px;min-width:0;padding:9px 10px;display:grid}.group-knapsack-card span,.group-knapsack-candidate span{color:var(--ink-tertiary);font-size:.68rem;font-weight:720}.group-knapsack-card strong,.group-knapsack-candidate strong{color:var(--ink);font-size:1.02rem;font-weight:820;line-height:1.1}.group-knapsack-card small,.group-knapsack-candidate small{min-width:0;color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;font-weight:650;overflow:hidden}.group-knapsack-candidates{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;min-width:0;display:grid}.group-knapsack-candidate{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"label value""formula formula";align-items:center;gap:3px 8px}.group-knapsack-candidate span{grid-area:label}.group-knapsack-candidate strong{grid-area:value}.group-knapsack-candidate small{grid-area:formula}.group-knapsack-candidate-chosen{background:#27a64429;border-color:#27a644ad;box-shadow:inset 0 0 0 1px #27a64429}.group-knapsack-candidate-unavailable{opacity:.58}.group-knapsack-answer{text-align:center;align-content:center}.group-knapsack-answer strong{color:#9ae6a8;font-size:1.24rem}.group-knapsack-groups{gap:8px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.group-knapsack-group{border:1px solid var(--hairline);border-radius:var(--radius-md);background:#ffffff06;flex:none;gap:6px;min-width:168px;padding:8px;display:grid}.group-knapsack-group>strong{color:var(--ink);font-size:.78rem;font-weight:800}.group-knapsack-group-current{background:#d6a4341a;border-color:#d6a434a8}.group-knapsack-item-row{flex-wrap:wrap;gap:6px;display:flex}.group-knapsack-item-chip{border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--ink-subtle);background:#ffffff06;grid-template-columns:auto auto auto;align-items:center;gap:6px;padding:5px 7px;font-size:.7rem;font-weight:700;display:grid}.group-knapsack-item-chip strong{color:var(--ink)}.group-knapsack-item-current{border-color:#d6a43480}.group-knapsack-item-chosen{background:#27a64424;border-color:#27a644a8}.group-knapsack-table-scroll{min-height:0;padding-bottom:2px;overflow:auto}.group-knapsack-grid{grid-template-columns:minmax(74px, 1.45fr) repeat(var(--group-knapsack-cols), minmax(34px, 1fr));align-content:start;gap:5px;width:100%;min-width:min-content;margin:0 auto;display:grid}.group-knapsack-axis,.group-knapsack-cell{border:1px solid var(--hairline);border-radius:var(--radius-sm);place-items:center;min-width:0;min-height:34px;font-size:.76rem;font-weight:740;display:grid;overflow:hidden}.group-knapsack-axis{color:var(--ink-subtle);background:#0f1011f0}.group-knapsack-corner,.group-knapsack-row-axis{justify-items:start;padding:0 6px}.group-knapsack-axis-current{color:var(--ink);background:#d6a43421;border-color:#d6a434a8}.group-knapsack-cell{color:var(--ink);background:#ffffff06}.group-knapsack-cell-empty{color:#0000;background:#ffffff03}.group-knapsack-cell-base{color:var(--ink-tertiary);background:#ffffff05}.group-knapsack-cell-filled{border-color:var(--hairline);background:#ffffff06}.group-knapsack-cell-source{background:#5e6ad226;border-style:dashed;border-color:#828fff9e}.group-knapsack-cell-current{background:#e15d5d33;border-color:#e15d5dd6;box-shadow:inset 0 0 0 1px #e15d5d38}.dual-visual-pane .graph-canvas,.dual-visual-pane .tree-canvas{height:100%;min-height:0}.tree-canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;min-height:440px}.tree-canvas:active{cursor:grabbing}.canvas-toolbar{z-index:2;pointer-events:none;color:var(--ink-tertiary);letter-spacing:.04em;text-transform:uppercase;justify-content:flex-end;font-size:.72rem;font-weight:600;display:flex;position:absolute;top:12px;left:14px;right:14px}.state-legend{z-index:3;pointer-events:none;flex-wrap:wrap;gap:8px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.legend-item{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f1011d1;border:1px solid #34343adb;grid-template-columns:24px auto;align-items:center;gap:7px;padding:6px 8px;display:inline-grid}.legend-item strong,.legend-item small{display:block}.legend-item strong{color:var(--ink-muted);font-size:.72rem;font-weight:650;line-height:1.05}.legend-item small{color:var(--ink-tertiary);font-size:.68rem;line-height:1.2}.legend-swatch{border:1px solid;border-radius:999px;width:20px;height:10px}.legend-node{justify-self:center;width:14px;height:14px}.legend-edge{border-width:0;width:24px;height:4px}.legend-visited{color:#828fff;background:#202557}.legend-queued{color:#5e6ad2;background:#5e6ad22e}.legend-selected{color:#828fff;background:#5e6ad2}.canvas-fallback,.empty-state{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;min-height:320px;display:flex}.tree-canvas{background:linear-gradient(#ffffff06 1px, transparent 1px), linear-gradient(90deg, #ffffff06 1px, transparent 1px), var(--surface-1);background-size:28px 28px;width:100%;height:560px;display:block}.tree-link{fill:none;stroke:#3e3e44;stroke-width:1.5px}.tree-edge-label rect{fill:#27a6442e;stroke:#27a6448c;stroke-width:1px}.tree-edge-label text{fill:#9ae6a8;font-size:12px;font-weight:760}.tree-node circle{fill:var(--surface-2);stroke:var(--hairline-strong);stroke-width:1.5px}.tree-node text{fill:var(--ink);font-size:14px;font-weight:650}.tree-node .node-weight-badge{fill:#d6a4342e;stroke:#d6a43473;stroke-width:1px}.tree-node .node-weight-label{fill:#f5d37a;font-size:11px;font-weight:750}.tree-node-root circle{fill:#d6a43438;stroke:#d6a434a6}.tree-node-visited circle{fill:#5e6ad233;stroke:#828fffb3}.tree-node-current circle{fill:#e15d5d38;stroke:var(--danger)}.tree-node-answer circle{fill:#27a64438;stroke:var(--success)}.tree-node-virtual circle{fill:#5e6ad22e;stroke:#828fffad}.tree-node-muted{opacity:.38}.tree-node-muted circle{fill:var(--viz-node-bg)}@supports (color:color-mix(in lab, red, red)){.tree-node-muted circle{fill:color-mix(in srgb, var(--viz-node-bg) 55%, transparent)}}.tree-node-muted circle{stroke-dasharray:4 4}.tree-status{pointer-events:none}.tree-status rect{fill:var(--viz-floating-bg)}@supports (color:color-mix(in lab, red, red)){.tree-status rect{fill:color-mix(in srgb, var(--viz-floating-bg) 94%, transparent)}}.tree-status rect{stroke:var(--viz-border);stroke-width:1px}.tree-status-label,.tree-status-detail{fill:var(--viz-ink);font-family:inherit}.tree-status-label{font-size:13px;font-weight:760}.tree-status-detail{fill:var(--viz-muted);font-size:11px}.tree-status-success rect{stroke:var(--viz-success-border)}.tree-status-warning rect{stroke:var(--viz-warning-border)}.tree-status-danger rect{stroke:var(--viz-danger-border)}.tree-status-info rect{stroke:var(--viz-primary-border)}.tree-overlay path{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:7 5}.tree-overlay-label rect{fill:var(--viz-floating-bg)}@supports (color:color-mix(in lab, red, red)){.tree-overlay-label rect{fill:color-mix(in srgb, var(--viz-floating-bg) 95%, transparent)}}.tree-overlay-label rect{stroke-width:1px}.tree-overlay-label text{font-size:11px;font-weight:760}.tree-overlay-query path,.tree-overlay-query .tree-overlay-label rect{stroke:var(--viz-primary-border)}.tree-overlay-query .tree-overlay-label text{fill:var(--viz-primary-border)}.tree-overlay-same-set path,.tree-overlay-same-set .tree-overlay-label rect{stroke:var(--viz-warning-border)}.tree-overlay-same-set .tree-overlay-label text{fill:var(--viz-warning-ink)}.tree-overlay-conflict path,.tree-overlay-conflict .tree-overlay-label rect,.tree-overlay-delete path,.tree-overlay-delete .tree-overlay-label rect{stroke:var(--viz-danger-border)}.tree-overlay-conflict .tree-overlay-label text,.tree-overlay-delete .tree-overlay-label text{fill:var(--viz-danger-ink)}.tree-overlay-rollback path,.tree-overlay-rollback .tree-overlay-label rect{stroke:var(--viz-danger-border)}.tree-overlay-rollback path{stroke-width:3px;stroke-dasharray:3 6}.tree-overlay-rollback .tree-overlay-label text{fill:var(--viz-danger-ink)}.tree-canvas-dsu-size .tree-node-root circle{stroke-width:2.5px}.tree-canvas-dsu-potential{background-size:24px 24px}.tree-canvas-dsu-potential .tree-link{stroke:var(--viz-primary-border)}@supports (color:color-mix(in lab, red, red)){.tree-canvas-dsu-potential .tree-link{stroke:color-mix(in srgb, var(--viz-primary-border) 70%, var(--viz-line))}}.tree-canvas-dsu-potential .tree-link{stroke-width:2px}.tree-canvas-dsu-potential .tree-edge-label rect{fill:var(--viz-primary-bg)}@supports (color:color-mix(in lab, red, red)){.tree-canvas-dsu-potential .tree-edge-label rect{fill:color-mix(in srgb, var(--viz-primary-bg) 82%, var(--viz-canvas-bg))}}.tree-canvas-dsu-potential .tree-edge-label rect{stroke:var(--viz-primary-border)}.tree-canvas-dsu-potential .tree-edge-label text{fill:var(--viz-primary-border)}.tree-canvas-dsu-deletable .tree-node-muted circle{fill:var(--viz-danger-bg)}@supports (color:color-mix(in lab, red, red)){.tree-canvas-dsu-deletable .tree-node-muted circle{fill:color-mix(in srgb, var(--viz-danger-bg) 35%, var(--viz-node-bg))}}.tree-canvas-dsu-deletable .tree-node-muted circle{stroke:var(--viz-danger-border)}.tree-canvas-dsu-rollback .tree-link{stroke-width:2px}.step-panel{min-height:132px;box-shadow:none;padding:14px 16px}.step-meta-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.step-panel h2{letter-spacing:0;margin-top:9px;font-size:1.02rem;font-weight:600;line-height:1.28}.step-explanation{margin:8px 0 0;font-size:.92rem;line-height:1.65}.result-pill{color:#9ae6a8;background:#27a6441f;border-color:#27a6445c;justify-content:center;min-width:92px}.result-pill.empty{border-color:var(--hairline);color:var(--ink-tertiary);background:#ffffff06}.canvas-shell,.tree-canvas{background:linear-gradient(var(--viz-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--viz-grid-line) 1px, transparent 1px), var(--viz-canvas-bg);background-size:28px 28px}.visual-pane-title,.legend-item{border-color:var(--viz-border);background:var(--viz-floating-bg);color:var(--viz-muted)}.two-d-lis-panel,.five-copy-panel,.edge-lane,.knapsack-current-item,.knapsack-current-capacity,.knapsack-answer,.knapsack-candidate,.one-d-knapsack-card,.one-d-knapsack-candidate,.multi-knapsack-card,.multi-knapsack-candidate,.group-knapsack-card,.group-knapsack-candidate,.group-knapsack-group,.multi-knapsack-source-chip,.multi-knapsack-bundle-chip,.multi-knapsack-empty,.group-knapsack-item-chip,.diagnostic-panel{border-color:var(--viz-border);background:var(--viz-panel-bg)}.sequence-cell,.two-d-lis-point-cell,.two-d-lis-tail-cell,.five-copy-sequence-cell,.five-copy-tail-cell,.matrix-cell,.knapsack-cell,.one-d-knapsack-cell,.multi-knapsack-cell,.group-knapsack-cell{border-color:var(--viz-border);background:var(--viz-cell-bg);color:var(--viz-ink)}.matrix-axis,.knapsack-axis,.group-knapsack-axis{border-color:var(--viz-border);background:var(--viz-axis-bg);color:var(--viz-subtle)}.matrix-cell-empty,.knapsack-cell-empty,.group-knapsack-cell-empty{background:0 0}.matrix-cell-base,.knapsack-cell-base,.group-knapsack-cell-base{background:var(--viz-cell-muted-bg);color:var(--viz-subtle)}.sequence-cell-processed,.two-d-lis-cell-processed,.matrix-cell-filled,.knapsack-cell-skip-source,.knapsack-cell-take-source,.one-d-knapsack-cell-source,.multi-knapsack-cell-source,.group-knapsack-cell-source,.tree-node-visited circle,.tree-node-virtual circle{border-color:var(--viz-primary-border);background:var(--viz-primary-bg);fill:var(--viz-primary-bg);stroke:var(--viz-primary-border)}.sequence-cell-current,.sequence-cell-mid,.two-d-lis-cell-current,.two-d-lis-cell-mid,.five-copy-tail-cell.active,.matrix-cell-current,.matrix-axis-current,.knapsack-cell-current,.one-d-knapsack-cell-current,.multi-knapsack-cell-current,.group-knapsack-cell-current,.multi-knapsack-count,.tree-node-current circle{border-color:var(--viz-danger-border);background:var(--viz-danger-bg);color:var(--viz-danger-ink);fill:var(--viz-danger-bg);stroke:var(--viz-danger-border)}.sequence-cell-search,.sequence-cell-replace,.two-d-lis-cell-search,.two-d-lis-cell-replace,.sequence-motion-replace,.five-copy-sequence-cell.related,.matrix-context-chips>strong,.matrix-cell-source,.knapsack-axis-current,.multi-knapsack-source-current,.multi-knapsack-bundle-current,.group-knapsack-group-current,.group-knapsack-item-current,.group-knapsack-axis-current,.tree-node-root circle,.tree-node .node-weight-badge{border-color:var(--viz-warning-border);background:var(--viz-warning-bg);color:var(--viz-warning-ink);fill:var(--viz-warning-bg);stroke:var(--viz-warning-border)}.sequence-cell-append,.sequence-cell-answer,.two-d-lis-cell-append,.two-d-lis-cell-answer,.sequence-motion-chip,.five-copy-sequence-cell.active,.five-copy-tail-cell.done,.matrix-axis-match,.matrix-cell-match,.matrix-cell-path,.matrix-cell-answer,.knapsack-candidate-chosen,.one-d-knapsack-candidate-chosen,.multi-knapsack-candidate-chosen,.multi-knapsack-bundle-processed,.group-knapsack-candidate-chosen,.group-knapsack-item-chosen,.tree-edge-label rect,.tree-node-answer circle,.result-pill{border-color:var(--viz-success-border);background:var(--viz-success-bg);color:var(--viz-success-ink);fill:var(--viz-success-bg);stroke:var(--viz-success-border)}.tree-edge-label rect{fill:var(--viz-canvas-bg);stroke:var(--viz-border)}.matrix-summary>strong,.knapsack-answer strong,.one-d-knapsack-answer strong,.multi-knapsack-answer strong,.group-knapsack-answer strong,.five-copy-current strong,.sequence-heading strong,.tree-edge-label text{color:var(--viz-success-ink);fill:var(--viz-success-ink)}.matrix-context-chips>strong,.tree-node .node-weight-label{color:var(--viz-warning-ink);fill:var(--viz-warning-ink)}.multi-knapsack-count{color:var(--viz-danger-ink)}.tree-link{stroke:var(--viz-line)}.tree-node circle{fill:var(--viz-node-bg);stroke:var(--viz-node-border)}.tree-node text{fill:var(--viz-node-ink)}.legend-active{color:var(--viz-danger-border);background:var(--viz-danger-bg);box-shadow:0 0 0 2px var(--viz-danger-border)}@supports (color:color-mix(in lab, red, red)){.legend-active{box-shadow:0 0 0 2px color-mix(in srgb, var(--viz-danger-border) 18%, transparent)}}.legend-visited,.legend-selected,.legend-queued{color:var(--viz-primary-border);background:var(--viz-primary-bg)}.legend-highlighted{color:var(--viz-success-border);background:var(--viz-success-border);box-shadow:0 0 0 2px var(--viz-success-border)}@supports (color:color-mix(in lab, red, red)){.legend-highlighted{box-shadow:0 0 0 2px color-mix(in srgb, var(--viz-success-border) 18%, transparent)}}.legend-neutral{color:var(--viz-muted);background:var(--viz-cell-bg)}.legend-white{color:#cbd5e1;background:#f8fafc}.legend-gray{color:#6b7280;background:#6b7280}.legend-black{color:#111827;background:#111827}.legend-completed{color:var(--viz-success-border);background:var(--viz-success-bg)}.legend-rejected{color:var(--viz-rejected-border);background:repeating-linear-gradient(90deg, var(--viz-rejected-bg) 0 2px, transparent 2px 5px)}.legend-rejected-node{color:var(--viz-rejected-border);background:var(--viz-rejected-bg)}.playback{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-1);grid-template-columns:34px 34px minmax(150px,260px) 34px 34px auto auto;align-items:center;gap:10px;padding:8px;display:grid}.canvas-control-bar{justify-content:center;display:flex}.canvas-control-bar .playback{width:min(100%,760px)}.icon-button,.text-button{border:1px solid var(--hairline-strong);border-radius:var(--radius-md);background:var(--surface-2);color:var(--ink);justify-content:center;align-items:center;gap:7px;min-height:34px;transition:background .16s,border-color .16s,color .16s,opacity .16s;display:inline-flex}.icon-button{width:34px;padding:0}.icon-button.primary,.text-button.strong{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground,#fff)}.icon-button:hover:not(:disabled),.text-button:hover{background:var(--surface-3);border-color:var(--hairline-strong)}.icon-button.primary:hover:not(:disabled),.text-button.strong:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.icon-button.play-toggle{background:var(--viz-success-bg);border-color:var(--viz-success-border);color:var(--viz-success-ink)}.icon-button.play-toggle:hover:not(:disabled){background:var(--viz-success-bg)}@supports (color:color-mix(in lab, red, red)){.icon-button.play-toggle:hover:not(:disabled){background:color-mix(in oklch, var(--viz-success-bg) 82%, var(--viz-success-border))}}.icon-button.play-toggle:hover:not(:disabled){border-color:var(--viz-success-border)}.icon-button.play-toggle.is-playing{background:var(--viz-warning-bg);border-color:var(--viz-warning-border);color:var(--viz-warning-ink)}.icon-button.play-toggle.is-playing:hover:not(:disabled){background:var(--viz-warning-bg)}@supports (color:color-mix(in lab, red, red)){.icon-button.play-toggle.is-playing:hover:not(:disabled){background:color-mix(in oklch, var(--viz-warning-bg) 82%, var(--viz-warning-border))}}.icon-button.play-toggle.is-playing:hover:not(:disabled){border-color:var(--viz-warning-border)}.icon-button:disabled{opacity:.38}.playback input[type=range]{accent-color:var(--primary);width:100%}.step-count{color:var(--ink-muted);white-space:nowrap;font-size:.84rem;font-weight:600}.speed-control{color:var(--ink-tertiary);white-space:nowrap;align-items:center;gap:7px;font-size:.78rem;font-weight:600;display:inline-flex}.speed-control select{border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);background:var(--surface-2);min-height:30px;color:var(--ink-muted);padding:0 8px}.input-panel,.preset-panel,.pseudocode{box-shadow:none;padding:16px}.input-drawer{z-index:30;width:min(360px,100vw - 76px);transition:transform .22s;position:fixed;top:88px;bottom:18px;right:16px}.input-drawer.closed{transform:translate(calc(100% + 16px))}.input-drawer-toggle{z-index:2;border:1px solid var(--hairline-strong);border-radius:var(--radius-md) 0 0 var(--radius-md);background:var(--surface-2);width:44px;height:104px;color:var(--ink-muted);box-shadow:var(--shadow-tight);border-right:0;grid-template-rows:20px auto;place-items:center;gap:7px;display:grid;position:absolute;top:16px;left:-44px}.input-drawer-toggle span{writing-mode:vertical-rl;letter-spacing:.08em;font-size:.78rem;font-weight:650}.input-drawer-body{height:100%;min-height:0;overflow:auto}.input-drawer.closed .input-drawer-body{pointer-events:none}.input-drawer .input-panel{box-shadow:var(--shadow)}.preset-panel{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--surface-1);box-shadow:var(--shadow);margin-bottom:10px}.preset-panel .panel-title-row strong,.copy-panel .panel-title-row strong,.algorithm-settings-section .panel-title-row strong{color:var(--ink);font-size:.9rem;display:block}.preset-field{color:var(--ink-muted);gap:5px;margin-top:9px;font-size:.76rem;font-weight:700;display:grid}.preset-field input,.preset-field select,.preset-field textarea{border:1px solid var(--hairline-strong);border-radius:var(--radius-md);background:var(--surface-2);width:100%;min-height:34px;color:var(--ink);font:inherit;padding:0 10px;font-weight:600}.preset-field textarea{resize:none;min-height:34px;max-height:74px;padding:8px 10px;line-height:1.35}.preset-field input{font-family:Cascadia Code,JetBrains Mono,Consolas,monospace;font-size:.8rem}.copy-panel{min-width:0}.copy-field-group{border-top:1px solid var(--hairline);margin-top:11px;padding-top:9px}.copy-field-group h3{color:var(--ink-tertiary);margin:0;font-size:.76rem;font-weight:750}.copy-field span{justify-content:space-between;align-items:center;gap:8px;display:flex}.copy-field em{color:var(--ink-tertiary);font-family:Cascadia Code,JetBrains Mono,Consolas,monospace;font-size:.68rem;font-style:normal;font-weight:600}.preset-panel .button-pair{margin-top:12px}.preset-status{color:var(--ink-tertiary);margin:10px 0 0;font-size:.78rem;font-weight:600}.input-drawer textarea{height:min(42vh,320px);min-height:240px}.panel-title-row,.table-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.input-hint{margin:5px 0 0;font-size:.75rem;font-weight:500;line-height:1.35}.button-pair{gap:8px;display:flex}.text-button{padding:7px 11px;font-size:.86rem;font-weight:600}.mindmap-theme textarea{resize:vertical;border:1px solid var(--hairline-strong);border-radius:var(--radius-md);background:var(--surface-1);width:100%;height:280px;color:var(--ink);margin-top:14px;padding:12px 13px;font-family:Cascadia Code,JetBrains Mono,Consolas,monospace;font-size:.84rem;line-height:1.48}.mindmap-theme :is(textarea:focus,button:focus-visible,input:focus-visible,select:focus-visible){outline:2px solid var(--primary-focus);outline-offset:2px}.input-error{border:1px solid var(--viz-danger-border);border-radius:var(--radius-md);background:var(--viz-danger-bg);color:var(--viz-danger-ink);margin:10px 0 0;padding:9px 10px;font-size:.84rem;font-weight:500}.pseudocode-list{gap:5px;margin:14px 0 0;padding:0;list-style:none;display:grid}.pseudocode-list li{border-radius:var(--radius-md);color:var(--ink-subtle);border:1px solid #0000;grid-template-columns:28px 1fr;align-items:start;gap:10px;padding:8px 9px;font-size:.84rem;line-height:1.42;display:grid}.pseudo-line-number{width:22px;height:22px;color:var(--ink-tertiary);border-radius:999px;place-items:center;font-size:.72rem;font-weight:700;display:grid}.pseudo-line-text{overflow-wrap:anywhere;min-width:0}.pseudocode-list li.active{border-color:var(--viz-primary-border);background:var(--viz-primary-bg);color:var(--ink)}.pseudocode-list li.active .pseudo-line-number{background:var(--primary);color:var(--primary-foreground,#fff)}.state-panel{min-height:0;box-shadow:none;flex-direction:column;padding:16px;display:flex}.state-panel-head{justify-content:space-between;align-items:start;gap:12px;display:flex}.state-panel h2{margin:0;font-size:.98rem;font-weight:650}.state-panel p{color:var(--ink-subtle);margin:5px 0 0;font-size:.75rem;line-height:1.4}.state-panel-table-only{overflow:hidden}.state-panel-table-only .table-strip{grid-auto-rows:minmax(0,1fr);align-content:stretch;max-height:none;overflow:hidden}.state-panel-table-only .data-table-shell{flex-direction:column;min-height:0;display:flex}.state-panel-table-only .table-scroll{flex:auto;min-height:0;max-height:none}.state-empty{color:var(--ink-tertiary);margin-top:12px;font-size:.84rem}.edge-flow-board{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;height:224px;min-height:224px;max-height:224px;margin-top:14px;display:grid}.state-panel-prim .edge-flow-board{height:332px;min-height:332px;max-height:332px}.state-panel-topological .edge-flow-board{height:292px;min-height:292px;max-height:292px}.edge-lane{border:1px solid var(--hairline);border-radius:var(--radius-lg);background:var(--viz-panel-bg);grid-template-rows:40px minmax(0,1fr);min-width:0;height:100%;display:grid;overflow:hidden}.edge-lane-head{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.edge-lane-head h3{color:var(--ink-muted);margin:0;font-size:.82rem;font-weight:650}.edge-lane-head span{background:var(--surface-2);min-width:22px;color:var(--ink-subtle);text-align:center;border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:650}.edge-lane-list{align-content:start;gap:7px;height:100%;min-height:0;padding:9px;display:grid;overflow:auto}.edge-card{border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--surface-2);min-height:34px;color:var(--ink-muted);will-change:transform, opacity;grid-template-columns:minmax(42px,1fr) auto;align-items:center;gap:4px 8px;padding:7px 8px;display:grid}.edge-queued{border-style:dashed;border-color:var(--viz-warning-border);background:var(--viz-warning-bg)}.state-panel-topological .edge-queued{border-style:solid;border-color:var(--viz-primary-border);background:var(--viz-primary-bg)}.edge-active{border-color:var(--viz-danger-border);background:var(--viz-danger-bg)}.edge-selected{border-color:var(--viz-primary-border);background:var(--viz-primary-bg)}.edge-completed{border-color:var(--viz-success-border);background:var(--viz-success-bg)}.edge-label{color:var(--ink);font-size:.84rem;font-weight:700}.edge-weight,.edge-state-text{color:var(--ink-subtle);white-space:nowrap;font-size:.72rem;font-weight:600}.edge-state-text{color:var(--ink-tertiary);grid-column:1/-1}.edge-moving-in{animation:.52s cubic-bezier(.22,1,.36,1) move-edge-to-selected}.edge-moving-out{animation:.52s cubic-bezier(.22,1,.36,1) forwards move-edge-from-queue}.edge-lane-empty{min-height:112px;color:var(--ink-tertiary);border:1px dashed var(--hairline);border-radius:var(--radius-md);place-items:center;font-size:.82rem;display:grid}@keyframes move-edge-to-selected{0%{opacity:.35;transform:translate(calc(-100% - 24px))scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes move-edge-from-queue{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:.25;transform:translate(calc(100% + 24px))scale(.98)}}.table-strip{flex:auto;align-content:start;gap:0;min-height:0;max-height:260px;margin-top:12px;display:grid;overflow:auto}.state-panel-topological .table-strip{align-content:stretch;max-height:none}.state-panel-topological .data-table-shell{flex-direction:column;min-height:100%;display:flex}.state-panel-topological .table-scroll{flex:auto;max-height:none}.state-panel-topological .table-scroll table{height:100%}.data-table-shell{min-width:0;box-shadow:none;border:0;border-top:1px solid var(--hairline);background:0 0;border-radius:0;padding:12px 0}.table-heading h3{font-size:.9rem;font-weight:600}.table-heading span{font-size:.75rem;font-weight:500}.table-scroll{max-height:220px;margin-top:10px;overflow:auto}.set-cloud{flex-wrap:wrap;align-content:flex-start;gap:8px;min-height:104px;max-height:104px;margin-top:12px;display:flex;overflow:auto}.set-box{--set-color:#828fff;--set-bg:#5e6ad224;border:1px solid var(--set-color);flex-wrap:wrap;align-items:center;gap:6px;max-width:100%;padding:6px 7px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.set-box{border:1px solid color-mix(in srgb, var(--set-color) 38%, var(--hairline))}}.set-box{border-radius:var(--radius-md);background:var(--set-bg)}.set-box:nth-child(6n+1){--set-color:#828fff;--set-bg:#5e6ad224}.set-box:nth-child(6n+2){--set-color:#d6a434;--set-bg:#d6a4341f}.set-box:nth-child(6n+3){--set-color:#27a644;--set-bg:#27a6441f}.set-box:nth-child(6n+4){--set-color:#e15d5d;--set-bg:#e15d5d1f}.set-box:nth-child(6n+5){--set-color:#9f7aea;--set-bg:#9f7aea21}.set-box:nth-child(6n){--set-color:#38bdf8;--set-bg:#38bdf81f}.set-label{color:var(--ink-muted);align-items:center;gap:5px;font-size:.72rem;line-height:1;display:inline-flex}.set-label strong{color:var(--ink);font-weight:700}.set-dot{background:var(--set-color);width:7px;height:7px;box-shadow:0 0 0 2px var(--set-color);border-radius:999px;flex:none}@supports (color:color-mix(in lab, red, red)){.set-dot{box-shadow:0 0 0 2px color-mix(in srgb, var(--set-color) 18%, transparent)}}.member-chip{border:1px solid var(--set-color);min-width:22px;padding:3px 7px}@supports (color:color-mix(in lab, red, red)){.member-chip{border:1px solid color-mix(in srgb, var(--set-color) 48%, var(--hairline))}}.member-chip{background:var(--set-color);border-radius:999px}@supports (color:color-mix(in lab, red, red)){.member-chip{background:color-mix(in srgb, var(--set-color) 18%, var(--surface-2))}}.member-chip{color:var(--ink);text-align:center;font-size:.74rem;font-weight:650}table{border-collapse:collapse;width:100%;font-size:.8rem}caption{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}th,td{border-bottom:1px solid var(--hairline);text-align:left;white-space:nowrap;padding:7px 8px}th{color:var(--ink-tertiary);text-transform:uppercase;letter-spacing:.04em;background:0 0;font-weight:600}td{color:var(--ink-muted);background:0 0}tr.table-row-active td{background:var(--viz-danger-bg);color:var(--ink);font-weight:700}tr.table-row-queued td,tr.table-row-completed td{background:var(--viz-success-bg);color:var(--ink);font-weight:700}tr.table-row-muted td{color:var(--ink-tertiary);opacity:.72}@media (prefers-reduced-motion:reduce){.edge-moving-in,.edge-moving-out,.sequence-motion-chip{animation:none}.input-drawer,.algorithm-group,.algorithm-item,.algorithm-library-status{transition:none}}@media (max-width:1120px){.algorithm-viewer-grid{grid-template-columns:1fr;gap:20px}.control-zone,.control-single{min-height:680px}.visual-zone{min-height:720px}}@media (max-width:1200px){.app-shell{display:block;overflow:hidden auto}.viewer-workspace{min-height:auto;padding:18px}.workbench-viewer-frame{width:min(var(--viewer-width), calc(100vw - 36px));min-width:0;height:min(var(--viewer-height), calc(100vh - 36px));min-height:0}.sidebar{border-right:0;border-bottom:1px solid var(--hairline);height:auto;min-height:auto;position:static}.brand-lockup{margin-bottom:14px}.algorithm-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;max-height:260px}.algorithm-item{grid-template-columns:16px minmax(0,1fr)}}@media (max-width:920px){.algorithm-viewer-grid,.degree-demo{grid-template-columns:1fr}.dag-dp-toolbar{flex-direction:column;align-items:stretch}.dag-dp-layout-button{width:max-content}.degree-readout{grid-template-columns:repeat(3,minmax(0,1fr))}.degree-readout p{grid-column:1/-1}.input-drawer{width:auto;height:min(72vh,560px);inset:auto 16px 14px}.input-drawer.closed{transform:translateY(calc(100% + 14px))}.input-drawer-toggle{border:1px solid var(--hairline-strong);border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:0;grid-template-rows:1fr;grid-template-columns:20px auto;width:104px;height:44px;top:-44px;left:auto;right:12px}.input-drawer-toggle span{writing-mode:horizontal-tb;letter-spacing:0}.playback{grid-template-columns:34px 34px 1fr 34px 34px auto auto}}@media (max-width:620px){.workspace,.sidebar{padding:16px}.algorithm-list{grid-template-columns:1fr;padding-bottom:0;display:grid}.algorithm-item{min-width:0}.workspace-head h2{font-size:.95rem}.module-title-block{flex-wrap:wrap;align-items:stretch}.algorithm-settings-fields{grid-template-columns:1fr}.algorithm-settings-backdrop{padding:12px}.algorithm-settings-dialog{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.playback{grid-template-columns:34px 34px 1fr 34px 34px}.step-count,.speed-control{grid-column:1/-1}.state-legend{padding:10px 12px 0;position:static}.edge-flow-board{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:1fr;height:430px;min-height:430px;max-height:430px}.table-strip{max-height:220px}.graph-canvas,.tree-canvas{height:440px}.canvas-shell{min-height:440px}.degree-demo{min-height:640px;padding:12px}.dag-dp-demo{min-height:640px;padding:10px}.dag-dp-graph{min-height:580px}.dag-dp-footer{left:14px;right:auto}.degree-graph{min-height:400px}.degree-readout{grid-template-columns:1fr}}
