.ot{--ot-paper:var(--paper,#e7e1ce);--ot-raised:var(--paper-raised,#f2edde);--ot-ink:var(--ink,#191713);--ot-soft:var(--ink-soft,#4a443a);--ot-brass:var(--brass,#94762f);--ot-brass-text:var(--brass-text,#6e571f);--ot-accent:var(--fundus,#984a16);--ot-bad:var(--oxblood-text,#6b2230);--ot-rule:var(--rule,.5px);--ot-mono:var(--font-mono,"IBM Plex Mono", ui-monospace, monospace);--ot-line:color-mix(in srgb, var(--ot-brass) 35%, transparent);color:var(--ot-ink);font-family:var(--ot-mono);font-size:var(--t-xs,.8125rem);font-variant-numeric:lining-nums;outline:none;gap:.9rem;display:grid}.ot:focus-visible{outline:2px solid color-mix(in srgb, var(--ot-brass) 55%, transparent);outline-offset:4px}.ot code{font-family:var(--ot-mono)}.ot-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:.9rem;display:grid}.ot-code{border:var(--ot-rule) solid var(--ot-line);background:var(--ot-raised);border-radius:3px;max-height:min(68vh,44rem);position:relative;overflow:hidden auto}.ot-lines{font-size:var(--t-sm,.875rem);margin:0;padding:.5rem 0;line-height:1.7;list-style:none}.ot-line{cursor:pointer;border-left:3px solid #0000;grid-template-columns:3.4rem 1fr;display:grid}.ot-line:hover{background:color-mix(in srgb, var(--ot-brass) 7%, transparent)}.ot-ln{text-align:right;color:var(--ot-soft);user-select:none;font-variant-numeric:tabular-nums;padding-right:.9rem}.ot-src{white-space:pre-wrap;overflow-wrap:anywhere;text-indent:-2ch;tab-size:4;padding:0 1rem 0 2ch}.ot-line.is-current{background:color-mix(in srgb, var(--ot-accent) 15%, transparent);border-left-color:var(--ot-accent)}.ot-line.is-current .ot-ln{color:var(--ot-accent);font-weight:600}.ot-line.is-current .ot-ln:before{content:"▶ ";font-size:.7em}.ot-line.is-waiting{background:color-mix(in srgb, var(--ot-brass) 10%, transparent);border-left-color:var(--ot-line)}.ot-line.is-error{background:color-mix(in srgb, var(--ot-bad) 14%, transparent);border-left-color:var(--ot-bad)}.ot-tk-keyword{color:var(--ot-accent)}.ot-tk-builtin{color:var(--ot-brass-text)}.ot-tk-string{color:var(--ot-bad)}.ot-tk-number{color:var(--ot-brass-text)}.ot-tk-comment{color:var(--ot-soft);font-style:italic}.ot-tk-def{font-weight:600}.ot-side{gap:.8rem;min-width:0;display:grid}.ot-now{border-left:3px solid var(--ot-accent);padding:.15rem 0 .15rem .75rem}.ot-now p{margin:0}.ot-now-head{color:var(--ot-brass-text);letter-spacing:.04em;margin-bottom:.25rem!important}.ot-now-text{font-family:var(--font-body,Georgia, serif);font-size:var(--t-sm,.95rem);line-height:1.6}.ot-now-text code,.ot-cond code{background:color-mix(in srgb, var(--ot-brass) 12%, transparent);border-radius:2px;padding:0 .25em}.ot-bad{color:var(--ot-bad);font-weight:600}.ot-conds:empty{display:none}.ot-cond{border:var(--ot-rule) solid var(--ot-line);background:var(--ot-raised);border-radius:3px;padding:.5rem .7rem}.ot-cond+.ot-cond{margin-top:.5rem}.ot-cond p{margin:0;line-height:1.6}.ot-cond-kind{text-transform:uppercase;letter-spacing:.1em;color:var(--ot-brass-text);margin-right:.4rem;font-size:.7rem}.ot-cond-arrow{color:var(--ot-soft)}.ot-cond[data-result=true] strong{color:var(--ot-accent)}.ot-cond[data-result=false] strong{color:var(--ot-bad)}.ot-operands{gap:.15rem;margin:.35rem 0 0;padding:0;list-style:none;display:grid}.ot-operands li{color:var(--ot-soft)}.ot-skip{font-style:italic}.ot-panel{min-width:0}.ot-h{font-family:var(--ot-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ot-brass-text);margin:0 0 .4rem;font-size:.72rem;font-weight:400}.ot-h-note{letter-spacing:.04em;text-transform:none;color:var(--ot-soft);margin-left:.4rem}.ot-vars{gap:.55rem;display:grid}.ot-frame{border:var(--ot-rule) solid var(--ot-line);border-radius:3px;overflow:hidden}.ot-frame.is-top{border-color:color-mix(in srgb, var(--ot-accent) 55%, transparent)}.ot-frame-head{background:color-mix(in srgb, var(--ot-brass) 9%, transparent);border-bottom:var(--ot-rule) solid var(--ot-line);justify-content:space-between;gap:.5rem;margin:0;padding:.3rem .6rem;display:flex}.ot-frame-note{color:var(--ot-soft)}.ot-var-table{border-collapse:collapse;width:100%}.ot-var th,.ot-var td{text-align:left;vertical-align:top;padding:.28rem .6rem;line-height:1.5}.ot-var th{white-space:nowrap;width:1%;font-weight:500}.ot-var td code{word-break:break-word}.ot-var+.ot-var th,.ot-var+.ot-var td{border-top:var(--ot-rule) solid color-mix(in srgb, var(--ot-brass) 18%, transparent)}.ot-type{color:var(--ot-soft);white-space:nowrap;width:1%;text-align:right!important}.ot-var.is-def{color:var(--ot-soft)}.ot-var.is-changed{background:color-mix(in srgb, var(--ot-accent) 11%, transparent)}.ot-var.is-changed th{color:var(--ot-accent)}.ot-var.is-deleted td{color:var(--ot-soft);font-style:italic}.ot-var.is-deleted th{color:var(--ot-soft);text-decoration:line-through}.ot-var.is-return th{color:var(--ot-accent)}.ot-was,.ot-new{color:var(--ot-soft);margin-top:.1rem;font-size:.72rem;display:block}.ot-new{color:var(--ot-accent);text-transform:uppercase;letter-spacing:.08em;margin-left:.5rem;display:inline-block}.ot-empty{color:var(--ot-soft);margin:0;padding:.4rem .6rem}.ot-stack{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.ot-stack li{border-left:3px solid var(--ot-line);color:var(--ot-soft);justify-content:space-between;gap:.6rem;padding:.2rem .6rem;display:flex}.ot-stack li.is-top{border-left-color:var(--ot-accent);color:var(--ot-ink)}.ot-transport{border-top:var(--ot-rule) solid var(--ot-line);border-bottom:var(--ot-rule) solid var(--ot-line);flex-wrap:wrap;align-items:center;gap:.6rem .9rem;padding:.6rem 0;display:flex}.ot-buttons{gap:.3rem;display:flex}.ot-btn{font-family:var(--ot-mono);font-size:var(--t-xs,.8125rem);color:var(--ot-soft);border:var(--ot-rule) solid color-mix(in srgb, var(--ot-brass) 45%, transparent);cursor:pointer;background:0 0;border-radius:3px;min-width:2.4rem;padding:.35em .7em}.ot-btn:hover{border-color:var(--ot-accent);color:var(--ot-ink)}.ot-play{color:var(--ot-accent);border-color:color-mix(in srgb, var(--ot-accent) 50%, transparent);min-width:6.2rem}.ot-scrub{accent-color:var(--ot-accent);flex:12rem;min-width:8rem}.ot-count{font-variant-numeric:tabular-nums;color:var(--ot-soft);text-align:right;min-width:7rem}.ot-speed{color:var(--ot-soft);align-items:center;gap:.4rem;display:flex}.ot-speed select{font:inherit;color:var(--ot-ink);background:var(--ot-raised);border:var(--ot-rule) solid var(--ot-line);border-radius:3px;padding:.2em .3em}.ot-out{background:color-mix(in srgb, var(--ot-ink) 4%, transparent);border:var(--ot-rule) solid color-mix(in srgb, var(--ot-brass) 22%, transparent);white-space:pre-wrap;word-break:break-word;max-height:16rem;line-height:1.6;font-family:var(--ot-mono);border-radius:3px;margin:0;padding:.6rem .8rem;overflow:auto}.ot-out.is-empty:before{content:"Nothing printed yet.";color:var(--ot-soft);font-style:italic}.ot-err{color:var(--ot-bad);margin-top:.4rem}.ot-timeline-wrap summary{cursor:pointer;list-style-position:inside}.ot-timeline{border:var(--ot-rule) solid var(--ot-line);border-radius:3px;height:15rem;margin-top:.4rem;position:relative;overflow-y:auto}.ot-tl-row{cursor:pointer;white-space:nowrap;height:28px;color:var(--ot-soft);align-items:center;gap:.7rem;padding:0 .6rem;display:flex;position:absolute;left:0;right:0;overflow:hidden}.ot-tl-row:hover{background:color-mix(in srgb, var(--ot-brass) 8%, transparent)}.ot-tl-row.is-current{background:color-mix(in srgb, var(--ot-accent) 14%, transparent);color:var(--ot-ink)}.ot-tl-n{text-align:right;font-variant-numeric:tabular-nums;width:3.5rem}.ot-tl-line{width:2.8rem;color:var(--ot-brass-text)}.ot-tl-fn{color:var(--ot-accent)}.ot-tl-what{text-overflow:ellipsis;overflow:hidden}@media (width<=760px){.ot-grid{grid-template-columns:minmax(0,1fr)}.ot-code{max-height:22rem}.ot-lines{font-size:var(--t-xs,.8125rem)}.ot-line{grid-template-columns:2.6rem 1fr}.ot-ln{padding-right:.6rem}.ot-count{min-width:0}.ot-btn{min-width:2.2rem;padding:.35em .5em}.ot-play{min-width:5.4rem}}.tu{border-top:var(--rule) solid color-mix(in srgb, var(--brass) 45%, transparent);max-width:var(--measure);margin:2rem 0 0;padding:1.2rem 0 0}.tu-head{flex-wrap:wrap;align-items:baseline;gap:.8rem;display:flex}.tu-h{font-family:var(--font-display);font-weight:400;font-size:var(--t-md);color:var(--ink);margin:0}.tu-by,.tu-note,.tu-progress,.tu-said,.tu-thinking{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-soft);margin:0}.tu-note,.tu-progress{margin:.6rem 0;line-height:1.7}.tu-progress{color:var(--brass-text)}.tu-btn{font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.04em;color:var(--ink);background:var(--paper-raised);border:var(--rule) solid color-mix(in srgb, var(--brass) 55%, transparent);cursor:pointer;border-radius:3px;padding:.42rem .8rem}.tu-btn:hover:not(:disabled){border-color:var(--fundus)}.tu-btn:disabled{opacity:.55;cursor:default}.tu-actions{flex-direction:column;gap:.8rem;margin:.9rem 0 0;display:flex}.tu-ask,.tu-solve{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.tu-label{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink-soft);flex:0 0 100%}.tu-input{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--ink);background:var(--paper-raised);border:var(--rule) solid color-mix(in srgb, var(--brass) 45%, transparent);border-radius:3px;flex:18rem;min-width:0;padding:.42rem .6rem}.tu-out{margin:1.2rem 0 0}.tu-said{border-left:3px solid color-mix(in srgb, var(--brass) 50%, transparent);margin-bottom:.7rem;padding-left:.7rem}.tu-answer{font-size:var(--t-sm);color:var(--ink);line-height:1.75}.tu-answer p{margin:0 0 .8em}.tu-inline{font-family:var(--font-mono);background:color-mix(in srgb, var(--brass) 12%, transparent);border-radius:2px;padding:0 .25em;font-size:.88em}.tu-code{background:var(--paper-raised);border:var(--rule) solid color-mix(in srgb, var(--brass) 35%, transparent);font-family:var(--font-mono);font-size:var(--t-xs);font-variant-numeric:lining-nums;border-radius:3px;margin:0 0 .8em;padding:.6rem .8rem;line-height:1.6;overflow-x:auto}.tu-code code{font-family:inherit}.tu-stale .tu-said{border-left-color:var(--oxblood-text)}.tu-stale .tu-said:after{content:" — about the step you were on, not this one.";color:var(--oxblood-text)}.tu-step{font:inherit;font-family:var(--font-mono);color:var(--fundus);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:0;font-size:.9em}.tu-after,.tu-stop{margin:.7rem 0 0}
