@font-face{font-family:cmr10;src:url(/assets/cmr10-CmrooNIo.ttf) format("truetype");font-display:block}@font-face{font-family:cmmi10;src:url(/assets/cmmi10-qH_GE-B3.ttf) format("truetype");font-display:block}@font-face{font-family:cmsy10;src:url(/assets/cmsy10-C6CXPfhx.ttf) format("truetype");font-display:block}@font-face{font-family:lmroman10-bold;src:url(/assets/lmroman10-bold-D--HRrdp.otf) format("opentype");font-display:block}:root{--bg: #000000;--white: #ffffff;--grey: #888888;--light-grey: #bbbbbb;--x-color: #83C167;--y-color: #FC6255;--z-color: #29ABCA;--v-color: #FFFF00;--blue: #58C4DD;--panel-font: clamp(18px, 4.6vh, 50px);--ui-font: 13px/1.3 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--white);font:var(--ui-font);overflow:hidden;-webkit-font-smoothing:antialiased;user-select:none;-webkit-user-select:none}body.scrubbing,body.scrubbing *{cursor:ns-resize!important}body.orbiting{cursor:grabbing}#app{position:fixed;inset:0}#view{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none}#view.orbitable{cursor:grab}.corner{position:absolute;top:18px;left:18px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:calc(100vw - 36px)}.panel{padding:.12em .2em;background:none;font-size:var(--panel-font);font-family:cmr10,Latin Modern Roman,"CMU Serif",serif;line-height:1;display:flex;flex-direction:column;gap:.45em;max-width:100%;overflow-x:auto}.eq{display:flex;align-items:center;gap:.3em;flex-wrap:nowrap}.eq.secondary{font-size:.6em;opacity:.85;display:none}.panel.show-decomposition .eq.secondary{display:flex}.matrix,.op,.scalar{background:#000000bf}.cmr{font-family:cmr10,serif}.cmmi{font-family:cmmi10,serif;font-style:normal}.cmsy{font-family:cmsy10,serif}.op{font-family:cmr10,serif;padding:0 .08em}.op.minus{font-family:cmsy10,serif}.paren{font-family:cmr10,serif}.matrix{display:inline-flex;align-items:stretch}.bracket{width:.4em;border:.09em solid currentColor;flex:none}.bracket.left{border-right:0}.bracket.right{border-left:0}.entries{display:grid;align-items:center;justify-items:center;column-gap:.7em;row-gap:.42em;padding:.3em .33em;line-height:.9}.entry{min-width:1.1em;text-align:center}.col-x{color:var(--x-color)}.col-y{color:var(--y-color)}.col-z{color:var(--z-color)}.col-v{color:var(--v-color)}.mletter{position:relative;display:inline-block}.mletter .accent{position:absolute;left:50%;transform:translate(-50%);top:-.42em;font-size:.9em}.mletter .accent.vec{top:-.36em}.scrub{display:inline-block;padding:.05em .12em;margin:-.05em -.12em;border-radius:.12em;cursor:ns-resize;touch-action:none;border-bottom:.06em dotted currentColor;transition:background-color .12s;outline:none;white-space:nowrap}.scrub:hover,.scrub:focus-visible{background:#ffffff1f}.scrub.scrubbing{background:#fff3}.scrub.editing{border-bottom-color:transparent}.scrub-input{font:inherit;color:inherit;background:#ffffff1a;border:0;border-bottom:.06em solid currentColor;width:3.2em;text-align:center;outline:none;padding:0}.num{white-space:nowrap}.hint{color:var(--light-grey);font-size:13px;pointer-events:none;opacity:.85;padding:2px 6px;background:#000000bf}.controls{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:14px;padding:10px 14px;background:linear-gradient(to top,#000000d9,#0000008c 70%,#0000);flex-wrap:wrap}.group{display:flex;align-items:center;gap:8px}.group.grow{flex:1;min-width:260px}.btn{appearance:none;background:#ffffff14;color:#ddd;border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:6px 11px;font:inherit;cursor:pointer;white-space:nowrap;text-decoration:none;line-height:1.2}.btn:hover{background:#ffffff29;color:#fff}.btn.primary{background:#58c4dd2e;border-color:#58c4dd80;color:#cfeefb}.btn.primary:hover{background:#58c4dd4d}.btn.link{color:#9cdceb}.seg{display:inline-flex;border:1px solid rgba(255,255,255,.18);border-radius:6px;overflow:hidden}.seg button{appearance:none;border:0;background:transparent;color:#bbb;font:inherit;padding:6px 12px;cursor:pointer}.seg button.active{background:#ffffff29;color:#fff}.slider{flex:1;display:flex;align-items:center}.slider input[type=range]{width:100%;accent-color:#58C4DD}select.btn{padding-right:24px}select.btn option{background:#111;color:#eee}.menu{position:relative}.menu summary{list-style:none;display:inline-block}.menu summary::-webkit-details-marker{display:none}.menu-body{position:absolute;bottom:calc(100% + 8px);right:0;background:#0a0a0af5;border:1px solid rgba(255,255,255,.18);border-radius:8px;padding:8px 12px;display:grid;gap:6px;min-width:190px;z-index:5}.menu-body label{display:flex;gap:8px;align-items:center;cursor:pointer;color:#ddd;white-space:nowrap}.menu-body input{accent-color:#58C4DD}.menu-body hr{border:0;border-top:1px solid rgba(255,255,255,.12);margin:2px 0}kbd{font:11px/1 ui-monospace,SFMono-Regular,Menlo,monospace;background:#ffffff1f;padding:2px 5px;border-radius:4px}@media(max-width:640px){:root{--panel-font: clamp(18px, min(6vh, 5.6vw), 30px)}.corner{top:10px;left:10px;max-width:calc(100vw - 20px)}.controls{gap:8px;padding:8px 10px}.btn.link{display:none}}
