.jl-visual-content:has(.jl-stage){background:var(--stage-bg);color:var(--stage-text)}.jl-visual-panel:has(.jl-stage)>header{background:var(--stage-bg);border-color:var(--stage-line);color:var(--stage-text)}.jl-stage{display:flex;flex-direction:column;gap:var(--space-4);min-width:0;min-height:0;width:100%;flex:1 1 auto}.jl-stage-board{position:relative;flex:1 1 auto;min-width:0;min-height:0;overflow:auto;padding:var(--space-5) var(--space-1) var(--space-2)}.jl-stage-lines{display:flex;flex-direction:column;gap:var(--space-8);width:var(--stage-anchor-w, -moz-max-content);width:var(--stage-anchor-w, max-content);margin-inline:auto}.jl-stage-board[data-wide=true] .jl-stage-lines{width:-moz-max-content;width:max-content;margin-inline:0}.jl-stage-status{min-width:0;min-height:calc(var(--text-sm) * 1.5 * 2);text-align:center;color:var(--stage-text-muted);font-size:var(--text-sm);line-height:1.5;overflow-wrap:anywhere}.jl-stage-board[data-wide=true] .jl-stage-status{text-align:left}.jl-stage-array{display:flex;align-items:flex-start;gap:var(--space-3);width:-moz-max-content;width:max-content}.jl-stage-names{display:flex;flex-direction:column;gap:var(--space-1);padding-top:calc(var(--stage-chip-h) * 2 + var(--stage-drop-h) + var(--space-2))}.jl-stage-names span{font-size:var(--text-xs);color:var(--stage-text);background:var(--stage-surface);border:1px solid var(--stage-line);border-radius:var(--radius-sm);padding:2px var(--space-2);white-space:nowrap}.jl-stage-grid{display:flex;flex-direction:column}.jl-stage-rows{position:relative;display:flex;flex-direction:column;gap:var(--stage-row-gap)}.jl-stage-row{display:flex;align-items:flex-start;gap:var(--space-2)}.jl-stage-row-index{width:var(--space-4);text-align:right;line-height:var(--stage-cell-h);font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-stage-cells{display:flex;flex-wrap:nowrap;gap:var(--stage-cell-gap)}.jl-stage-cell{display:flex;flex-direction:column;align-items:center;gap:2px}.jl-stage-cell small{font-size:var(--text-xs);color:var(--stage-text-muted);font-variant-numeric:tabular-nums}.jl-stage-cell-box{width:var(--stage-cell-w);height:var(--stage-cell-h);flex:0 0 var(--stage-cell-w);display:flex;align-items:center;justify-content:center;background:var(--stage-cell-bg);color:var(--stage-text);border:1px solid var(--stage-line);border-radius:var(--radius-md);font-size:var(--text-sm);overflow:hidden;white-space:nowrap}.jl-stage-cell-box[data-long=true]{font-size:var(--text-xs)}.jl-stage-cell-box[data-unobserved=true]{color:var(--stage-text-muted);border-style:dashed}.jl-stage-cell-box[data-pointed=true]{border:2px solid var(--stage-accent)}.jl-stage-cell-box[data-changed=true]{border:2px solid var(--stage-accent);background:var(--stage-accent-soft)}.jl-stage-cell-box[data-marked=true]{border:2px solid var(--stage-compare);background:var(--stage-compare-soft)}.jl-stage-truncated{align-self:center;color:var(--stage-text-muted)}.jl-stage-array[data-unobserved=true]{opacity:.45}.jl-stage-lane{position:relative;height:calc(var(--stage-chip-h) + var(--stage-drop-h) + var(--stage-chip-h));margin-bottom:var(--space-1)}.jl-stage-array[data-two-dimensional=true] .jl-stage-rows{padding-left:4.5rem}.jl-stage-row-lane{position:absolute;top:0;bottom:0;left:0;width:4rem}.jl-stage-chip{position:absolute;left:0;bottom:var(--stage-drop-h);transform:translate(0);height:var(--stage-chip-h);display:inline-flex;align-items:center;white-space:nowrap;margin-left:-1px;padding-inline:var(--space-2);border-radius:var(--radius-full);background:var(--stage-accent);color:var(--stage-accent-fg);font-size:var(--text-xs);font-weight:600}.jl-stage-lane .jl-stage-chip{translate:-50% 0}.jl-stage-lane .jl-stage-chip:after{content:"";position:absolute;top:100%;left:50%;width:2px;height:calc(var(--stage-drop, 0px) + var(--stage-drop-h));background:var(--stage-accent)}.jl-stage-row-lane .jl-stage-chip{bottom:auto;top:0;left:0;translate:0 -50%}.jl-stage-row:not([data-axis=true]) .jl-stage-cell small{visibility:hidden}.jl-stage-chip[data-outside]{background:var(--stage-surface);color:var(--stage-text-muted);border:1px dashed var(--stage-text-muted)}.jl-stage-chip[data-marked=true]{outline:2px solid var(--stage-compare);outline-offset:2px}.jl-stage-chip[data-outside]:after{display:none}.jl-stage-loose{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);min-height:var(--stage-chip-h)}.jl-stage-loose .jl-stage-chip{position:static;bottom:auto;translate:none}.jl-stage-slot{background:transparent;border-style:dashed;border-color:var(--stage-line)}.jl-stage-track .jl-stage-cell-box{width:var(--stage-slot-w);flex-basis:var(--stage-slot-w);height:var(--stage-slot-h)}.jl-stage-track .jl-stage-cell-box[data-observed-output]{background:var(--stage-cell-bg);border-style:solid}.jl-stage-track .jl-stage-names span{color:var(--stage-text-muted)}.jl-stage-exchange-row{position:relative;display:flex;gap:var(--stage-cell-gap)}.jl-stage-exchange-box{position:absolute;top:0;left:0;z-index:2}.jl-stage-exchange-box[data-copy=true]{border-style:dashed;color:var(--stage-text-muted);background:transparent;z-index:1}.jl-stage-exchange-box[data-held=true]{border-color:var(--stage-text);box-shadow:0 0 0 1px var(--stage-text)}.jl-stage-exchange-box[data-locked=true]{background:var(--stage-locked);color:var(--stage-bg);border-color:var(--stage-locked)}.jl-stage-token{position:absolute;top:0;left:0;z-index:4;pointer-events:none;display:inline-flex;align-items:center;justify-content:center;min-width:var(--stage-cell-w);height:var(--stage-cell-h);padding-inline:var(--space-2);border-radius:var(--radius-md);background:var(--stage-accent);color:var(--stage-accent-fg);border:2px solid var(--stage-accent);font-size:var(--text-sm);font-weight:700;white-space:nowrap}.jl-stage-token[data-outcome=true]{background:var(--stage-surface);color:var(--stage-text);border-style:solid}.jl-stage-frames{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap;min-height:var(--stage-band-h)}.jl-stage-frame{font-size:var(--text-xs);color:var(--stage-text-muted);border:1px solid var(--stage-line);border-radius:var(--radius-full);padding:2px var(--space-2);background:var(--stage-surface);white-space:nowrap}.jl-stage-frame+.jl-stage-frame:before{content:"→";margin-right:var(--space-2);color:var(--stage-text-muted)}.jl-stage-frame[data-current=true]{color:var(--stage-text);border-color:var(--stage-accent)}.jl-stage-branch{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-height:var(--stage-band-h)}.jl-stage-branch .jl-stage-frame+.jl-stage-frame:before{content:"→";margin-right:var(--space-2)}.jl-stage-branch em{font-style:normal;font-size:var(--text-xs);color:var(--stage-locked)}.jl-stage-scalars{display:flex;flex-wrap:wrap;gap:var(--space-3)}.jl-stage-scalar{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0}.jl-stage-scalar .jl-stage-cell-box{flex:0 1 auto;width:auto;min-width:var(--stage-cell-w);max-width:var(--stage-scalar-max);padding-inline:var(--space-2);text-overflow:ellipsis}.jl-stage-scalar small{font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-stage-before{color:var(--stage-accent)}.jl-stage-mark{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.jl-stage-mark svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.jl-stage-mark path{fill:none;stroke:var(--stage-compare);stroke-width:2}.jl-stage-mark[data-resolved=true] path{stroke:var(--stage-locked)}.jl-stage-mark-badge{position:absolute;top:0;left:0;display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--stage-bg);border:1px solid var(--stage-compare);color:var(--stage-compare);font-size:var(--text-sm);font-weight:700;white-space:nowrap}.jl-stage-mark[data-resolved=true] .jl-stage-mark-badge{border-color:var(--stage-locked);color:var(--stage-locked)}.jl-stage-mark-value{color:var(--stage-text);font-weight:600}.jl-stage-mark-badge em{font-style:normal;font-size:var(--text-xs)}.jl-stage-mark[data-detached=true] .jl-stage-mark-badge{top:var(--space-1);left:var(--space-1)}.jl-os{position:relative;display:flex;flex-direction:column;gap:var(--space-4);container-type:inline-size;width:100%}.jl-os-classes{display:flex;flex-wrap:wrap;gap:var(--space-2)}.jl-os-class{display:flex;flex-direction:column;gap:2px;padding:var(--space-1) var(--space-2);border:1px dashed var(--stage-line);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-class-head{display:flex;align-items:baseline;gap:var(--space-2);color:var(--stage-text)}.jl-os-count{color:var(--stage-accent);white-space:nowrap}.jl-os-class-row[data-method=true]{font-style:italic}.jl-os-main{display:flex;flex-direction:column;align-items:flex-start;gap:var(--stage-section-gap)}@container (min-width: 32.5rem){.jl-os-main:not([data-stack]){flex-direction:row;gap:var(--stage-aisle-w)}.jl-os-main:not([data-stack]) .jl-os-row{flex-direction:column;padding-block:0}}@container (max-width: 32.5rem){.jl-os-main{--stage-card-w: var(--stage-card-w-narrow)}}.jl-os-caption{font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-vars{display:flex;flex-direction:column;gap:var(--space-2);flex:none}.jl-os-var{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:var(--stage-field-h);padding:2px 2px 2px var(--space-2);border:1px solid var(--stage-line);border-radius:var(--radius-md);background:var(--stage-surface)}.jl-os-var-name{font-size:var(--text-sm);color:var(--stage-text);white-space:nowrap}.jl-os-var-name small{font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-var .jl-stage-cell-box{flex:none;width:auto;min-width:var(--stage-cell-w);max-width:var(--stage-scalar-max);height:var(--stage-field-h);padding-inline:var(--space-2);text-overflow:ellipsis}.jl-os-ref{display:inline-flex;align-items:center;justify-content:center;min-width:var(--stage-field-h);height:var(--stage-field-h);padding-inline:var(--space-1);border:1px solid var(--stage-line);border-radius:var(--radius-sm);background:var(--stage-cell-bg);font-size:var(--text-xs);color:var(--stage-text-muted);white-space:nowrap}.jl-os-dot{display:block;width:var(--space-2);height:var(--space-2);border-radius:var(--radius-full);background:var(--stage-accent)}.jl-os-var[data-kind=none]{border-style:dashed;opacity:.6}.jl-os-var[data-npe=true] .jl-os-ref,.jl-stage-cell-box[data-npe=true]{border:2px solid var(--stage-danger);background:var(--stage-danger-soft);color:var(--stage-danger)}.jl-os-objects{display:flex;flex-direction:column;min-width:0}.jl-os-row{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:var(--space-4);padding-block:var(--stage-lane-h)}.jl-os-column{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.jl-os-card{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);border:1px solid var(--stage-line);border-radius:var(--radius-lg);background:var(--stage-surface)}.jl-os-card[data-current=true]{border:2px solid var(--stage-accent);box-shadow:0 0 0 3px var(--stage-accent-soft)}.jl-os-card-head{font-size:var(--text-xs);font-weight:700;color:var(--stage-accent);white-space:nowrap}.jl-os-field{display:grid;grid-template-columns:auto 1fr;align-items:center;-moz-column-gap:var(--space-2);column-gap:var(--space-2);row-gap:2px}.jl-os-field small{font-size:var(--text-xs);color:var(--stage-text-muted);white-space:nowrap}.jl-os-field .jl-stage-cell-box{display:block;width:auto;min-width:var(--stage-cell-w);height:var(--stage-field-h);padding-inline:var(--space-1);line-height:calc(var(--stage-field-h) - 2px);text-align:center;text-overflow:ellipsis}.jl-os-field[data-default=true] .jl-stage-cell-box{border-style:dashed;color:var(--stage-text-muted)}.jl-os-default{grid-column:2;font-style:normal;font-size:var(--text-xs);line-height:1;color:var(--stage-text-muted);text-align:center}.jl-os-method{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-1);border-top:1px solid var(--stage-line);font-size:var(--text-xs);color:var(--stage-text-muted);white-space:nowrap}.jl-os-method[data-running=true]{color:var(--stage-text)}.jl-os-method strong{color:var(--stage-locked);font-weight:700}.jl-os-frame{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-1) var(--space-2);border:1px dashed var(--stage-accent);border-radius:var(--radius-md)}.jl-os-frame-head{font-size:var(--text-xs);color:var(--stage-accent);white-space:nowrap}.jl-os-frame[data-finished=true]{border-style:dotted;border-color:var(--stage-text-muted);opacity:.7}.jl-os-frame[data-finished=true] .jl-os-frame-head{color:var(--stage-text-muted)}.jl-os-frame-var{font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-class[data-prepared=false]{opacity:.5}.jl-os-card[data-unreferenced=true]{border-style:dashed}.jl-os-card-note,.jl-os-empty{font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-array{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2);border:1px solid var(--stage-line);border-radius:var(--radius-lg)}.jl-os-cells{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:var(--stage-cell-gap)}.jl-os-cell{display:flex;flex-direction:column;align-items:center;gap:2px}.jl-os-cell small{font-size:var(--text-xs);color:var(--stage-text-muted);font-variant-numeric:tabular-nums}.jl-os-array[data-references=true] .jl-os-cell{width:var(--stage-card-w)}.jl-os-cell>.jl-os-column{margin-top:var(--space-5);align-items:stretch;width:100%}.jl-os-card[data-compact=true]{width:100%}.jl-os-card[data-compact=true] .jl-os-field{grid-template-columns:1fr}.jl-os-card[data-compact=true] .jl-os-field .jl-stage-cell-box{min-width:0}.jl-os-card[data-compact=true] .jl-os-default{grid-column:1}.jl-os-cell .jl-stage-cell-box[data-reference]{display:flex}.jl-os-cell .jl-os-ref{border:0;background:transparent}.jl-stage-cell-box[data-null=true]{color:var(--stage-text-muted)}.jl-os-arrows{position:absolute;top:0;left:0;pointer-events:none;overflow:visible}.jl-os-arrow{fill:none;stroke:var(--stage-accent);stroke-width:2}.jl-os-arrows marker path{fill:var(--stage-accent)}.jl-os-card[data-compact=true]{padding:var(--space-1)}.jl-os-card[data-compact=true] .jl-os-method{flex-wrap:wrap;row-gap:0}.jl-stage-note{display:block;margin-top:var(--space-1);font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-var[data-kind=slot]{visibility:hidden}.jl-os-var[data-kind=jdk] .jl-os-ref{color:var(--stage-text-muted);border-style:dashed}.jl-os-array .jl-stage-lane{height:calc(var(--stage-chip-h) + var(--stage-drop-h))}@container (max-width: 32.5rem){.jl-os-array{padding:var(--space-1)}.jl-os-card[data-compact=true]{padding:2px}.jl-os-card[data-compact=true] .jl-os-field .jl-stage-cell-box{padding-inline:2px}}.jl-os-array[data-references=true] .jl-os-cell .jl-stage-cell-box{width:100%;flex-basis:auto}.jl-os-cell .jl-os-frame{width:100%;box-sizing:border-box;padding-inline:2px}.jl-os-cell .jl-os-frame-head,.jl-os-cell .jl-os-empty{white-space:normal}.jl-os-cell .jl-os-var,.jl-os-main[data-stack] .jl-os-row{flex-wrap:wrap}.jl-om{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.jl-mm-note{font-size:var(--text-xs);color:var(--stage-text-muted);white-space:nowrap}.jl-mm{display:flex;flex-direction:column;gap:var(--space-1)}.jl-mm-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-mm-scroll{max-height:var(--stage-mini-max-h);overflow:auto;border:1px solid var(--stage-line);border-radius:var(--radius-md);background:var(--stage-surface);scrollbar-width:thin}.jl-mm-body{position:relative}.jl-mm-jumps{position:absolute;top:0;left:0;overflow:visible}.jl-mm-jump{fill:none;stroke:var(--stage-accent);stroke-width:1.5;opacity:.35}.jl-mm-jump[data-current=true]{opacity:1;stroke-width:2}.jl-mm-jump[data-kind=return]{stroke:var(--stage-locked)}.jl-mm-jumps #jl-mm-head path{fill:var(--stage-accent)}.jl-mm-lines{margin:0}.jl-mm-line{position:relative;display:flex;gap:var(--space-2);line-height:var(--stage-mini-line-h);font-size:11px;color:var(--stage-text-muted);white-space:pre}.jl-mm-line[data-current-line=true]{background:var(--stage-accent-soft);color:var(--stage-text);box-shadow:inset 3px 0 0 var(--stage-accent)}.jl-mm-no{flex:none;width:2ch;text-align:right;color:var(--stage-text-muted);opacity:.7}.jl-mm-badge{position:absolute;padding:0 3px;border-radius:var(--radius-sm);background:var(--stage-bg);border:1px solid var(--stage-line);font-size:10px;color:var(--stage-locked);white-space:nowrap;opacity:.6}.jl-mm-badge[data-current=true]{opacity:1;border-color:var(--stage-locked)}.jl-mm-strip{display:flex;flex-wrap:wrap;gap:var(--space-1)}.jl-mm-chip{padding:1px var(--space-2);border:1px solid var(--stage-line);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--stage-text-muted);white-space:nowrap}.jl-mm-chip[data-kind=return]{color:var(--stage-locked)}.jl-mm-chip[data-current=true]{border-color:var(--stage-accent);color:var(--stage-text)}.jl-mm[data-short=true] .jl-mm-scroll{max-height:none}.jl-mm-frame{position:relative}.jl-mm-edge{position:absolute;right:var(--space-2);z-index:2;padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--stage-accent);color:var(--stage-accent-fg);font-size:var(--text-xs);font-weight:600;pointer-events:none}.jl-mm-edge[data-dir=up]{top:2px}.jl-mm-edge[data-dir=down]{bottom:2px}.jl-os-born{stroke-dasharray:5 4;opacity:.9}.jl-os-class-row[data-method=ctor]{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1);color:var(--stage-text)}.jl-os-class-row[data-signature]{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1)}.jl-os-class-row[data-running=true]{padding-inline:var(--space-1);border-radius:var(--radius-sm);background:var(--stage-accent-soft);color:var(--stage-text);outline:1px solid var(--stage-accent)}.jl-os-implicit{font-style:normal;font-size:var(--text-xs);color:var(--stage-text-muted)}.jl-os-calls{font-size:var(--text-xs);color:var(--stage-locked);white-space:nowrap}.jl-os-frame[data-via-this=true]{margin-left:var(--space-3)}.jl-os-var[data-kind=gone]{border-style:dotted;opacity:.7}.jl-os-var[data-kind=gone] .jl-os-ref{border-style:dotted;background:transparent}.jl-os-card[data-garbage=true]{border-style:dotted;opacity:.6}.jl-os-card[data-garbage=true] .jl-os-card-note{color:var(--stage-danger)}.sa{display:flex;flex-direction:column;gap:var(--space-4);width:100%;color:var(--stage-text);font-size:var(--stage-a-text)}.sa-say{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.sa-line{padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--stage-accent-soft);color:var(--stage-accent);font-size:var(--text-sm);font-weight:var(--font-semibold);white-space:nowrap}.sa-big{margin:0;font-size:var(--stage-a-say);font-weight:var(--font-semibold);line-height:var(--leading-tight);text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere}.sa[data-layout=column] .sa-big{font-size:var(--stage-a-say-narrow)}.sa-sub{margin:0;font-size:var(--stage-a-sub);color:var(--stage-text-muted);word-break:keep-all;overflow-wrap:anywhere}.sa-note{margin:0;font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-absorbed{font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-absorbed summary{cursor:pointer}.sa-absorbed ol{margin:var(--space-1) 0 0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:2px}.sa-pic{position:relative;display:flex;align-items:flex-start;gap:var(--space-6);padding-bottom:var(--space-8)}.sa[data-layout=column] .sa-pic{flex-direction:column;gap:var(--space-4)}.sa-stack{display:flex;align-items:flex-start;gap:var(--space-3);flex:none}.sa[data-layout=column] .sa-stack{flex-direction:column;align-items:stretch;width:calc(100% - var(--space-8))}.sa-column{display:flex;flex-direction:column;gap:var(--space-1)}.sa-heap{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);margin-left:auto;min-width:0}.sa[data-layout=column] .sa-heap{margin-left:0;flex-direction:row;flex-wrap:wrap;width:calc(100% - var(--space-8))}.sa-frame{display:flex;flex-direction:column;gap:var(--space-2);min-width:var(--stage-a-frame-min);padding:var(--space-2) var(--space-3);border:2px solid var(--stage-line);border-radius:var(--radius-lg);background:var(--stage-surface)}.sa-frame>.sa-head{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--stage-accent);white-space:nowrap}.sa-frame[data-kind=main]>.sa-head{color:var(--stage-text)}.sa-frame[data-kind=ctor]{border-style:dashed}.sa-frame[data-waiting]{padding-block:var(--space-1)}.sa-wait{font-size:var(--text-xs);font-weight:400;color:var(--stage-text-muted)}.sa-this{display:inline-flex;align-items:center;gap:var(--space-1);margin-left:auto;padding-left:var(--space-2);font-size:var(--text-sm);font-weight:400;color:var(--stage-text-muted)}.sa-frame[data-state=arriving]{animation:sa-arrive .55s ease-out both}.sa-frame[data-state=leaving]{z-index:1;box-sizing:border-box;animation:sa-leave .7s ease-in forwards;pointer-events:none;overflow:hidden}@keyframes sa-arrive{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes sa-leave{0%{opacity:.8}to{opacity:0;transform:translateY(-20px)}}.sa-var{display:flex;flex-direction:column;gap:2px}.sa-var-name{font-size:var(--text-sm);color:var(--stage-text-muted);white-space:nowrap}.sa-var-name small{font-size:var(--text-xs);opacity:.8}.sa-box{display:inline-flex;align-items:center;justify-content:center;min-width:var(--stage-a-box-min);max-width:var(--stage-scalar-max);height:var(--stage-a-box-h);padding:0 var(--space-3);border:2px solid var(--stage-line);border-radius:var(--radius-md);background:var(--stage-cell-bg);font-weight:var(--font-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sa-var[data-kind=none] .sa-box,.sa-var[data-kind=null] .sa-box,.sa-var[data-kind=jdk] .sa-box{border-style:dashed;color:var(--stage-text-muted);font-weight:400;font-size:var(--text-sm)}.sa-dot{display:block;width:12px;height:12px;border-radius:var(--radius-full);background:var(--stage-accent)}.sa-this .sa-dot{width:10px;height:10px;background:transparent;border:2px solid var(--stage-accent)}.sa-card{display:flex;flex-direction:column;gap:var(--space-2);min-width:var(--stage-a-card-min);padding:var(--space-3);border:2px solid var(--stage-accent);border-radius:var(--radius-lg);background:var(--stage-surface);transition:opacity .9s .4s ease-in,transform .9s .4s ease-in,filter .9s .4s}.sa-card>.sa-head{font-weight:var(--font-semibold);color:var(--stage-accent)}.sa-card[data-current]{box-shadow:0 0 0 4px var(--stage-accent-soft)}.sa-card[data-fresh]{animation:sa-new .5s ease-out both}.sa-card[data-unreferenced]{border-style:dashed}.sa-card[data-garbage]{border-style:dotted;border-color:var(--stage-text-muted);opacity:.5;filter:grayscale(1);transform:translateY(14px)}@keyframes sa-new{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}.sa-card-note{margin:0;font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-card-note[data-garbage-note]{color:var(--stage-danger);font-weight:var(--font-semibold)}.sa-field{display:grid;grid-template-columns:auto 1fr;align-items:center;-moz-column-gap:var(--space-2);column-gap:var(--space-2)}.sa-field>span:first-child{font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-field .sa-box{min-width:0;height:auto;padding-block:var(--space-1)}.sa-field[data-default=true] .sa-box{border-style:dashed;color:var(--stage-text-muted)}.sa-field small{grid-column:2;font-size:var(--text-xs);color:var(--stage-text-muted);text-align:center}.sa-empty{font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-pic[data-dim] .sa-var[data-lit=false],.sa-pic[data-dim] .sa-field[data-lit=false]{opacity:var(--stage-a-dim)}.sa-pic[data-dim] .sa-frame[data-lit=false]>.sa-head,.sa-pic[data-dim] .sa-card[data-lit=false]>.sa-head{opacity:.55}.sa-var[data-lit=true] .sa-box,.sa-field[data-lit=true] .sa-box{border-color:var(--stage-accent);box-shadow:0 0 0 3px var(--stage-accent-soft)}.sa-card[data-lit=true]:not([data-garbage]){box-shadow:0 0 0 4px var(--stage-accent-soft)}.sa-card[data-garbage][data-lit=true]{border-color:var(--stage-danger)}.sa-pic[data-dim] .jl-stage-cell-box:not([data-marked=true]){opacity:var(--stage-a-dim)}.sa-arrows{position:absolute;top:0;left:0;pointer-events:none;overflow:visible}.sa-arrow{fill:none;stroke:var(--stage-accent);stroke-width:2.5}.sa-pic[data-dim] .sa-arrow:not(.is-lit){opacity:.4}.sa-arrow-this{stroke-dasharray:5 4;stroke-width:2}.sa-arrows marker path{fill:var(--stage-accent)}.sa-tools{display:flex;gap:var(--space-3);font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-more{font-size:var(--text-sm);color:var(--stage-text-muted)}.sa-more>summary{cursor:pointer;padding:var(--space-1) 0}.sa-more[open]>summary{margin-bottom:var(--space-2)}.sa-flow .jl-mm-scroll{max-height:var(--stage-a-flow-max-h)}.sa-flow[open]>summary,.sa-templates[open]>summary{margin-bottom:var(--space-1)}.sa-flow .jl-mm,.sa-templates .jl-os-classes{margin-bottom:0}.sa .jl-os-array .jl-stage-cell-box{font-size:var(--text-md)}@media (prefers-reduced-motion: reduce){.sa-frame,.sa-card{animation:none!important;transition:none!important}}.sa-pic[data-classes]{flex-wrap:wrap}.sa-classes{flex-basis:100%;display:flex;flex-wrap:wrap;gap:var(--space-3)}.sa-class{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3);border:2px solid var(--stage-compare);border-radius:var(--radius-md);background:var(--stage-compare-soft)}.sa-class>.sa-head{font-weight:var(--font-semibold);color:var(--stage-compare)}.sa-class>.sa-head small{margin-left:var(--space-1);font-weight:400;font-size:var(--text-xs);color:var(--stage-text-muted);white-space:nowrap}.sa-class[data-prepared=false]{opacity:.55}.sa-pic[data-dim] .sa-class[data-lit=false]{opacity:var(--stage-a-dim)}.sa-class .sa-field{display:inline-grid}.sa-string .sa-box{min-width:0;height:auto;padding-block:var(--space-1)}.sa-pic[data-arrays]{flex-wrap:wrap}.sa-pic[data-arrays] .sa-heap{flex-basis:100%;margin-left:0;flex-direction:row;flex-wrap:wrap}.sa .jl-os-array{max-width:100%;overflow-x:auto}.sa-frame{max-width:13rem}.sa-frame>.sa-head{white-space:normal;flex-wrap:wrap;row-gap:0}.sa-frame .sa-box{min-width:3.5rem}:root{--color-bg: #f6f7f9;--color-surface: #ffffff;--color-surface-2: #f1f3f5;--color-sidebar: #f6f7f9;--color-border: #e3e6ea;--color-text: #0b0d10;--color-text-muted: #4b5563;--color-primary: #5c67ff;--color-primary-fg: #ffffff;--color-primary-soft: #eef0ff;--color-success: #1f9d55;--color-warning: #d98a00;--color-danger: #f53f50;--color-danger-soft: #fdecee;--color-info: #2f7fd1;--color-focus-ring: #5c67ff;--color-bg-rgb: 246 247 249;--color-surface-rgb: 255 255 255;--color-surface-2-rgb: 241 243 245;--color-sidebar-rgb: 246 247 249;--color-border-rgb: 227 230 234;--color-text-rgb: 11 13 16;--color-text-muted-rgb: 75 85 99;--color-primary-rgb: 92 103 255;--color-primary-fg-rgb: 255 255 255;--color-primary-soft-rgb: 238 240 255;--color-success-rgb: 31 157 85;--color-warning-rgb: 217 138 0;--color-danger-rgb: 245 63 80;--color-danger-soft-rgb: 253 236 238;--color-info-rgb: 47 127 209;--color-focus-ring-rgb: 92 103 255;--color-skeleton-rgb: 11 13 16;--color-skeleton-a: .25;--font-sans: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans KR", "Apple SD Gothic Neo", sans-serif;--font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", "Nanum Gothic Coding", monospace;--text-xs: .6875rem;--text-sm: .8125rem;--text-md: .8125rem;--text-lg: .9375rem;--text-xl: 1.0625rem;--text-2xl: 1.1875rem;--leading-tight: 1.3;--leading-normal: 1.5;--font-medium: 500;--font-semibold: 600;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(16, 24, 40, .06);--shadow-md: 0 4px 12px rgba(16, 24, 40, .1);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .16);--panel-w: 440px;--topbar-h: 48px;--ease-out: cubic-bezier(.22, 1, .36, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .3s;--z-base: 0;--z-nav: 10;--z-fab: 15;--z-panel: 20;--z-dropdown: 30;--z-toast: 40;--z-modal: 50;--syntax-comment: var(--color-text-muted);--syntax-keyword: #7e22ce;--syntax-string: #0f766e;--syntax-number: #9a4a08;--syntax-text: var(--color-text);--editor-selection: rgb(var(--color-primary-rgb) / .18);--editor-active-line: rgb(var(--color-text-rgb) / .04);--editor-cursor: var(--color-focus-ring);--term-black: #0b0d10;--term-red: #c0273a;--term-green: #12704a;--term-yellow: #8a5a00;--term-blue: #175cd3;--term-magenta: #a21caf;--term-cyan: #0e7490;--term-white: #9aa1ac;--term-bright-black: #4b5563;--term-bright-red: #8c1122;--term-bright-green: #0a4f34;--term-bright-yellow: #5e3d00;--term-bright-blue: #123f92;--term-bright-magenta: #6b1275;--term-bright-cyan: #0a4f62;--term-bright-white: #374151;--console-stderr-fg: #b91c2c;--console-stderr-bg: rgb(var(--color-danger-rgb) / .06);--console-img-max-h: 320px;--ide-bp-visualization: 64rem;--motion-cell-w: 7rem;--motion-cell-h: 6rem;--visual-panel-w: 22rem;--array-cell-w: 4rem;--execution-line-bg: var(--color-primary-soft);--execution-line-border: var(--color-primary);--ide-bp-narrow: 43.75rem;--touch-target: 2.75rem;--mobile-input-size: 1rem;--mobile-tree-w: 18rem;--mobile-file-list-h: 8rem;--mobile-code-min-h: 6rem;--mobile-dock-min-h: 8rem;--table-min-w: 36rem;--ide-resizer-w: 4px}[data-theme=dark]{--color-bg: #16181d;--color-surface: #1e2127;--color-surface-2: #262a31;--color-sidebar: #16181d;--color-border: #2c313b;--color-text: #f4f6f8;--color-text-muted: #b0b7c2;--color-primary: #7c84ff;--color-primary-fg: #ffffff;--color-primary-soft: #2b2f55;--color-success: #36b56a;--color-warning: #e0a64a;--color-danger: #ff5b69;--color-danger-soft: #43252a;--color-info: #4f9be0;--color-focus-ring: #7c84ff;--color-bg-rgb: 22 24 29;--color-surface-rgb: 30 33 39;--color-surface-2-rgb: 38 42 49;--color-sidebar-rgb: 22 24 29;--color-border-rgb: 44 49 59;--color-text-rgb: 244 246 248;--color-text-muted-rgb: 176 183 194;--color-primary-rgb: 124 132 255;--color-primary-fg-rgb: 255 255 255;--color-primary-soft-rgb: 43 47 85;--color-success-rgb: 54 181 106;--color-warning-rgb: 224 166 74;--color-danger-rgb: 255 91 105;--color-danger-soft-rgb: 67 37 42;--color-info-rgb: 79 155 224;--color-focus-ring-rgb: 124 132 255;--color-skeleton-rgb: 244 246 248;--color-skeleton-a: .18;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .6);--syntax-comment: var(--color-text-muted);--syntax-keyword: #c084fc;--syntax-string: #2dd4bf;--syntax-number: #e0a64a;--syntax-text: var(--color-text);--editor-selection: rgb(var(--color-primary-rgb) / .24);--editor-active-line: rgb(var(--color-text-rgb) / .06);--term-black: #4a5262;--term-red: #ff5b69;--term-green: #36b56a;--term-yellow: #e0a64a;--term-blue: #6fa8f5;--term-magenta: #c084fc;--term-cyan: #2dd4bf;--term-white: #b0b7c2;--term-bright-black: #78828f;--term-bright-red: #ff9ba3;--term-bright-green: #72e0a0;--term-bright-yellow: #f5cf90;--term-bright-blue: #a9d2ff;--term-bright-magenta: #e2c4ff;--term-bright-cyan: #7ff0dd;--term-bright-white: #f4f6f8;--console-stderr-fg: var(--color-danger);--console-stderr-bg: rgb(var(--color-danger-rgb) / .1)}:root{--bubble-pitch: 48px;--bubble-box: 40px;--bubble-lane: 48px;--bubble-pitch-px: 64;--bubble-lane-px: 48;--bubble-stage-height: 200px;--value-slot-width: 104px;--value-slot-height: 104px;--value-box-height: 64px;--compact-value-size: 40px;--loop-track-size: 252px;--loop-dot-size: 8px;--loop-cursor-size: 16px}:root{--stage-bg: #16181d;--stage-surface: #1e2127;--stage-cell-bg: #262a31;--stage-line: #2c313b;--stage-text: #f4f6f8;--stage-text-muted: #b0b7c2;--stage-accent: #7c84ff;--stage-accent-fg: #ffffff;--stage-accent-soft: #2b2f55;--stage-compare: #e0a64a;--stage-compare-soft: #3a3120;--stage-locked: #36b56a;--stage-danger: #ff5b69;--stage-danger-soft: #43252a;--stage-cell-w: 64px;--stage-scalar-max: 160px;--stage-slot-w: 34px;--stage-slot-h: 34px;--stage-cell-h: 48px;--stage-cell-gap: 6px;--stage-anchor-min: 320px;--stage-band-h: 24px;--stage-chip-h: 26px;--stage-drop-h: 16px;--stage-row-gap: 10px;--stage-field-h: 34px;--stage-card-w: 104px;--stage-card-w-narrow: 54px;--stage-aisle-w: 44px;--stage-lane-h: 48px;--stage-section-gap: 20px;--stage-mini-line-h: 14px;--stage-mini-gutter: 44px;--stage-mini-max-h: 220px;--stage-a-say: 1.375rem;--stage-a-say-narrow: 1.0625rem;--stage-a-sub: .9375rem;--stage-a-text: 1rem;--stage-a-box-h: 2.75rem;--stage-a-box-min: 4.5rem;--stage-a-frame-min: 7.5rem;--stage-a-card-min: 9.5rem;--stage-a-panel: 600px;--stage-a-dim: .38;--stage-a-flow-max-h: 9rem}*,: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:var(--font-sans);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:var(--font-mono);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}html,body,#root{height:100%}html{font-size:17.28px}html,body{overscroll-behavior:none}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased}*:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:1px}.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}}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-3{bottom:var(--space-3)}.end-1{inset-inline-end:var(--space-1)}.left-1\/2{left:50%}.right-0{right:0}.right-1{right:var(--space-1)}.start-1{inset-inline-start:var(--space-1)}.top-1\/2{top:50%}.top-full{top:100%}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-auto{margin-left:auto}.mr-auto{margin-right:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\/3{height:33.333333%}.h-\[80vh\]{height:80vh}.h-\[85vh\]{height:85vh}.h-full{height:100%}.h-topbar{height:var(--topbar-h)}.max-h-28{max-height:7rem}.max-h-56{max-height:14rem}.max-h-\[85vh\]{max-height:85vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-full{min-height:100%}.w-10{width:2.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-48{width:12rem}.w-56{width:14rem}.w-64{width:16rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-40{min-width:10rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-\[2\]{flex:2}.flex-\[3\]{flex:3}.flex-none{flex:none}.-translate-x-1\/2{--tw-translate-x: -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-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))}.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 spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize{resize:both}.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}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:var(--space-1)}.gap-1\.5{gap:.375rem}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(var(--space-1) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-1) * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(var(--space-3) * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(var(--space-3) * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.break-keep{word-break:keep-all}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-border{--tw-border-opacity: 1;border-color:rgb(var(--color-border-rgb) / var(--tw-border-opacity, 1))}.border-danger{--tw-border-opacity: 1;border-color:rgb(var(--color-danger-rgb) / var(--tw-border-opacity, 1))}.border-primary{--tw-border-opacity: 1;border-color:rgb(var(--color-primary-rgb) / var(--tw-border-opacity, 1))}.border-warning{--tw-border-opacity: 1;border-color:rgb(var(--color-warning-rgb) / var(--tw-border-opacity, 1))}.bg-bg{--tw-bg-opacity: 1;background-color:rgb(var(--color-bg-rgb) / var(--tw-bg-opacity, 1))}.bg-bg\/60{background-color:rgb(var(--color-bg-rgb) / .6)}.bg-danger{--tw-bg-opacity: 1;background-color:rgb(var(--color-danger-rgb) / var(--tw-bg-opacity, 1))}.bg-danger\/10{background-color:rgb(var(--color-danger-rgb) / .1)}.bg-danger\/5{background-color:rgb(var(--color-danger-rgb) / .05)}.bg-primary{--tw-bg-opacity: 1;background-color:rgb(var(--color-primary-rgb) / var(--tw-bg-opacity, 1))}.bg-primary-soft{--tw-bg-opacity: 1;background-color:rgb(var(--color-primary-soft-rgb) / var(--tw-bg-opacity, 1))}.bg-sidebar{--tw-bg-opacity: 1;background-color:rgb(var(--color-sidebar-rgb) / var(--tw-bg-opacity, 1))}.bg-surface{--tw-bg-opacity: 1;background-color:rgb(var(--color-surface-rgb) / var(--tw-bg-opacity, 1))}.bg-surface-2{--tw-bg-opacity: 1;background-color:rgb(var(--color-surface-2-rgb) / var(--tw-bg-opacity, 1))}.bg-warning\/10{background-color:rgb(var(--color-warning-rgb) / .1)}.bg-warning\/15{background-color:rgb(var(--color-warning-rgb) / .15)}.bg-warning\/5{background-color:rgb(var(--color-warning-rgb) / .05)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:var(--space-1)}.p-1\.5{padding:.375rem}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.pl-2{padding-left:var(--space-2)}.pl-3{padding-left:var(--space-3)}.pr-1{padding-right:var(--space-1)}.pr-2{padding-right:var(--space-2)}.pr-9{padding-right:2.25rem}.pt-2{padding-top:var(--space-2)}.pt-3{padding-top:var(--space-3)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:var(--text-lg)}.text-sm{font-size:var(--text-sm)}.text-xl{font-size:var(--text-xl)}.text-xs{font-size:var(--text-xs)}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-normal{line-height:1.5}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.text-danger{--tw-text-opacity: 1;color:rgb(var(--color-danger-rgb) / var(--tw-text-opacity, 1))}.text-info{--tw-text-opacity: 1;color:rgb(var(--color-info-rgb) / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:rgb(var(--color-primary-rgb) / var(--tw-text-opacity, 1))}.text-primary-fg{--tw-text-opacity: 1;color:rgb(var(--color-primary-fg-rgb) / var(--tw-text-opacity, 1))}.text-success{--tw-text-opacity: 1;color:rgb(var(--color-success-rgb) / var(--tw-text-opacity, 1))}.text-text{--tw-text-opacity: 1;color:rgb(var(--color-text-rgb) / var(--tw-text-opacity, 1))}.text-text-muted{--tw-text-opacity: 1;color:rgb(var(--color-text-muted-rgb) / var(--tw-text-opacity, 1))}.text-warning{--tw-text-opacity: 1;color:rgb(var(--color-warning-rgb) / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-md{--tw-shadow: var(--shadow-md);--tw-shadow-colored: var(--shadow-md);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-primary{--tw-ring-opacity: 1;--tw-ring-color: rgb(var(--color-primary-rgb) / var(--tw-ring-opacity, 1))}.blur{--tw-blur: blur(8px);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)}.invert{--tw-invert: invert(100%);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)}.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)}.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}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:var(--ease-out)}*{scrollbar-width:thin;scrollbar-color:rgba(120,128,140,.35) transparent}*::-webkit-scrollbar{width:6px;height:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:#78808c4d;border-radius:9999px}*::-webkit-scrollbar-thumb:hover{background-color:#78808c80}.jl-skeleton-fill{background-color:rgb(var(--color-skeleton-rgb) / var(--color-skeleton-a))}.jl-ide-region{container-type:inline-size;display:flex;flex-direction:column}.jl-ide-grid{display:grid;grid-template-columns:minmax(0,var(--jl-tree-w, 12rem)) var(--jl-h1, 5px) minmax(0,1fr);min-height:0;height:100%;transition:grid-template-columns var(--dur-base) var(--ease-out)}.jl-ide-grid[data-dragging=true]{transition:none}.jl-ide-region[data-ide-w=narrow] .jl-resizer{display:none}.jl-ide-region[data-ide-w=narrow] .jl-ide-grid{--jl-tree-w: 0px !important;--jl-h1: 0px !important}.jl-ide-region[data-ide-w=narrow] .jl-file-tree{display:none}.jl-ide-region[data-ide-w=narrow][data-tree=open] .jl-file-tree{display:flex;position:absolute;inset-block:0;inset-inline-start:0;width:min(14rem,70%);z-index:var(--z-nav);border-inline-end:1px solid var(--color-border);box-shadow:var(--shadow-md)}.jl-resizer{position:relative;flex:0 0 var(--ide-resizer-w);cursor:col-resize;background:var(--color-border)}.jl-resizer:hover,.jl-resizer[data-dragging=true]{background:var(--color-primary)}body[data-jl-resizing=true] *{cursor:col-resize!important;-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.jl-mono,.jl-editor .cm-editor,.jl-terminal,.jl-console{font-family:var(--font-mono);font-size:var(--text-sm);line-height:var(--leading-normal);font-variant-ligatures:none}.jl-terminal-hint{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted);background:var(--color-surface-2);border-block-end:1px solid var(--color-border)}.jl-terminal-hint code{font-family:var(--font-mono);color:var(--color-text)}.jl-console{overflow-y:auto;overflow-x:auto;background:var(--color-surface);color:var(--color-text);padding-block:var(--space-2)}.jl-console-line{white-space:pre-wrap;overflow-wrap:anywhere;padding-inline:var(--space-3);border-inline-start:2px solid transparent}.jl-console-line--stdout{color:var(--color-text)}.jl-console-line--stderr{color:var(--console-stderr-fg);border-inline-start-color:var(--color-danger);background:var(--console-stderr-bg)}.jl-console-line--system{color:var(--color-text-muted);border-inline-start-color:var(--color-border)}.jl-console-line--system[data-tone=warn]{color:var(--color-warning);border-inline-start-color:var(--color-warning)}.jl-console-line--start{margin-block-start:var(--space-3);padding-block-start:var(--space-2);border-block-start:1px solid var(--color-border);color:var(--color-text-muted);font-weight:var(--font-medium)}.jl-console-line--start:first-child{margin-block-start:0;border-block-start:0}.jl-console-img{display:block;max-width:100%;max-height:var(--console-img-max-h);width:auto;height:auto;margin:var(--space-2) var(--space-3);padding:var(--space-2);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:zoom-in}.jl-console-caret{display:inline;border:0;outline:0;padding:0;background:transparent;color:var(--color-text);font:inherit;line-height:inherit;vertical-align:baseline;caret-color:var(--color-primary)}.jl-console-line[data-open]{display:inline;padding-inline-end:0}.jl-console-caret-row[data-inline]{display:inline;padding-inline:0;border-inline-start:0}.jl-console-caret:focus-visible{outline:0}.jl-resizer{position:relative;cursor:col-resize;background:var(--color-border);touch-action:none}.jl-resizer:after{content:"";position:absolute;inset-block:0;inset-inline:-4px}.jl-resizer:hover,.jl-resizer:focus-visible{background:var(--color-primary);outline:none}.jl-resizer[data-axis=y]{flex:none;height:var(--ide-resizer-w);width:100%;cursor:row-resize;border-radius:var(--radius-full);margin-top:var(--space-1)}.jl-resizer[data-axis=y]:after{inset-inline:0;inset-block:-5px}.sa-flow>.jl-resizer{background:var(--stage-line)}.sa-flow>.jl-resizer:is(:hover,:focus-visible){background:var(--stage-accent)}.jl-ide-region[data-ide-w=narrow] .sa-flow>.jl-resizer{display:block}.sa-flow:has(.jl-mm[data-collapsed=true])>.jl-resizer{display:none}.jl-drag-shield{position:absolute;top:0;right:0;bottom:0;left:0;z-index:var(--z-nav);cursor:col-resize}.jl-file-tree [data-cut]{opacity:.45}[data-drop=on]{outline:2px dashed var(--color-primary);outline-offset:-2px;background:var(--color-primary-soft)}.jl-conn-dot{width:.5rem;height:.5rem;border-radius:var(--radius-full);flex:none}.jl-conn-dot[data-state=up]{background:var(--color-success)}.jl-conn-dot[data-state=starting]{background:var(--color-warning)}.jl-conn-dot[data-state=down]{background:transparent;border:1px solid var(--color-text-muted)}@media (prefers-reduced-motion: reduce){.jl-ide-grid{transition:none}}.jl-tutor-md>:first-child{margin-block-start:0}.jl-tutor-md>:last-child{margin-block-end:0}.jl-tutor-md p{margin-block:var(--space-2)}.jl-tutor-md ul,.jl-tutor-md ol{margin-block:var(--space-2);padding-inline-start:var(--space-5)}.jl-tutor-md li{margin-block:var(--space-1)}.jl-tutor-md code{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-surface);border-radius:var(--radius-sm);padding:0 .2em}.jl-tutor-md pre{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);margin-block:var(--space-2);overflow-x:auto}.jl-tutor-md pre code{background:none;padding:0}.jl-tutor-md a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.jl-tutor-md hr{border:0;border-block-start:1px solid var(--color-border);margin-block:var(--space-3)}#root{height:100dvh}.jl-shell{min-width:0}.jl-auth{padding-block:var(--space-6)}.jl-auth>*{flex-shrink:0}.jl-modal-layer{padding-block:var(--space-4);overflow-y:auto}.jl-modal-layer>[role=dialog],.jl-modal-layer>[role=alertdialog]{min-width:0;max-height:calc(100dvh - var(--space-8));overflow:auto;overflow-wrap:anywhere;margin-block:auto}.jl-table-scroll{min-width:0;max-width:100%;overflow-x:auto}.jl-table-scroll table{min-width:var(--table-min-w)}.jl-tree-toggle,.jl-tree-backdrop{display:none}.jl-ide-grid{flex:1;height:auto;position:relative}.jl-editor-column{grid-column:3;grid-row:1}.jl-file-tree{grid-column:1;grid-row:1}.jl-resizer[data-handle=visual]{grid-column:4}.jl-resizer{grid-column:2;grid-row:1;z-index:var(--z-panel)}.jl-ide-region[data-ide-w=narrow] .jl-ide-grid{grid-template-columns:minmax(0,1fr)}.jl-ide-region[data-ide-w=narrow] .jl-editor-column{grid-column:1;border-left:0;overflow-y:auto}.jl-ide-region[data-ide-w=narrow] .jl-editor-body{min-height:var(--mobile-code-min-h)}.jl-ide-region[data-ide-w=narrow] .jl-dock{min-height:var(--mobile-dock-min-h)}.jl-ide-region[data-ide-w=narrow] .jl-tree-toggle{display:flex;flex:none;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.jl-ide-region[data-ide-w=narrow] .jl-tree-backdrop{display:block;position:absolute;top:0;right:0;bottom:0;left:0;top:var(--touch-target);z-index:var(--z-nav);background:rgb(var(--color-bg-rgb) / .6)}.jl-ide-region[data-ide-w=narrow][data-tree=open] .jl-file-tree{z-index:var(--z-panel);width:min(var(--mobile-tree-w),85%)}.jl-ide-region[data-ide-w=narrow] .jl-editor-toolbar>span:last-child{flex-basis:100%;max-width:100%}.jl-ide-region[data-ide-w=narrow] [data-testid=hint-strip]{max-height:25%;overflow-wrap:anywhere}.jl-shell[data-layout=narrow] .jl-topbar{height:auto;min-height:var(--topbar-h);flex-wrap:wrap;padding-block:var(--space-1);gap:var(--space-1) var(--space-2)}.jl-shell[data-layout=narrow] .jl-topbar>span:first-child{flex-basis:100%}.jl-shell[data-layout=narrow] .jl-account{max-width:100%}.jl-shell[data-layout=narrow] .jl-admin-tabs{order:3;flex-basis:100%;overflow-x:auto}.jl-admin-tabs button{flex-shrink:0;white-space:nowrap}.jl-shell[data-layout=narrow] .jl-assignment-summary{flex-wrap:wrap}.jl-shell[data-layout=narrow] .jl-assignment-summary>div{flex-basis:100%}.jl-shell[data-layout=narrow] .jl-assignment-summary>span{flex-wrap:wrap}.jl-shell[data-layout=narrow] .jl-modal-layer header{flex-wrap:wrap}.jl-shell[data-layout=narrow] .jl-modal-layer nav{width:100%;max-height:var(--mobile-file-list-h);border-right:0;border-bottom:1px solid var(--color-border)}.jl-shell[data-layout=narrow] .jl-modal-layer div:has(>nav){flex-direction:column}.jl-shell[data-layout=narrow] .jl-modal-layer pre{min-height:var(--mobile-code-min-h)}@media (pointer: coarse){button,select,input:not([type=checkbox]):not([type=radio]){min-height:var(--touch-target)}button{min-width:var(--touch-target)}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:var(--mobile-input-size)}.jl-console-caret{min-height:0!important}.jl-file-tree [role=treeitem]{min-height:var(--touch-target)}.jl-file-tree>div:first-child{flex-wrap:wrap}.jl-file-tree>div:first-child>span:last-child{flex-wrap:wrap;max-width:100%}}.jl-execution-line{background:var(--execution-line-bg);border-inline-start:var(--space-1) solid var(--execution-line-border)}.jl-execution-snapshot .jl-execution-line{font-weight:var(--font-semibold)}.jl-execution-line:before{content:"▸ ";color:var(--execution-line-border)}.jl-trace-button{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.jl-trace-button:disabled{opacity:.45}.jl-trace-button[aria-pressed=true]{background:var(--color-primary-soft)}.jl-ide-region[data-visualization=open] .jl-ide-grid{grid-template-columns:minmax(0,var(--jl-tree-w, 12rem)) var(--jl-h1, 5px) minmax(0,1fr) var(--jl-h1, 5px) minmax(0,var(--jl-visual-w, var(--visual-panel-w)))}.jl-visual-panel{grid-column:5;grid-row:1;display:flex;flex-direction:column;min-width:0;min-height:0;border-left:1px solid var(--color-border);background:var(--color-surface)}.jl-workspace-editor[data-awaiting-trace=true] .cm-content{cursor:default}.jl-visual-content{flex:1 1 0;padding:var(--space-3);overflow:hidden;overflow-wrap:anywhere;min-height:0;display:flex;flex-direction:column;gap:var(--space-3)}.jl-array-cells{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.jl-array-cells li{display:flex;flex-direction:column;align-items:center;min-width:var(--array-cell-w);max-width:100%;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.jl-array-cells [data-access=true]{outline:2px solid var(--color-primary);outline-offset:-2px}.jl-array-cells [data-changed=true]{background:var(--color-primary-soft)}.jl-ide-region[data-visual-w=narrow] :is(.jl-resizer[data-handle=visual],.jl-trace-start,.jl-trace-error,.jl-source-tabs,.jl-visual-controls,.jl-visual-tabs,.jl-visual-panel,.jl-execution-snapshot){display:none}.jl-ide-region[data-visual-w=narrow] .jl-workspace-editor[data-loading=false]{visibility:visible;pointer-events:auto}.jl-ide-region[data-visualization=open][data-visual-w=narrow] .jl-ide-grid{grid-template-columns:minmax(0,var(--jl-tree-w, 12rem)) var(--jl-h1, 5px) minmax(0,1fr)}.jl-ide-region[data-visualization=open][data-visual-w=narrow][data-ide-w=narrow] .jl-ide-grid{grid-template-columns:minmax(0,1fr)}.jl-ide-region[data-visualization=open][data-visual-w=wide] .jl-visual-tabs{display:none}.jl-diagnostic-line{background:var(--console-stderr-bg);border-inline-start:var(--space-1) solid var(--color-danger)}.jl-diagnostic-line:before{content:"! ";color:var(--console-stderr-fg)}.jl-diagnostic-line--warning{border-inline-start-color:var(--color-warning)}.jl-diagnostic-line--warning:before{color:var(--color-warning)}.jl-motion-stage{position:relative;display:flex;flex-wrap:wrap;gap:var(--space-2);padding-block:var(--space-3)}.jl-motion-cell{display:flex;flex-direction:column;min-width:var(--array-cell-w);max-width:100%;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);overflow-wrap:anywhere}.jl-motion-cell[data-target=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.jl-motion-token{position:absolute;inset:0 auto auto 0;pointer-events:none;border:1px solid var(--color-primary);background:var(--color-surface);color:var(--color-primary);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);box-shadow:var(--shadow-md);font-weight:var(--font-semibold);z-index:1}.jl-motion-links{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;color:var(--color-primary);overflow:visible}.jl-motion-links>path{stroke:currentColor;stroke-width:2;fill:none}.jl-motion-cell{flex:0 0 var(--motion-cell-w);height:var(--motion-cell-h);overflow:auto;min-width:0;position:relative;background:var(--color-surface)}.jl-bubble-scroll{overflow-x:auto;max-width:100%}.jl-bubble-stage{position:relative;height:var(--bubble-stage-height);margin-inline:var(--space-2)}.jl-bubble-slot{position:absolute;top:calc(var(--bubble-lane) * 2);width:var(--bubble-box);height:var(--bubble-box);border-bottom:1px solid var(--color-border);text-align:center;padding-top:var(--bubble-box);color:var(--color-text-muted)}.jl-bubble-slot[data-complete=true]{border-color:var(--color-success)}.jl-bubble-value{position:absolute;top:calc(var(--bubble-lane) * 2);left:0;width:var(--bubble-box);height:var(--bubble-box);display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm);z-index:2}.jl-bubble-value strong{font-size:var(--text-xl);font-weight:var(--font-semibold)}.jl-bubble-value small{font-size:var(--text-xs);white-space:nowrap}.jl-bubble-value[data-active=true]{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-soft)}.jl-bubble-value[data-complete=true]{border-color:var(--color-success);color:var(--color-success)}.jl-bubble-value[data-copy=true]{border-style:dashed}.jl-bubble-comparison{position:absolute;top:0;width:calc(var(--bubble-pitch) + var(--bubble-box));display:flex;flex-direction:column;align-items:center;border-bottom:2px solid var(--color-primary);color:var(--color-primary)}.jl-value-stage{position:relative;display:flex;flex-wrap:wrap;gap:var(--space-2)}.jl-value-slot{flex:0 0 var(--value-slot-width);height:var(--value-slot-height);font-size:var(--text-xs);overflow-wrap:anywhere;border-bottom:1px solid var(--color-border)}.jl-value-slot[data-active=true]{border-color:var(--color-primary);color:var(--color-primary)}.jl-value-box{position:absolute;left:0;top:0;width:var(--value-slot-width);min-height:var(--value-box-height);max-height:var(--value-box-height);overflow:auto;padding:var(--space-2);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow-wrap:anywhere;z-index:1}.jl-value-box[data-active=true]{border-color:var(--color-primary);background:var(--color-primary-soft)}.jl-value-cursor{position:absolute;top:0;left:0;padding-inline:var(--space-1);background:var(--color-primary-soft);color:var(--color-primary);font-size:var(--text-xs);z-index:2;pointer-events:none}.jl-terminal{min-width:0;overflow:hidden}.jl-bubble-temp{position:absolute;top:var(--bubble-lane);right:0;width:var(--bubble-box);height:var(--bubble-box);display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.jl-bubble-temp small{font-size:var(--text-xs)}.jl-bubble-temp strong{font-size:var(--text-xl)}.jl-console[data-nowrap=true] .jl-console-line{white-space:pre;overflow-wrap:normal;width:-moz-max-content;width:max-content;min-width:100%}.jl-loop-tracks{position:relative;width:var(--loop-track-size);height:var(--loop-track-size)}.jl-loop-track{position:absolute;width:100%;height:var(--loop-dot-size);border-bottom:1px solid var(--color-border)}.jl-loop-dot{position:absolute;width:var(--loop-dot-size);height:var(--loop-dot-size);border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface)}.jl-loop-dot[data-reached=true]{background:var(--color-primary);border-color:var(--color-primary)}.jl-loop-cursor{position:absolute;top:0;left:0;width:var(--loop-cursor-size);height:var(--loop-cursor-size);border:2px solid var(--color-primary);border-radius:50%}.jl-answer-block{margin:var(--space-1) 0;padding:var(--space-1) var(--space-2);border:1px dashed var(--color-success);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-success);-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.jl-answer-line{white-space:pre}.jl-answer-float{position:absolute;top:calc(100% + var(--space-1));left:0;z-index:30;min-width:16rem;max-width:min(32rem,80vw);padding:var(--space-2);border:1px dashed var(--color-success);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);-webkit-user-select:none;-moz-user-select:none;user-select:none}.jl-answer-float small{display:block;font-size:var(--text-xs);color:var(--color-text-muted)}.jl-answer-float pre{margin:var(--space-1) 0 0;overflow:auto;font-size:var(--text-xs);color:var(--color-success)}.jl-answer-button[aria-pressed=true]{border-color:var(--color-success);color:var(--color-success)}.hover\:bg-surface:hover{--tw-bg-opacity: 1;background-color:rgb(var(--color-surface-rgb) / var(--tw-bg-opacity, 1))}.hover\:bg-surface-2:hover{--tw-bg-opacity: 1;background-color:rgb(var(--color-surface-2-rgb) / var(--tw-bg-opacity, 1))}.hover\:text-danger:hover{--tw-text-opacity: 1;color:rgb(var(--color-danger-rgb) / var(--tw-text-opacity, 1))}.hover\:text-text:hover{--tw-text-opacity: 1;color:rgb(var(--color-text-rgb) / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-primary:focus{--tw-border-opacity: 1;border-color:rgb(var(--color-primary-rgb) / var(--tw-border-opacity, 1))}.enabled\:hover\:underline:hover:enabled{text-decoration-line:underline}.disabled\:cursor-default:disabled{cursor:default}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}/**
 * Copyright (c) 2014 The xterm.js authors. All rights reserved.
 * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
 * https://github.com/chjj/term.js
 * @license MIT
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 * THE SOFTWARE.
 *
 * Originally forked from (with the author's permission):
 *   Fabrice Bellard's javascript vt100 for jslinux:
 *   http://bellard.org/jslinux/
 *   Copyright (c) 2011 Fabrice Bellard
 *   The original design remains. The terminal itself
 *   has been extended to include xterm CSI codes, among
 *   other features.
 */.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::-moz-selection{color:transparent}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}
