:root{--ln-ui:-apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif;--ln-win:#141416;--ln-pane:#18181b;--ln-tile:#1f1f24;--ln-net:#0f0f11;--ln-sep:#ece5d317;--ln-sep-2:#ece5d329;--ln-text:#ece5d3;--ln-text-2:#ece5d3a3;--ln-text-3:#ece5d366;--ln-fill:#ece5d312;--ln-fill-2:#ece5d31f;--ln-top:#9a6bff;--ln-chop:#c6ff3d;--ln-track:#ff6a3d;--ln-out:#ece5d3;--ln-sound:#7d8cff;--ln-warn:#ffc23d;--ln-r:10px;--ln-ease:cubic-bezier(.2, .9, .25, 1)}.lanterna-body{background:#0b0b0c}.lanterna{color:var(--paper);margin:0 auto;padding:0 clamp(6px,1vw,16px) 10vh}.ln__chapter{max-width:1200px;padding-inline:calc(var(--gutter) - clamp(6px, 1vw, 16px));margin-inline:auto}.ln__head{position:relative}.ln__head>.stamp{right:var(--gutter);position:absolute;top:22vh;rotate:-6deg}@media (width<=760px){.ln__head>.stamp{margin-top:1rem;display:inline-flex;position:static}}.lanterna :focus-visible{outline:2px solid var(--acid);outline-offset:1px}.ln__window{background:var(--ln-win);max-width:1720px;box-shadow:0 0 0 1px var(--ln-sep), 0 40px 90px -40px #000000e6, 0 0 120px -60px #9a6bff59;color:var(--ln-text);font:13px/1.4 var(--ln-ui);border-radius:14px;margin:4vh auto 9vh;position:relative;overflow:hidden}.ln__window :where(button,input,select,textarea){font:inherit;color:inherit}.ln__window [hidden]{display:none!important}.ln__window .mono{font-family:var(--f-mono)}.ln__bar{border-bottom:1px solid var(--ln-sep);background:linear-gradient(#1b1b1f,#161619);flex-wrap:wrap;align-items:center;gap:8px 18px;padding:9px 12px;display:flex}.ln__brand{align-items:baseline;gap:8px;min-width:0;display:flex}.ln__logo{font:italic 600 21px/1 var(--f-display);letter-spacing:-.01em;color:var(--ln-text)}.ln__sep{color:var(--ln-text-3)}.ln__name{width:15ch;min-width:0;color:var(--ln-text-2);background:0 0;border:0;border-radius:6px;padding:3px 6px}.ln__name:hover,.ln__name:focus{background:var(--ln-fill);color:var(--ln-text)}.ln__group{align-items:center;gap:6px;display:flex}.ln__group--end{margin-left:auto}.ln__clock,.ln__fps{color:var(--ln-text-2);font-variant-numeric:tabular-nums;min-width:6ch;font-size:11px}.ln__fps{color:var(--ln-text-3)}.ln__btn,.ln__icon{background:var(--ln-fill);height:28px;color:var(--ln-text);cursor:pointer;white-space:nowrap;transition:background .18s var(--ln-ease), transform .12s var(--ln-ease);border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 11px;display:inline-flex}.ln__btn:hover,.ln__icon:hover{background:var(--ln-fill-2)}.ln__btn:active,.ln__icon:active{transform:translateY(1px)}.ln__btn:disabled{opacity:.45;cursor:default}.ln__btn--small{height:24px;padding:0 8px;font-size:12px}.ln__btn--acid{background:var(--acid);color:#10120a;font-weight:600}.ln__btn--acid:hover{background:#d4ff6a}.ln__btn--quiet{color:var(--ln-text-2);background:0 0}.ln__icon{width:32px;padding:0}.ln__icon svg{fill:currentColor;width:18px;height:18px}.ln__soundbtn[aria-pressed=true]{background:var(--ln-sound);color:#0d0f24;font-weight:600}.ln__rec[aria-pressed=true]{color:#fff;background:#ff4b1f;animation:1.4s ease-in-out infinite ln-pulse}@keyframes ln-pulse{50%{opacity:.72}}.ln__sel{background:var(--ln-fill);border:0;border-radius:7px;max-width:100%;height:28px;padding:0 8px}.ln__sel option{background:#1d1d21}.ln__main{grid-template-columns:minmax(340px,1fr) minmax(360px,1.2fr) minmax(270px,310px);height:clamp(640px,82vh,960px);display:grid}.ln__left{border-right:1px solid var(--ln-sep);flex-direction:column;min-width:0;min-height:0;display:flex}.ln__viewer{width:100%;aspect-ratio:var(--ar,16 / 9);background:#000;flex:0 auto;max-height:64%;position:relative}.ln__viewer canvas{object-fit:contain;cursor:crosshair;touch-action:none;width:100%;height:100%;display:block}.ln__viewer:fullscreen{aspect-ratio:auto;width:100vw;height:100vh;max-height:none}.ln__viewer:fullscreen .ln__vlabel,.ln__viewer:fullscreen .ln__vnote{display:none}.ln__vlabel{color:var(--ln-text-2);pointer-events:none;background:#0000008c;border-radius:5px;margin:0;padding:2px 7px;font-size:10px;position:absolute;bottom:8px;left:10px}.ln__vnote{backdrop-filter:blur(8px);color:var(--ln-text);box-shadow:0 0 0 1px var(--ln-sep-2);background:#141416db;border-radius:8px;margin:0;padding:8px 11px;font-size:12px;position:absolute;top:10px;left:10px;right:10px}.is-nogpu .ln__vnote{font-size:14px;top:50%;translate:0 -50%}.ln__ai{border-top:1px solid var(--ln-sep);background:radial-gradient(120% 90% at 0 0,#c6ff3d0d,#0000 60%);flex-direction:column;flex:auto;gap:8px;min-height:0;padding:12px 14px 14px;display:flex;overflow:auto}.ln__ailabel{letter-spacing:.04em;color:var(--ln-text-2);font-size:10px}.ln__ailabel span{color:var(--acid)}.ln__ai textarea{resize:vertical;border:1px solid var(--ln-sep-2);width:100%;min-height:52px;font:15px/1.4 var(--f-text);background:#0e0e10;border-radius:9px;padding:9px 11px}.ln__ai textarea:focus{border-color:#c6ff3d8c;outline:none}.ln__aiacts{flex-wrap:wrap;gap:6px;display:flex}.is-thinking .ln__ai textarea{background-image:linear-gradient(90deg,#0000,#c6ff3d14,#0000);background-size:200% 100%;animation:1.6s linear infinite ln-think}@keyframes ln-think{to{background-position:-200% 0}}.ln__examples{flex-wrap:wrap;gap:5px;display:flex}.ln__ex{border:1px solid var(--ln-sep-2);font:italic 13px/1.3 var(--f-text);color:var(--ln-text-2);cursor:pointer;background:0 0;border-radius:20px;padding:3px 9px;transition:color .15s,border-color .15s}.ln__ex:hover{color:var(--ln-text);border-color:var(--acid)}.ln__via{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ln__via .ln__sel{flex:160px;font-size:12px}.ln__key{border:1px solid var(--ln-sep-2);background:#0e0e10;border-radius:7px;flex:100%;height:28px;padding:0 9px;font-size:11px}.ln__keylink{color:var(--acid);font-size:12px}.ln__aistatus{min-height:1.4em;color:var(--ln-text-2);margin:0;font-size:11px}.ln__aistatus[data-kind=ok]{color:var(--ln-text)}.ln__aistatus[data-kind=bad]{color:#ff8a6a}.ln__net{--grid:24px;background-color:var(--ln-net);background-image:radial-gradient(#ece5d314 1px,#0000 1.5px);background-size:var(--grid) var(--grid);cursor:grab;touch-action:none;outline:none;min-width:0;min-height:0;position:relative;overflow:hidden}.ln__net:active{cursor:grabbing}.ln__world{transform-origin:0 0;position:absolute;top:0;left:0}.ln__wires{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.ln__wire{fill:none;stroke:#ece5d380;stroke-width:2px}.ln__wire.is-ghost{stroke:var(--ln-top);stroke-dasharray:6 5}.ln__link{fill:none;stroke:var(--ln-chop);stroke-width:1.4px;stroke-dasharray:3 5;opacity:.55}.ln__loop{fill:none;stroke:var(--ln-top);stroke-width:1.4px;stroke-dasharray:2 6;opacity:.6}.ln__nethint{font:italic 18px var(--f-text);color:var(--ln-text-3);pointer-events:none;place-items:center;margin:0;display:none;position:absolute;inset:0}.ln__net.is-empty .ln__nethint{display:grid}.ln__legend{color:var(--ln-text-3);pointer-events:none;gap:12px;margin:0;padding:0;font-size:10px;list-style:none;display:flex;position:absolute;bottom:8px;right:10px}.ln__legend li:before{content:"";background:var(--c);border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.ln__lg--top{--c:var(--ln-top)}.ln__lg--chop{--c:var(--ln-chop)}.ln__lg--track{--c:var(--ln-track)}.ln__lg--sound{--c:var(--ln-sound)}.ln__node{--c:var(--ln-top);border-radius:var(--ln-r);background:var(--ln-tile);cursor:grab;user-select:none;width:168px;transition:box-shadow .15s var(--ln-ease);position:absolute;box-shadow:0 0 0 1px #ece5d31a,0 10px 24px -12px #000c}.ln__node--chop{--c:var(--ln-chop)}.ln__node--track{--c:var(--ln-track)}.ln__node--sound{--c:var(--ln-sound)}.ln__node--out{--c:var(--ln-out)}.ln__node:hover{box-shadow:0 0 0 1px #ece5d338,0 12px 28px -12px #000000e6}.ln__node.is-selected{box-shadow:0 0 0 2px var(--c), 0 14px 34px -12px color-mix(in srgb, var(--c) 45%, transparent)}.ln__node.has-error{box-shadow:0 0 0 2px #ff4b1f}.ln__node.is-waiting{box-shadow:0 0 0 1px var(--ln-warn)}.ln__node.is-viewed:after{content:"viewing";background:var(--c);color:#111;font:600 9px/1.5 var(--f-mono);border-radius:4px;padding:1px 6px;position:absolute;top:-9px;right:8px}.ln__nh{font:11px/1.2 var(--f-mono);justify-content:space-between;align-items:baseline;gap:6px;padding:6px 10px 5px;display:flex}.ln__nh b{color:var(--c);flex-shrink:0;font-weight:600}.ln__nh span{text-overflow:ellipsis;min-width:0;color:var(--ln-text-3);white-space:nowrap;font-size:9.5px;overflow:hidden}.ln__thumb{aspect-ratio:16/9;background:#000;border-radius:5px;width:calc(100% - 12px);margin:0 6px 6px;display:block}.ln__chans{min-height:22px;padding:0 10px 8px}.ln__chans p{font:9.5px/1.3 var(--f-mono);color:var(--ln-text-2);grid-template-columns:44px 1fr 44px;align-items:center;gap:6px;margin:2px 0;display:grid}.ln__chans i,.ln__ch i{background:linear-gradient(90deg, var(--ln-chop) calc(var(--v) * 100%), var(--ln-fill-2) 0);border-radius:2px;height:4px}.ln__chans b{text-align:right;font-variant-numeric:tabular-nums;font-weight:400}.ln__nerr{color:#ff8a6a;max-height:4em;margin:0;padding:0 10px 7px;font-size:10px;line-height:1.3;overflow:hidden}.ln__nerr:empty{display:none}.is-waiting .ln__nerr{color:var(--ln-warn)}.ln__port{width:14px;height:14px;box-shadow:0 0 0 2px var(--c), 0 0 0 4px var(--ln-net);cursor:crosshair;transition:transform .12s var(--ln-ease);background:#26262c;border-radius:50%;position:absolute}.ln__port:hover{transform:scale(1.3)}.ln__port--in{left:-7px}.ln__port--out{background:var(--c);top:66px;right:-7px}.ln__port--chop{background:var(--ln-chop);top:8px;right:-7px}.ln__side{border-left:1px solid var(--ln-sep);background:var(--ln-pane);min-width:0;min-height:0;overflow:auto}.ln__sidempty{color:var(--ln-text-2);font:15px/1.5 var(--f-text);padding:18px 16px}.ln__sidempty .mono{color:var(--ln-text-3);font-size:10px}.ln__sidempty code{font:11px var(--f-mono);color:var(--ln-chop)}.ln__sh{--c:var(--ln-top);z-index:1;border-bottom:1px solid var(--ln-sep);background:var(--ln-pane);padding:14px 14px 10px;position:sticky;top:0}.ln__sh--chop{--c:var(--ln-chop)}.ln__sh--track{--c:var(--ln-track)}.ln__sh--sound{--c:var(--ln-sound)}.ln__sh--out{--c:var(--ln-out)}.ln__sh>.mono{color:var(--c);letter-spacing:.04em;margin:0;font-size:9.5px}.ln__sh h3{font:600 20px/1.1 var(--f-mono);letter-spacing:-.02em;margin:2px 0 4px}.ln__shelp{font:14px/1.4 var(--f-text);color:var(--ln-text-2);margin:0 0 8px}.ln__sacts{flex-wrap:wrap;gap:5px;display:flex}.ln__sins{color:var(--ln-text-2);border-bottom:1px solid var(--ln-sep);margin:0;padding:8px 14px;font-size:10px}.ln__sins b{color:var(--ln-text);font-weight:500}.ln__schans{border-bottom:1px solid var(--ln-sep);gap:2px;padding:8px 10px;display:grid}.ln__ch{cursor:copy;text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:58px 1fr 58px;align-items:center;gap:8px;padding:3px 4px;font-size:11px;display:grid}.ln__ch:hover{background:var(--ln-fill)}.ln__ch b{text-align:right;font-variant-numeric:tabular-nums;color:var(--ln-text-2);font-weight:400}.ln__params{padding:8px 14px 18px}.ln__p{grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px;margin:7px 0;display:grid}.ln__p--wide{grid-template-columns:1fr}.ln__pl{font:11px/1.2 var(--f-mono);color:var(--ln-text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ln__pv{align-items:center;gap:5px;min-width:0;display:flex}.ln__pv>:first-child{flex:auto;min-width:0}.ln__slider{grid-template-columns:minmax(0,1fr) 58px;align-items:center;gap:6px;display:grid}.ln__range{width:100%;accent-color:var(--acid)}.ln__num,.ln__expr{border:1px solid var(--ln-sep);font-variant-numeric:tabular-nums;background:#0e0e10;border-radius:5px;width:100%;height:24px;padding:0 6px;font-size:11px}.ln__expr{color:var(--ln-chop)}.ln__expr.is-bad{color:#ff8a6a;border-color:#ff4b1f}.ln__live{text-overflow:ellipsis;white-space:nowrap;max-width:9ch;color:var(--ln-text-3);flex:none;font-size:10px;overflow:hidden}.ln__live.is-bad{color:#ff8a6a;max-width:14ch}.ln__fx{height:22px;font:italic 600 14px/1 var(--f-display);color:var(--ln-text-3);cursor:pointer;background:0 0;border:0;border-radius:5px;flex:0 0 22px}.ln__fx:hover{background:var(--ln-fill);color:var(--ln-text)}.ln__fx[aria-pressed=true]{color:var(--ln-chop);background:#c6ff3d24}.ln__check{width:16px;height:16px;accent-color:var(--acid);justify-self:start}.ln__pv>.ln__check{flex:none}.ln__color{border:1px solid var(--ln-sep-2);cursor:pointer;background:0 0;border-radius:5px;width:48px;height:24px;padding:0}.ln__text{border:1px solid var(--ln-sep);resize:vertical;background:#0e0e10;border-radius:6px;width:100%;padding:5px 7px}.ln__code{border:1px solid var(--ln-sep);tab-size:2;white-space:pre;resize:vertical;background:#0b0b0d;border-radius:7px;width:100%;min-height:300px;padding:9px 10px;font-size:11px;line-height:1.55}.ln__codeerr{background:var(--ln-fill);white-space:pre-wrap;color:var(--ln-chop);border-radius:6px;margin:0;padding:6px 8px;font-size:10.5px}.ln__codeerr.is-bad{color:#ff8a6a;background:#ff4b1f14}.ln__serr{color:#ff8a6a;background:#ff4b1f1a;border-radius:7px;margin:0 14px 14px;padding:8px 10px;font-size:12px}.ln__menu,.ln__palette{z-index:30;backdrop-filter:blur(16px);box-shadow:0 0 0 1px var(--ln-sep-2), 0 20px 50px #0009;background:#1e1e22f5;border-radius:11px;position:absolute}.ln__menu{min-width:220px;max-height:60vh;padding:5px;overflow:auto}.ln__menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;gap:16px;width:100%;padding:6px 10px;display:flex}.ln__menu button:hover,.ln__menu button:focus{background:var(--ln-top);color:#fff;outline:none}.ln__menu i{color:var(--ln-text-3);font-size:11px;font-style:normal}.ln__menu button:hover i{color:#fffc}.ln__menu hr{border:0;border-top:1px solid var(--ln-sep);margin:4px 6px}.ln__menuhead{color:var(--ln-chop);margin:6px 10px 2px;font-size:10px}.ln__palette{width:300px;padding:8px}.ln__pq{border:1px solid var(--ln-sep-2);background:#0e0e10;border-radius:7px;width:100%;height:32px;padding:0 10px}.ln__plist{flex-wrap:wrap;gap:4px;max-height:300px;margin:8px 0;display:flex;overflow:auto}.ln__pg{letter-spacing:.05em;color:var(--ln-text-3);flex:100%;margin:6px 2px 0;font-size:9.5px}.ln__pop{--c:var(--ln-top);border:1px solid color-mix(in srgb, var(--c) 40%, transparent);background:color-mix(in srgb, var(--c) 9%, transparent);cursor:pointer;border-radius:6px;padding:4px 9px;font-size:12px}.ln__pop--chop{--c:var(--ln-chop)}.ln__pop--track{--c:var(--ln-track)}.ln__pop--sound{--c:var(--ln-sound)}.ln__pop--out{--c:var(--ln-out)}.ln__pop:hover,.ln__pop:focus{background:var(--c);color:#111;outline:none}.ln__phelp{min-height:3.2em;font:13px/1.35 var(--f-text);color:var(--ln-text-2);margin:0 2px}.ln__toast{z-index:40;color:#16140f;pointer-events:none;background:#ece5d3f2;border-radius:9px;max-width:min(560px,90%);margin:0;padding:9px 14px;font-size:13px;position:absolute;bottom:18px;left:50%;translate:-50%;box-shadow:0 14px 40px #00000080}.ln__noscript{text-align:center;padding:40px}@media (width<=1180px){.ln__main{grid-template-rows:600px auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:auto}.ln__side{border-left:0;border-top:1px solid var(--ln-sep);grid-column:1/-1;max-height:460px}}@media (width<=760px){.ln__main{grid-template-rows:auto 420px auto;grid-template-columns:minmax(0,1fr)}.ln__left{border-right:0}.ln__viewer{max-height:none}.ln__ai{flex:none}.ln__net{border-top:1px solid var(--ln-sep)}.ln__bar{gap:8px}.ln__group--end{margin-left:0}.ln__window{border-radius:10px}}.ln__table{margin:1.2em 0;overflow-x:auto}.ln__table table{border-collapse:collapse;width:100%;font:15px/1.4 var(--f-text)}.ln__table th,.ln__table td{text-align:left;vertical-align:top;border-bottom:1px solid #ece5d31f;padding:8px 10px}.ln__table thead th{font:11px var(--f-mono);color:var(--paper-3);letter-spacing:.04em}.ln__table tbody th{font:11px var(--f-mono);color:var(--paper-3);white-space:nowrap}.ln__table td:nth-child(2){color:var(--acid)}.ln__notice .mono{color:var(--paper-3);font-size:11px;line-height:1.7}@media (prefers-reduced-motion:reduce){.ln__rec[aria-pressed=true],.is-thinking .ln__ai textarea{animation:none}}
