.linear-lab{--lab-control-row-margin: .65rem 0;--lab-control-row-font-size: .92rem;--lab-note-margin: .7rem 0 0;--lab-note-color: rgba(var(--lab-text-rgb), .64);--lab-note-font-size: .84rem}.linear-lab .formula-note{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.linear-lab .lab-slider::-moz-range-thumb{box-shadow:none}.linear-lab .lab-primary-button{margin-top:.4rem}.linear-lab .lab-secondary-button{margin-top:.45rem}.linear-lab .lab-canvas{height:clamp(420px,58vw,620px);cursor:crosshair}.linear-lab .mode-pill{position:absolute;z-index:2;top:1rem;right:1rem;border:1px solid rgba(var(--lab-border-rgb),.18);border-radius:999px;padding:.38rem .65rem;background:rgba(var(--lab-surface-rgb),.72);color:rgba(var(--lab-text-rgb),.74);font-size:.76rem;backdrop-filter:blur(10px);pointer-events:none}.linear-lab .view-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.linear-lab .view-button{display:grid;gap:.22rem;text-align:left;border:1px solid rgba(var(--lab-border-rgb),.16);border-radius:.9rem;padding:.75rem .85rem;background:rgba(var(--lab-surface-rgb),.68);color:rgba(var(--lab-label-rgb),.76);font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.linear-lab .view-button:hover{transform:translateY(-1px);border-color:rgba(var(--lab-cyan-rgb),.4)}.linear-lab .view-button.active{border-color:rgba(var(--lab-cyan-rgb),.66);background:linear-gradient(135deg,rgba(var(--lab-cyan-rgb),.14),rgba(var(--lab-lilac-rgb),.12)),#080c1cd1;color:rgba(var(--lab-bright-rgb),.96)}.linear-lab .view-button span{color:rgba(var(--lab-text-rgb),.56);font-size:.8rem;line-height:1.35}.linear-lab .explanation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.linear-lab .vector-list{border:1px solid rgba(var(--lab-border-rgb),.16);border-radius:1rem;padding:.9rem;background:radial-gradient(circle at top left,rgba(90,120,255,.1),transparent 38%),rgba(var(--lab-surface-rgb),.72)}.linear-lab .matrix-input{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:.5rem 0 .8rem}.linear-lab .matrix-grid{display:grid;grid-template-columns:repeat(2,4.4rem);gap:.38rem}.linear-lab .matrix-grid input,.linear-lab .vector-input input{min-width:0;border:1px solid rgba(var(--lab-border-rgb),.18);border-radius:.65rem;padding:.5rem .45rem;background:rgba(var(--lab-input-rgb),.9);color:rgba(var(--lab-bright-rgb),.94);font:600 .9rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-align:center}.linear-lab .matrix-bracket{color:rgba(var(--lab-bright-rgb),.62);font-size:3.6rem;font-weight:200;line-height:1}.linear-lab .basis-editor{display:grid;gap:.65rem}.linear-lab .basis-editor label{display:grid;gap:.3rem}.linear-lab .vector-input{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem}.linear-lab .basis-one{color:rgba(var(--lab-cyan-rgb),.96)}.linear-lab .basis-two{color:rgba(var(--lab-lilac-rgb),.96)}.linear-lab .preset-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.65rem}.linear-lab .tiny-button,.linear-lab .vector-button{border:1px solid rgba(var(--lab-border-rgb),.16);border-radius:.65rem;padding:.38rem .52rem;background:rgba(var(--lab-input-rgb),.72);color:rgba(var(--lab-text-rgb),.72);font:inherit;font-size:.78rem;cursor:pointer}.linear-lab .tiny-button:hover,.linear-lab .vector-button:hover{border-color:rgba(var(--lab-cyan-rgb),.5);color:rgba(var(--lab-bright-rgb),.94)}.linear-lab .vector-button.active{border-color:#86efac99;color:#bbf7d0f5;background:#14532d33}.linear-lab .basis-valid{margin:.7rem 0 0;color:#86eface6;font-size:.84rem}.linear-lab .basis-invalid{margin:.7rem 0 0;color:#fca5a5f2;font-size:.84rem}.linear-lab .primary-button{width:100%;border:1px solid rgba(var(--lab-border-rgb),.2);border-radius:.8rem;padding:.65rem .8rem;color:rgba(var(--lab-bright-rgb),.92);font:inherit;font-weight:700;cursor:pointer}.linear-lab .primary-button{margin-top:.4rem;background:#2563eb57}.linear-lab .primary-button:hover{background:rgba(var(--lab-blue-rgb),.44)}.linear-lab .explanation-card{color:rgba(var(--lab-text-rgb),.74);font-size:.9rem;line-height:1.55}.linear-lab .big-equation,.linear-lab .equation-line{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:rgba(var(--lab-bright-rgb),.94)}.linear-lab .big-equation{font-size:1.08rem}.linear-lab .big-statement{margin:.2rem 0 .4rem;color:rgba(var(--lab-bright-rgb),.96);font-weight:800;font-size:1rem}.linear-lab .emphasis{color:rgba(var(--lab-bright-rgb),.82)}.linear-lab .vector-list{display:flex;justify-content:space-between;align-items:end;gap:1rem}.linear-lab .vector-buttons{display:flex;flex-wrap:wrap;gap:.4rem}.linear-lab .clear-vectors{width:auto;min-width:8rem}@media(max-width:900px){.linear-lab .explanation-grid,.linear-lab .view-selector{grid-template-columns:1fr}.linear-lab .vector-list{display:grid}.linear-lab .clear-vectors{width:100%}}.linear-lab .grid-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.linear-lab .grid-button{display:grid;gap:.22rem;text-align:left;border:1px solid rgba(var(--lab-border-rgb),.16);border-radius:.9rem;padding:.75rem .85rem;background:rgba(var(--lab-surface-rgb),.68);color:rgba(var(--lab-label-rgb),.76);font:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.linear-lab .grid-button:hover{transform:translateY(-1px);border-color:rgba(var(--lab-cyan-rgb),.4)}.linear-lab .grid-button.active{border-color:rgba(var(--lab-cyan-rgb),.66);background:linear-gradient(135deg,rgba(var(--lab-cyan-rgb),.14),rgba(var(--lab-lilac-rgb),.12)),#080c1cd1;color:rgba(var(--lab-bright-rgb),.96)}.linear-lab .grid-button span{color:rgba(var(--lab-text-rgb),.56);font-size:.8rem;line-height:1.35}.linear-lab .interaction-message{margin:0;border:1px solid rgba(var(--lab-border-rgb),.12);border-radius:.8rem;padding:.6rem .75rem;background:rgba(var(--lab-surface-rgb),.48);color:rgba(var(--lab-text-rgb),.62);font-size:.82rem}.linear-lab .explanation-grid{display:grid;grid-template-columns:1fr;gap:.85rem}@media(max-width:900px){.linear-lab .grid-selector,.linear-lab .explanation-grid{grid-template-columns:1fr}}
