:root{--bg:#f3f4f6;--panel:#fff;--line:#d3d7de;--text:#1c2330;--muted:#626b7a;--accent:#2563c9;--warn:#9a5b00;--view:#fff;--overlay:#ffffffd9;--fov:#0006;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font:13px/1.4 system-ui,-apple-system,Segoe UI,sans-serif}:root[data-theme=dark]{--bg:#16181c;--panel:#1f2228;--line:#343841;--text:#e4e6ea;--muted:#9aa0aa;--accent:#5aa2ff;--warn:#f2b84b;--view:#17191d;--overlay:#16181cd9;--fov:#ffffff59;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--text);margin:0}.app{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) 12px minmax(300px,32vw);height:100vh;padding:12px;display:grid}.column-left,.column-right{min-width:0;min-height:0;display:grid}.column-left{grid-template-rows:minmax(40vh,1fr) 12px minmax(0,auto)}.column-right{grid-template-rows:minmax(0,1fr) 12px minmax(0,1fr)}.splitter{touch-action:none;border-radius:3px;position:relative}.splitter-col{cursor:col-resize}.splitter-row{cursor:row-resize}.splitter:after{content:"";background:var(--line);border-radius:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.splitter-col:after{width:4px;height:40px}.splitter-row:after{width:40px;height:4px}.splitter:hover,.splitter.active,.splitter:focus-visible{background:#5aa2ff2e;outline:none}.splitter:hover:after,.splitter.active:after,.splitter:focus-visible:after{background:var(--accent)}body.resizing-x,body.resizing-x *{-webkit-user-select:none;user-select:none;cursor:col-resize!important}body.resizing-y,body.resizing-y *{-webkit-user-select:none;user-select:none;cursor:row-resize!important}.view{border:1px solid var(--line);background:var(--view);border-radius:6px;min-height:0;position:relative;overflow:hidden}.view.dragover{outline:2px dashed var(--accent);outline-offset:-6px}#gl{touch-action:none;cursor:grab;width:100%;height:100%;display:block}#gl:active{cursor:grabbing}.fov{border:1px dashed var(--fov);pointer-events:none;position:absolute}.triad{pointer-events:none;width:80px;height:80px;position:absolute;bottom:34px;left:10px}.triad text{fill:var(--text);font-size:11px}.drop{color:var(--muted);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.drop button{pointer-events:auto}.drop-title{font-size:16px}.viewinfo,.hint{color:var(--muted);pointer-events:none;font-size:12px;position:absolute;left:10px}.viewinfo{white-space:pre;top:8px}.hint{bottom:8px}.legend{border:1px solid var(--line);background:var(--overlay);width:230px;color:var(--muted);pointer-events:none;border-radius:6px;padding:6px 8px;font-size:12px;position:absolute;top:8px;right:10px}.legend-formula{color:var(--text);margin:2px 0 4px}.legend-bar{background:linear-gradient(90deg,#3b4dbf,gray,#b50526);border-radius:2px;height:10px}.legend-ticks{justify-content:space-between;display:flex}.legend-range{margin-top:2px}.gpuerror{border:1px solid var(--warn);background:var(--panel);color:var(--warn);text-align:center;border-radius:6px;padding:12px;position:absolute;top:40%;left:10%;right:10%}.panel{border:1px solid var(--line);background:var(--panel);border-radius:6px;flex-direction:column;min-height:0;display:flex}.panel header,.panel footer{padding:6px 10px}.panel header{border-bottom:1px solid var(--line);font-weight:600}.panel header small{color:var(--muted);font-weight:400}.controls>header{align-items:baseline;gap:6px;display:flex}#theme{font:inherit;margin-left:auto;font-size:12px;font-weight:400}.panel footer{color:var(--muted);border-top:1px solid var(--line);font-size:12px}.stale{color:var(--warn);margin-left:6px;font-size:12px;font-weight:400}.imgwrap{flex:1;justify-content:center;align-items:center;min-height:0;padding:6px;display:flex;position:relative;container-type:size}#holo,#stray{background:var(--bg);width:min(100cqw,100cqh);height:min(100cqw,100cqh)}#wheel{width:48px;height:48px;position:absolute;bottom:8px;right:8px}.controls{overflow:hidden}.controls form{flex:auto;min-height:0;display:flex}.controls .sections{flex:auto;min-width:0;min-height:0;padding:0 10px;overflow-y:auto}.controls .section+.section{border-top:1px solid var(--line)}.controls summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:baseline;gap:8px;padding:6px 0;list-style:none;display:flex}.controls summary::-webkit-details-marker{display:none}.controls summary:before{content:"▸";width:.8em;color:var(--muted);flex:none}.controls details[open]>summary:before{content:"▾"}.controls .section-name{flex:none;font-weight:600}.controls .section-values{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);font-size:12px;overflow:hidden}.controls details[open] .section-values{display:none}.controls .fields{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px 10px;padding:0 0 8px;display:grid}.controls label{color:var(--muted);flex-direction:column;gap:2px;font-size:12px;display:flex}.controls label.check{flex-direction:row;grid-column:1/-1;align-items:center;gap:6px}.controls input,.controls select{font:inherit}.controls output{color:var(--text)}.controls .actions{border-left:1px solid var(--line);flex-direction:column;flex:0 0 260px;gap:6px;padding:8px 10px;display:flex}#generate{padding:6px;font-weight:600}.controls .sdms{border:1px solid var(--line);color:var(--muted);border-radius:4px;grid-column:1/-1;padding:4px 6px;font-size:12px}.controls .sdms-rows{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px 10px;max-height:140px;margin-top:4px;display:grid;overflow-y:auto}.controls .sdms small{color:var(--muted)}.controls .export{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.controls .export button{font:inherit;flex:auto;font-size:12px}
