:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#dce7f4;background:#0b1220;font-synthesis:none;font-size:16px;color-scheme:dark;--muted:#93a6be;--line:#27344a;--teal:#72e0d4}*{box-sizing:border-box}body{margin:0}header{height:78px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#0d1626}.brand{color:#f1f7ff;text-decoration:none;font-size:22px;font-weight:650;letter-spacing:-.6px;display:flex;gap:13px;align-items:center}.brandmark{font:italic 32px Georgia,serif;color:var(--teal);width:36px}.brandmark sup{font-size:19px;position:relative;top:-3px}.convention{font-size:14px;color:var(--muted)}.convention span{margin:0 8px;color:#506981}main{display:grid;grid-template-columns:284px minmax(0,1fr);max-width:1920px;margin:auto}aside{padding:27px 24px;border-right:1px solid var(--line);background:#101a2a;min-height:calc(100vh - 78px)}.sectionTitle{font-size:12px;letter-spacing:1.6px;font-weight:700;color:#7f95af;margin:0 0 19px}label{display:block;font-size:14px;margin-bottom:8px;color:#c0cfe1}input,select,button{font:inherit;border-radius:7px;border:1px solid #35465e;min-height:40px}input,select{width:100%;background:#0c1524;color:#e7f0fc;padding:9px 11px;outline:none}input:focus,select:focus,button:focus-visible,#stage:focus-visible{outline:2px solid var(--teal);outline-offset:2px}#base{font:22px ui-monospace,SFMono-Regular,Consolas,monospace;min-height:48px}#limit{font-variant-numeric:tabular-nums}button{background:#18263a;color:#d6e3f3;padding:8px 13px;cursor:pointer;transition:background .12s,border-color .12s}button:hover{background:#233750;border-color:#67819e}button:disabled{cursor:default;opacity:.55}.presets{display:flex;gap:5px;margin:9px 0 24px}.presets button{flex:1;padding:5px 3px;min-height:32px;font-size:14px}.presets .selected{color:var(--teal);border-color:#429c98;background:#123431}.hint{font-size:13px;line-height:1.65;color:var(--muted);margin:8px 0 14px}.runControls{display:flex;gap:8px;margin-top:15px}.runControls button{flex:1}.primary{background:#73dfd1;color:#092125;font-weight:700;border-color:#73dfd1}.primary:hover{background:#91ebdf;border-color:#91ebdf}.divider{height:1px;background:var(--line);margin:25px 0}.error{font-size:13px;color:#ffb9a6;line-height:1.5}.error:not(:empty){margin:10px 0}select{font-size:14px;margin-bottom:20px;cursor:pointer}.bounds>span{display:block;font-size:13px;color:#aebfd4;margin:0 0 8px}.bounds>div{display:flex;align-items:center;gap:8px;margin-bottom:13px}.bounds>div>span{color:#8297ae;font-size:12px}.bounds input{width:calc(50% - 14px);min-width:0;font:13px ui-monospace,Consolas,monospace;padding:8px}.zoomControls{display:flex;gap:6px;margin:17px 0 10px}.zoomControls button{min-width:40px}.zoomControls #resetView{flex:1;font-size:14px}details{margin-top:23px;border-top:1px solid var(--line);padding-top:17px;font-size:13px;line-height:1.7;color:#aabbd0}summary{cursor:pointer;color:#c9d9ec;font-size:14px}details p{margin:13px 0}.workspace{padding:24px 30px 18px;min-width:0}.plotHeading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}h1{font-size:23px;letter-spacing:-.5px;font-weight:550;margin:0 0 5px}#plotSubtitle{font-size:14px;color:var(--muted)}.state{font-size:13px;border:1px solid #36465a;border-radius:30px;padding:6px 12px;color:#acbbcb;white-space:nowrap}.state.live{border-color:#275d59;color:#85dfd1;background:#122d2d}#plotCard{height:clamp(450px,calc(100vh - 320px),960px);min-height:450px;position:relative;border:1px solid #27394e;border-radius:10px;background:#0a121f;overflow:hidden}#stage{position:absolute;touch-action:none;cursor:crosshair;border:1px solid #2a4056;outline:none}#stage.dragging{cursor:grabbing}#plot,#grid,#axisLabels{position:absolute;inset:0;width:100%;height:100%}#plot{image-rendering:pixelated}#grid,#axisLabels{pointer-events:none}#stage.pending #plot{opacity:.35}.tick{position:absolute;color:#8297b0;font:12px ui-monospace,Consolas,monospace;white-space:nowrap}.tick.x{transform:translate(-50%)}.tick.y{transform:translate(-100%,-50%)}#xTitle,#yTitle{position:absolute;color:#a2b6ce;font:italic 14px Georgia,serif}#xTitle{bottom:8px;right:16px}#yTitle{left:15px;top:13px}#viewPending,#emptyMessage{position:absolute;inset:auto 0;text-align:center;pointer-events:none;font-size:14px;color:#96adc3}#viewPending{top:18px}#emptyMessage{top:48%;padding:12px;background:#0a121fcc}.plotFooter{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:16px 0 23px;min-height:38px}.legend{font-size:12px;color:#a9bdd2}.legend>div{display:flex;gap:8px;align-items:center;margin-top:6px;font-variant-numeric:tabular-nums}#legendGradient{display:block;width:120px;height:7px;border-radius:4px;background:linear-gradient(90deg,#2a7b9d,#56c9b8,#f2f3a5)}#legendGradient.complexity{background:linear-gradient(90deg,#f5ce53,#959db1,#3698f3)}#legendGradient.points{background:#62ddd5;width:25px}#position{font:13px ui-monospace,Consolas,monospace;color:#9ab0ca;text-align:right}#statistics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;border-top:1px solid var(--line);padding-top:18px}#statistics span{display:block;font-size:12px;color:#8fa5bf;margin-bottom:7px}#statistics strong{font-size:23px;font-weight:500;letter-spacing:-.4px;font-variant-numeric:tabular-nums;color:#dfebfa}#statistics small{font-size:13px;color:#8fa5bf;font-weight:400}.statusFooter{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;margin-top:17px;color:#7d94b0;font-size:12px}[hidden]{display:none!important}@media(min-width:1700px){aside{padding:30px}main{grid-template-columns:310px minmax(0,1fr)}}@media(max-width:1050px){header{padding:0 22px}.workspace{padding:23px 20px}main{grid-template-columns:250px minmax(0,1fr)}aside{padding:25px 18px}#statistics{gap:10px}#statistics strong{font-size:20px}#position{font-size:12px}}@media(max-width:760px){header{height:68px;padding:0 18px}.convention{display:none}main{display:flex;flex-direction:column}aside{min-height:0;border-right:0;border-bottom:1px solid var(--line);padding:20px;display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.sectionTitle,.presets,.hint,.runControls,.divider,.bounds,.zoomControls,details,.error{grid-column:1/-1}aside>label,aside>input,aside>select{grid-column:1/-1}.sectionTitle{margin-bottom:12px}.presets{margin-bottom:15px}.divider{margin:18px 0}details{margin-top:10px}.workspace{padding:22px 14px}#plotCard{height:65vh;min-height:390px}.plotHeading{margin-bottom:14px}h1{font-size:21px}.plotFooter{flex-wrap:wrap;gap:12px}#position{text-align:left}#statistics{grid-template-columns:1fr 1fr;gap:18px}#statistics strong{font-size:23px}}#viewControls{margin:0;padding:0;border:0;font-size:16px;line-height:normal}#viewControls>summary{display:none}#viewControls .viewInner>details{line-height:1.7}@media(max-width:760px){aside{padding:16px 20px;align-items:start}aside>.sectionTitle{grid-row:1;margin-bottom:12px}aside>label[for=base]{grid-column:1;grid-row:2}aside>#base{grid-column:1;grid-row:3}aside>label[for=limit]{grid-column:2;grid-row:2}aside>#limit{grid-column:2;grid-row:3;height:48px}aside>.presets{grid-column:1/-1;grid-row:4;margin:8px 0 12px}aside>.hint{display:none}aside>.runControls{grid-column:1/-1;grid-row:5;margin:0}aside>#inputError{grid-column:1/-1;grid-row:6}#viewControls{grid-column:1/-1;grid-row:7;margin-top:14px}#viewControls>summary{display:list-item;border-top:1px solid var(--line);padding-top:13px;font-size:14px}#viewControls .viewInner{padding-top:20px}#viewControls .viewInner>.divider,#viewControls .viewInner>.sectionTitle{display:none}#plotCard{height:calc(100vw - 35px);min-height:330px;max-height:600px}.workspace{padding-top:17px}}
