:root{--matrix-cell-height:34px;--matrix-column-width:54px;--color-text-primary:#edf5f2;--color-text-muted:#b7c8c8;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--color-text-primary);font-synthesis:none;text-rendering:optimizelegibility;background:#101416;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;overflow:hidden}button,input,select{font:inherit}button,select{color:var(--color-text-primary);background:#182226;border:1px solid #304349;border-radius:6px}button{cursor:pointer;min-height:34px;padding:0 12px}button:hover,select:hover{border-color:#6f8b91}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,.matrix-item:focus-visible,.vector-column-label:focus-visible{outline-offset:2px;outline:2px solid #f4b740}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;inset:0;overflow:hidden}.shell{grid-template-rows:minmax(0,1fr) auto;height:100vh;display:grid}.stage{background:radial-gradient(circle at 45% 40%,#172225 0,#101416 58%);min-width:0;min-height:0;position:relative}.scene-canvas{opacity:0;width:100%;height:100%;transition:opacity .18s ease-out;display:block}.scene-canvas[data-rendered=true]{opacity:1}.scene-preparing,.scene-unavailable{color:var(--color-text-muted);text-align:center;pointer-events:none;place-content:center;gap:8px;padding:76px 24px;display:grid;position:absolute;inset:0}.scene-preparing{font-size:.9rem}.scene-unavailable strong{color:var(--color-text-primary);font-size:1.05rem}.scene-unavailable span{max-width:38rem;line-height:1.5}.scene-unavailable button{pointer-events:auto;justify-self:center}@media (prefers-reduced-motion:reduce){.scene-canvas{transition:none}}.mode-switch{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#101416d1;border:1px solid #293b40;border-radius:8px;gap:6px;padding:4px;display:flex;position:absolute;top:18px;left:18px}.mode-switch-option{position:relative}.mode-switch button{min-width:48px}.mode-switch-option>.diagnostic-badge{z-index:8;position:absolute;top:-7px;right:-7px}.mode-switch button[aria-pressed=true]{color:#111719;background:#d6f3ec;border-color:#d6f3ec}.view-tools{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:calc(100% - 170px);display:flex;position:absolute;top:18px;right:18px}.view-tools button,.view-tools select{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#101416b8;min-width:78px}.view-tools select{padding:0 8px}.panel{background:#12191c;border-top:1px solid #27383d;grid-template-columns:132px minmax(0,1fr);align-items:stretch;gap:12px;min-width:0;min-height:260px;padding:12px 14px;display:grid;overflow:hidden}.control-cluster{flex-direction:column;gap:14px;min-width:0;display:flex}.share-dialog,.share-error-dialog,.reset-workspace-dialog{width:min(440px,100vw - 32px);color:var(--color-text-primary);background:#131c1f;border:1px solid #3a5056;border-radius:14px;padding:0;box-shadow:0 24px 80px #0000008c}.share-dialog::backdrop,.share-error-dialog::backdrop,.reset-workspace-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#05090ac2}.share-dialog-content,.share-error-content,.reset-workspace-content{gap:16px;padding:24px;display:grid}.share-dialog-content h1,.share-dialog-content p,.share-error-content h1,.share-error-content p,.reset-workspace-content h1,.reset-workspace-content p{margin:0}.share-dialog-content h1,.share-error-content h1,.reset-workspace-content h1{font-size:1.25rem}.share-dialog-content button,.share-error-content button{justify-self:end}.share-link{width:100%;height:38px;color:var(--color-text-primary);background:#0f1719;border:1px solid #425b62;border-radius:6px;padding:0 10px}.reset-workspace-actions{justify-content:flex-end;gap:8px;display:flex}.danger-button{background:#5c292c;border-color:#8d4447}.danger-button:hover{border-color:#d76a6f}.about-dialog{width:min(680px,100vw - 32px);max-height:min(780px,100vh - 32px);color:var(--color-text-primary);background:#131c1f;border:1px solid #3a5056;border-radius:14px;padding:0;overflow:auto;box-shadow:0 24px 80px #0000008c}.about-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#05090ac2}.about-dialog-content{border-radius:inherit;background:#131c1f;min-height:100%}.about-dialog-header{z-index:1;background:linear-gradient(#131c1f 82%,#131c1f00);justify-content:space-between;align-items:flex-start;gap:24px;padding:24px 24px 15px;display:flex;position:sticky;top:0}.about-eyebrow{color:#f4b740;letter-spacing:.12em;text-transform:uppercase;margin:0 0 3px;font-size:.72rem;font-weight:700}.about-dialog h1{letter-spacing:-.02em;margin:0;font-size:1.55rem}.about-close{width:34px;min-width:34px;color:var(--color-text-muted);place-items:center;padding:0;display:grid}.about-intro{max-width:570px;color:var(--color-text-muted);margin:0;padding:0 24px 20px;line-height:1.55}.control-guide{border:1px solid #2b4046;border-radius:10px;margin:0 24px 24px;overflow:hidden}.control-guide [role=row]{grid-template-columns:minmax(150px,.72fr) minmax(0,1.7fr);display:grid}.control-guide [role=row]+[role=row]{border-top:1px solid #26383d}.control-guide [role=cell],.control-guide [role=columnheader]{padding:11px 13px;line-height:1.42}.control-guide [role=cell]:first-child,.control-guide [role=columnheader]:first-child{border-right:1px solid #26383d}.control-guide [role=cell]:last-child{color:#bfd0cf}.control-guide-header{color:#8fa6a7;letter-spacing:.08em;text-transform:uppercase;background:#1b292d;font-size:.72rem;font-weight:700}.guide-add-controls{align-items:center;gap:7px;display:flex}.guide-add-split{pointer-events:none;align-self:center}.interaction-guide{margin:0 24px 24px}.interaction-guide h2{color:#8fa6a7;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem}.expression-guide>p{color:#bfd0cf;margin:0 0 10px;font-size:.82rem;line-height:1.45}.expression-tokens{flex-wrap:wrap;gap:5px;margin:7px 0;display:flex}.expression-tokens code{color:var(--color-text-primary);background:#111b1e;border:1px solid #344a50;border-radius:4px;padding:2px 5px}.interaction-guide dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.interaction-guide dl>div{background:#172124;border:1px solid #2b4046;border-radius:8px;padding:12px 13px}.interaction-guide dt{color:var(--color-text-primary);margin-bottom:4px;font-size:.82rem;font-weight:700}.interaction-guide dd{color:#bfd0cf;margin:0;font-size:.82rem;line-height:1.45}.expression-guide dl{grid-template-columns:repeat(3,minmax(0,1fr))}kbd{color:#f2f8f6;white-space:nowrap;background:#202e32;border:1px solid #425b62;border-bottom-color:#58727a;border-radius:5px;margin:1px 2px 1px 0;padding:3px 7px;font-family:inherit;font-size:.78rem;font-weight:650;display:inline-block;box-shadow:0 1px #090d0e}.about-links{background:#101719;border-top:1px solid #2b4046;justify-content:space-between;align-items:flex-end;gap:12px 24px;padding:18px 24px;display:flex}.about-link-list{flex-wrap:wrap;gap:8px 20px;display:flex}.about-links a{color:#78d8c0;font-size:.85rem;text-decoration:none}.about-links a:hover{color:#aaf0df;text-decoration:underline}.about-version{color:#627577;letter-spacing:.04em;flex:none;font-size:.7rem}.animation-block{border:0;min-width:0;margin:0;padding:0}.animation-block legend{color:var(--color-text-muted);letter-spacing:0;margin-bottom:9px;padding:0;font-size:.82rem;font-weight:400}.animation-body{gap:12px;min-width:0;display:grid}.transport{grid-template-columns:1fr;gap:6px;display:grid}.transport button{white-space:normal;width:100%;min-width:0;padding:0 6px;line-height:1.1}.transport button[data-playback-status=playing]{color:#fff;background:#a83f43;border-color:#d95d60}.transport button[data-playback-status=playing]:hover{background:#bd484d;border-color:#ff9395}.transport button[data-playback-status=paused]{color:#fff;background:#277f61;border-color:#55c99a}.transport button[data-playback-status=paused]:hover{background:#309572;border-color:#8ce5c0}.toggle-row,.mode-row{min-width:0;color:var(--color-text-muted);gap:9px;font-size:.82rem;display:grid}.toggle-label,.mode-label{min-width:0}.toggle-row input[type=checkbox]{accent-color:#d6f3ec;justify-self:end;width:18px;height:18px;margin:0}.mode-row select{width:100%;min-width:0;height:34px;padding:0 6px}.toggle-row{grid-template-columns:1fr auto;align-items:center;gap:8px}.visibility-toggles{gap:8px;display:grid}.equation-tray{min-width:0;position:relative;overflow:auto hidden}.equation-tray-diagnostic{z-index:10;width:17px;height:0;position:sticky;top:8px;left:calc(100% - 25px)}.equation-row{grid-template-columns:minmax(0,max-content) auto minmax(180px,max-content);align-items:end;gap:16px;min-width:max-content;display:grid}.equation-row-input-only{grid-template-columns:minmax(0,max-content)}.equation-left{align-items:flex-end;gap:10px;min-width:0;display:flex}.equation-equals{color:var(--color-text-primary);align-self:center;font-size:2rem}.equation-equals[data-stale],.result-matrix-card[data-stale]{opacity:.45}.equation-right{min-width:0}.matrix-stack{align-items:flex-end;gap:10px;min-width:max-content;margin:0;padding:0;list-style:none;display:flex;position:relative}.matrix-add-item{align-items:flex-end;min-height:100%;display:flex}.equation-add-button{width:44px;min-height:44px;color:var(--color-text-muted);background:#10191b6b;border:1px dashed #26383d;flex:none;place-items:center;padding:0;display:grid}.equation-add-button:hover,.equation-add-button:focus-visible{color:var(--color-text-primary);background:#f4b7401a;border-color:#f4b740}.preset-split{anchor-scope:--preset-trigger;flex:none;align-items:stretch;width:68px;display:flex;position:relative}.preset-split .preset-main{border-radius:7px 0 0 7px;width:44px}.preset-menu{width:24px}.preset-menu>.preset-toggle{cursor:pointer;width:24px;height:100%;min-height:44px;color:var(--color-text-muted);anchor-name:--preset-trigger;background:#10191b6b;border:1px dashed #26383d;border-left-color:#0000;border-radius:0 7px 7px 0;place-items:center;list-style:none;display:grid}summary.preset-toggle::-webkit-details-marker{display:none}.preset-toggle:after{clip-path:polygon(0 10%,100% 10%,50% 90%);content:"";background:currentColor;width:6px;height:4px}summary.preset-toggle:hover,summary.preset-toggle:focus-visible,.preset-menu[open]>summary.preset-toggle{color:var(--color-text-primary);background:#f4b7401a;border-color:#f4b740;outline:none}.preset-menu-panel{z-index:30;background:#111b1e;border:1px solid #344a50;border-radius:8px;flex-direction:column;width:max-content;min-width:190px;max-width:calc(100vw - 16px);max-height:min(360px,100vh - 16px);padding:6px;display:flex;position:fixed;top:8px;left:8px;overflow:auto;box-shadow:0 12px 30px #0000006b}.preset-menu[open]>.preset-menu-panel:not([data-positioned=true]){visibility:hidden}.preset-menu-panel button{text-align:left;white-space:normal;background:0 0;border:0;min-height:34px;padding:6px 10px}.preset-menu-panel button:hover,.preset-menu-panel button:focus-visible{color:#fff;background:#f4b7401f}.preset-menu-panel button:disabled,.preset-menu-panel button[aria-disabled=true]{color:#718184;cursor:not-allowed}.preset-menu-option{flex-direction:column;display:flex}.preset-unavailable{color:#91a2a5;max-width:230px;padding:4px 10px 8px;font-size:.72rem;line-height:1.35}.matrix-add-button-2,.vector-add-button-2{margin-bottom:72px}.matrix-add-button-3,.vector-add-button-3{margin-bottom:91px}.vector-add-button-inline{width:68px;min-height:34px;margin-bottom:0}.vector-add-button-inline .preset-toggle{min-height:34px}.matrix-item{flex:none;width:auto;position:relative}.matrix-item[data-drop-position]:before,.vector-column-label[data-drop-position]:before{z-index:5;content:"";background:#f4b740;border-radius:999px;width:3px;position:absolute;box-shadow:0 0 0 2px #f4b7403d}.matrix-item[data-drop-position]:before{top:2px;bottom:2px}.matrix-item[data-drop-position=before]:before{left:-7px}.matrix-item[data-drop-position=after]:before{right:-7px}.matrix-card{isolation:isolate;background:#172124;border:1px solid #2a3d43;border-radius:8px;flex-direction:column;justify-content:space-between;height:100%;padding:10px;display:flex;position:relative;overflow:hidden}.matrix-card:before{z-index:0;width:var(--step-progress,0%);content:"";background:linear-gradient(90deg,#f4b7403d,#f4b7401a),#172124;position:absolute;inset:0}.matrix-card>*{position:relative}.matrix-header,.duration-row{align-items:center;display:flex}.matrix-header{justify-content:space-between;gap:10px}.duration-row{color:var(--color-text-muted);gap:10px;font-size:.85rem}.duration-row span{font-variant-numeric:tabular-nums;width:56px}.duration-row input{accent-color:#d6f3ec;flex:1}.matrix-card-2,.vector-matrix-card-2,.result-matrix-card-2{--vector-expression-height:74px;min-height:188px}.matrix-card-3,.vector-matrix-card-3,.result-matrix-card-3{--vector-expression-height:114px;min-height:230px}.matrix-item[draggable=true]{cursor:grab}.matrix-card[data-active-step]{border-color:#f4b740;box-shadow:0 0 0 1px #f4b74080,0 0 20px #f4b7402e}.matrix-card[data-active-step] .matrix-label{color:#f4b740}.matrix-item[data-dragging],.vector-column-label[data-dragging],.vector-expression [data-dragging]{opacity:.46}.matrix-item[data-drag-preview] .matrix-card,.vector-column-drag-preview[data-drag-preview]{outline-offset:3px;opacity:.96;outline:2px solid #f4b740db}.matrix-item[data-drag-preview] .matrix-card{border-color:#f4b740}.matrix-label{color:var(--color-text-primary);font-size:1.15rem}.matrix-actions{gap:5px;display:flex}.equation-delete-button{color:#789094;background:0 0;border-color:#0000;place-items:center;width:24px;min-height:24px;padding:0;font-size:.75rem;line-height:1;display:grid}.equation-delete-button:hover,.equation-delete-button:focus-visible{color:#e4eeee;background:#ef6f6c1a;border-color:#0000}.matrix-expression{margin:12px 0;display:block}.matrix-bracket,.vector-expression,.result-expression{width:max-content;padding:0 13px;position:relative}.matrix-bracket:before,.matrix-bracket:after,.vector-expression:before,.vector-expression:after,.result-expression:before,.result-expression:after{content:"";border-color:var(--matrix-bracket-color,#b9cfce);width:9px;position:absolute;top:1px;bottom:1px}.matrix-bracket:before,.vector-expression:before,.result-expression:before{border-top:2px solid;border-bottom:2px solid;border-left:2px solid;left:0}.matrix-bracket:after,.vector-expression:after,.result-expression:after{border-top:2px solid;border-bottom:2px solid;border-right:2px solid;right:0}.matrix-grid,.vector-expression,.result-expression{grid-auto-rows:var(--matrix-cell-height);gap:6px;display:grid}.matrix-grid input,.vector-expression input,.result-expression .result-component,.vector-drag-preview-cell{min-width:0;height:var(--matrix-cell-height);color:var(--color-text-primary);border-radius:4px;font-family:Georgia,Times New Roman,serif;font-size:1rem}.matrix-grid input,.vector-expression input{text-align:center;background:#10191b;border:1px solid #0000;width:100%}.matrix-grid input:hover,.vector-expression input:hover{border-color:#344d54}.matrix-grid input[aria-invalid],.vector-expression input[aria-invalid]{background:#251718;border-color:#ef6f6c}.vector-matrix-card,.result-matrix-card{isolation:isolate;border:1px solid color-mix(in srgb, var(--vector), #101416 45%);background:color-mix(in srgb, var(--vector), #101416 86%);border-radius:8px;flex-direction:column;justify-content:space-between;align-items:center;width:auto;padding:10px;display:flex;position:relative}.equation-row[data-tray-diagnostic] :is(.matrix-card,.vector-matrix-card,.result-matrix-card){border-color:#ef6f6c85}.equation-row[data-tray-diagnostic] :is(.matrix-card,.vector-matrix-card,.result-matrix-card):after{z-index:9;box-sizing:border-box;content:"";border-radius:inherit;pointer-events:none;background:#ef6f6c24;position:absolute;inset:0;box-shadow:inset 0 0 18px #ef6f6c1f}.vector-matrix-card{--vector:#5bd8a6}.vector-matrix-card:has(.preset-menu[open]){z-index:1}.result-matrix-card{--vector:#8fb4ff;border-color:color-mix(in srgb, var(--vector), #101416 30%);background:color-mix(in srgb, var(--vector), #101416 78%)}.vector-column-labels,.result-column-labels{gap:6px;width:max-content;padding:0 13px;display:grid}.vector-column-label,.result-column-label{min-width:0;min-height:var(--matrix-cell-height);flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex;position:relative}.vector-column-label[draggable=true]{cursor:grab}.vector-column-label[data-drop-position]:before{top:0;bottom:calc(-1 * var(--vector-expression-height,120px))}.vector-column-label[data-drop-position=before]:before{left:-7px}.vector-column-label[data-drop-position=after]:before{right:-7px}.vector-column-label .equation-delete-button{position:absolute;top:0;right:0}.vector-label{color:var(--color-text-primary);font-size:1.05rem}.vector-color-label{background:var(--vector);width:22px;height:4px;box-shadow:0 0 0 1px color-mix(in srgb, var(--vector), #101416 35%);border-radius:999px}.vector-expression{--matrix-bracket-color:color-mix(in srgb, var(--vector), #edf5f2 42%)}.vector-add-cell{width:44px;height:var(--matrix-cell-height);display:block}.result-expression{--matrix-bracket-color:color-mix(in srgb, var(--vector), #edf5f2 42%)}.card-balance-row{width:100%;height:var(--matrix-cell-height);visibility:hidden}.result-expression .result-component{border:1px solid color-mix(in srgb, var(--vector), #edf5f2 24%);font-variant-numeric:tabular-nums;background:#10191bb3;place-items:center;display:grid}.vector-column-drag-preview{border:1px solid color-mix(in srgb, var(--vector), #101416 45%);background:color-mix(in srgb, var(--vector), #101416 72%);border-radius:8px;flex-direction:column;align-items:center;gap:8px;width:max-content;padding:8px;display:flex}.vector-drag-preview-values{grid-template-columns:var(--matrix-column-width);gap:6px;width:max-content;display:grid}.vector-drag-preview-cell{background:#10191b;border:1px solid #344d54;place-items:center;display:grid}.diagnostic-field{min-width:0;height:var(--matrix-cell-height);display:block;position:relative}.diagnostic-badge{flex:0 0 17px;width:17px;height:17px;display:inline-block;position:relative}.diagnostic-field>.diagnostic-badge{z-index:8;position:absolute;top:-6px;right:-6px}.diagnostic-indicator{z-index:8;color:#1b1112;cursor:help;background:#ef6f6c;border:2px solid #251718;border-radius:999px;place-items:center;width:17px;height:17px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.68rem;font-weight:900;line-height:1;display:grid;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 8px #00000073}.diagnostic-badge>.diagnostic-indicator{top:0;right:0}.preset-split>.diagnostic-badge{z-index:8;position:absolute;top:-6px;right:-6px}.diagnostic-indicator:focus-visible{outline-offset:2px;outline:2px solid #f4b740}.diagnostic-tooltip{top:var(--diagnostic-tooltip-top,0);left:var(--diagnostic-tooltip-left,0);z-index:1000;visibility:hidden;color:#ffd7d5;opacity:0;pointer-events:none;background:#251718;border:1px solid #ef6f6c;border-radius:6px;width:max-content;max-width:min(260px,70vw);padding:8px 10px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.75rem;font-weight:500;line-height:1.35;transition:opacity .12s,visibility .12s;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000008c}.diagnostic-tooltip>div+div{border-top:1px solid #ef6f6c47;margin-top:5px;padding-top:5px}.diagnostic-tooltip[data-open]{visibility:visible;opacity:1}@media (width<=820px){body{overflow:auto}.shell{grid-template-rows:minmax(360px,56vh) auto;height:auto;min-height:100vh}.panel{grid-template-columns:1fr;gap:10px;min-height:0;overflow:visible}.control-cluster{gap:10px}.view-tools{top:auto;bottom:12px;right:12px}.transport{flex-wrap:wrap;display:flex}.transport button,.transport select{flex:72px;width:auto}.equation-tray{overflow-x:auto}.equation-row{grid-template-columns:minmax(0,max-content) auto minmax(180px,max-content)}.matrix-item{width:auto}}@media (width<=520px){.view-tools{grid-template-columns:repeat(3,minmax(0,1fr));width:calc(100% - 24px);max-width:none;display:grid}.view-tools button,.view-tools select{width:100%;min-width:0;min-height:30px;padding-inline:9px;font-size:.75rem}.about-dialog-header{padding:20px 18px 13px}.about-intro{padding:0 18px 18px}.control-guide,.interaction-guide{margin:0 18px 20px}.interaction-guide dl{grid-template-columns:1fr}.control-guide [role=row]{grid-template-columns:minmax(110px,.75fr) minmax(0,1.5fr)}.control-guide [role=cell],.control-guide [role=columnheader]{padding:10px;font-size:.8rem}.guide-add-controls{gap:4px}.guide-add-split{width:42px;height:32px}.guide-add-split .preset-main{aspect-ratio:1;width:32px;height:32px;min-height:32px}.guide-add-split .preset-menu,.guide-add-split .preset-menu>.preset-toggle{width:10px}.guide-add-split .preset-menu>.preset-toggle{height:32px;min-height:32px}.guide-add-button math{font-size:.75rem}.guide-add-split .preset-toggle:after{width:4px;height:3px}.about-links{padding:16px 18px 20px}}@media (height<=520px) and (orientation:landscape){.shell{grid-template-rows:minmax(160px,55vh) minmax(0,45vh);height:100vh;min-height:0}.panel{min-height:0;overflow:auto}.mode-switch,.view-tools{top:10px}}
