:root{color-scheme:light;--blue:#327bf6;--blue2:#145bdb;--blueLight:#eaf2ff;--ink:#14213b;--muted:#69778d;--line:#e0e9f5;--surface:#fff;--bg:#f7faff;--green:#0f8466;--red:#bb3e46;--shadow:0 12px 40px rgba(32,65,105,.06);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:linear-gradient(180deg,#fbfdff 0,#f6f9ff 650px,#f9fbff 100%);color:var(--ink);font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--blue2)}:focus-visible{outline:3px solid #79abff;outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}p{color:var(--muted)}[hidden]{display:none!important}.wrap{max-width:1190px;margin:0 auto;padding-left:30px;padding-right:30px}.skip{position:absolute;left:12px;top:-70px;z-index:100;background:var(--blue);color:#fff;padding:10px 18px;border-radius:12px}.skip:focus{top:12px}.topbar{border-bottom:1px solid #edf1f8;background:rgba(255,255,255,.92)}.top-inner{max-width:1190px;padding:14px 30px;margin:auto;display:flex;align-items:center;gap:38px}.brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:#1a2f4c;font-weight:770;font-size:20px;letter-spacing:-.65px;white-space:nowrap}.brand-blue{color:var(--blue)}.brandmark{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(145deg,#76b8ff,#2868e8);color:#fff;box-shadow:0 3px 9px #327bf634;font-weight:780;letter-spacing:0}.topnav{display:flex;gap:25px}.topnav a{color:#50637c;text-decoration:none;font-size:13px;font-weight:600}.topnav a:hover{color:var(--blue)}.privacy{margin-left:auto;border:1px solid #d6e9e3;border-radius:50px;background:#f5fffa;color:#2f7b6e;font-size:12px;padding:6px 11px;font-weight:600;white-space:nowrap}.privacy span{color:#34b391;font-size:9px;vertical-align:2px;margin-right:5px}.intro{padding-top:55px;padding-bottom:37px}.eyebrow,.eyebrow-small,.step{font-size:11px;letter-spacing:1.8px;color:#4283d8;font-weight:820}.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:14px}.eyebrow-line{height:2px;width:25px;background:#4283d8}.version{font-size:10px;letter-spacing:1px;border:1px solid #d8e6fa;border-radius:6px;padding:1px 7px;color:#5e769f;margin-left:5px}.intro h1{font-size:clamp(36px,4.6vw,62px);letter-spacing:-2.4px;line-height:1.11;margin-bottom:18px;font-weight:790}.gradient-text{background:linear-gradient(110deg,#2386f6,#7fa8ff);background-clip:text;color:transparent}.lead{max-width:700px;line-height:1.75;font-size:16px;margin-bottom:18px}.hero-tags{display:flex;gap:22px;flex-wrap:wrap;color:#587394;font-weight:600;font-size:12px}.hero-tags span::first-letter{color:#347ef6}.workspace{margin-top:9px}.workspace-top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:21px}.workspace-top h2{margin-bottom:0;letter-spacing:-.8px;font-size:27px}.eyebrow-small{margin-bottom:5px}.workspace-actions{display:flex;gap:8px;flex-wrap:wrap}.btn{border:1px solid transparent;border-radius:11px;padding:10px 15px;font-weight:690;display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:42px;transition:background .14s,transform .14s,color .14s;white-space:nowrap;font-size:13px}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.primary{background:linear-gradient(130deg,#388aff,#2369e3);color:#fff;box-shadow:0 5px 14px #307bf632}.btn.primary:hover{background:#115fdb}.btn.secondary{background:#eaf2ff;border-color:#d3e4ff;color:#2467c9}.btn.ghost{background:#fff;color:#506584;border-color:var(--line)}.btn.ghost:hover{background:#f3f8ff}.mode-switch{display:flex;background:#e9f0fc;border-radius:14px;padding:5px;gap:6px;margin-bottom:15px;max-width:410px}.mode{flex:1;border:0;background:0 0;border-radius:11px;font-weight:750;color:#65768e;padding:10px 15px;white-space:nowrap}.mode.active{color:#236ddd;background:#fff;box-shadow:0 3px 14px #2d5c9a18}.mode span{font-size:17px;margin-right:3px}#matrixPanel,#vectorPanel{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:27px;box-shadow:var(--shadow)}.section-head{display:flex;justify-content:space-between;align-items:start;gap:15px;margin-bottom:19px}.operations h3,.section-head h3{font-size:20px;letter-spacing:-.45px;margin-bottom:3px}.section-head p{margin-bottom:0;font-size:13px}.step{margin-bottom:7px}.keyboard-hint,.operations-help{color:#8b9aaf;font-size:12px;white-space:nowrap;margin-top:12px}.matrix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.input-card{border:1px solid #e5eefa;background:linear-gradient(180deg,#fcfdff,#fff);border-radius:15px;min-width:0;overflow:hidden}.card-top{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:14px 15px;border-bottom:1px solid #ecf1f8}.matrix-label{font-size:23px;font-weight:790;letter-spacing:-1px;color:#236ddd}.small-sub{font-size:11px;font-weight:550;letter-spacing:0;color:#8b9aaf;margin-left:4px}.dimension-group{display:flex;align-items:center;gap:6px;color:#96a2b2}.dimension-group label{font-size:11px;color:#72819b;display:flex;align-items:center;gap:4px}.dimension-group select,.vector-dim select{background:#fff;border:1px solid #dce6f4;border-radius:7px;padding:5px 6px;color:#2c4b77;font-weight:700}.matrix-input-wrap{overflow:auto;padding:20px 13px;min-height:170px;display:flex;align-items:center;justify-content:center}.matrix-edit{display:grid;gap:6px;padding:0 11px;position:relative;min-width:max-content}.matrix-edit:after,.matrix-edit:before{content:"";position:absolute;top:0;bottom:0;width:7px;border:2px solid #9db8db;pointer-events:none}.matrix-edit:before{left:0;border-right:0}.matrix-edit:after{right:0;border-left:0}.matrix-edit input{width:67px;text-align:center;padding:7px 2px;border:1px solid #dce6f1;border-radius:6px;background:#fff;color:#203754;font-weight:600;font-size:13px;min-width:0}.matrix-edit input:focus{border-color:#448dff;outline:2px solid #448dff40}.matrix-edit input.invalid{border-color:#e15861;background:#fff6f6}.card-actions{border-top:1px solid #f1f4f9;display:flex;justify-content:flex-end;gap:14px;padding:10px 14px;flex-wrap:wrap}.text-btn{border:0;background:0 0;color:#3375d0;font-weight:675;font-size:12px;padding:5px 1px}.text-btn:hover{text-decoration:underline}.text-btn:disabled{text-decoration:none}.operations{margin-top:22px;border-top:1px solid #edf1f7;padding-top:21px}.operations-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.op-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:13px}.op{min-height:69px;border:1px solid #e0e8f5;background:#fbfcff;border-radius:11px;padding:10px 6px;color:#27436b;font-weight:790;font-size:15px;line-height:1.3;transition:all .13s}.op small{display:block;font-size:10px;margin-top:5px;color:#8796ab;font-weight:580}.op:hover{border-color:#91bbfb;background:#f3f8ff}.op.active{background:#edf5ff;border:1.5px solid #4f9aff;color:#1767d7;box-shadow:inset 0 0 0 1px #c8dcff}.op.active small{color:#3b79c0}.calculate-row{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:18px}.inline-guidance{font-size:12px;margin:0}.calculate-row .btn{padding-left:23px;padding-right:23px;flex-shrink:0}.vector-dim{font-size:12px;color:#7c8a9d;display:flex;gap:10px;align-items:center}.vector-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.vector-card{border:1px solid #e0eafa;border-radius:14px;padding:18px;background:#fcfdff}.vector-heading{display:flex;align-items:center;gap:10px;margin-bottom:15px}.vector-heading span:last-child{font-size:11px;color:#9eacc0;margin-left:auto}.dot{height:10px;width:10px;border-radius:50%}.blue-dot{background:#327bf6}.orange-dot{background:#ed9353}.vector-cells{display:flex;gap:10px}.component{flex:1;min-width:0}.component label{display:block;color:#8191a9;font-size:11px;margin-bottom:4px}.component input{width:100%;min-width:0;border:1px solid #dce6f1;border-radius:9px;padding:10px;color:#203754;font-weight:650}.component input.invalid{border-color:#d44a55;background:#fff6f6}.scale-control{color:#6a7f9b;font-size:12px;font-weight:600;white-space:nowrap}.scale-control input{width:76px;margin-left:7px;border:1px solid var(--line);border-radius:7px;padding:7px}.output-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px}.history,.result-card,.viz-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:19px;box-shadow:var(--shadow);padding:23px}.result-head{display:flex;align-items:start;justify-content:space-between;gap:10px}.result-head h3{font-size:20px;letter-spacing:-.5px;margin-bottom:5px}.result-pill{border-radius:50px;background:#e5f7ec;color:#13805e;font-size:11px;font-weight:700;padding:5px 11px;white-space:nowrap}.result-pill.quiet{background:#eef4ff;color:#4880c6}.result-pill.error{color:#b93b44;background:#ffeaec}.empty-result{text-align:center;padding:32px 5px;color:#8999af;min-height:204px}.empty-icon{display:grid;place-items:center;width:45px;height:45px;background:#ebf3ff;border-radius:15px;margin:0 auto 12px;font-size:30px;color:#5890df;font-weight:600}.empty-result h4{font-size:15px;margin-bottom:5px;color:#586d8b}.empty-result p{font-size:12px}.result-title{color:#6783aa;font-size:13px;font-weight:750;margin:10px 0}.result-values{max-width:100%;overflow:auto;min-height:88px}.result-number{font-weight:770;font-size:clamp(25px,3.1vw,42px);color:#1b3963;overflow-wrap:anywhere}.result-matrix{display:table;border-collapse:separate;border-spacing:8px;padding:4px 10px;margin:9px auto;position:relative}.result-matrix:after,.result-matrix:before{position:absolute;content:"";width:6px;top:0;bottom:0;border:2px solid #99b5dd}.result-matrix:before{left:0;border-right:0}.result-matrix:after{right:0;border-left:0}.result-matrix td{padding:4px 7px;text-align:center;font-variant-numeric:tabular-nums;color:#244674;font-size:13px;min-width:42px}.eigen-item{padding:9px 12px;background:#f5f9ff;border:1px solid #e0eafa;border-radius:9px;font-variant-numeric:tabular-nums;font-size:14px;color:#254674;font-weight:650;margin-bottom:7px}.result-detail{font-size:12px;color:#72819b;min-height:19px;margin-top:9px}.result-note{background:#f4f8ff;border-left:3px solid #6e9ee2;border-radius:4px;padding:9px 12px;color:#617791;font-size:12px;margin-bottom:12px}.error-banner{background:#fff2f1;border:1px solid #f5caca;border-radius:10px;padding:12px 14px;font-size:13px;color:#a72c37;margin-bottom:14px}.result-actions{border-top:1px solid #edf1f7;padding-top:14px;margin-top:13px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.result-actions .btn{min-height:37px;padding:8px 11px;font-size:12px}.format-label{font-size:11px;color:#7589a3;margin-left:auto;display:flex;gap:5px;align-items:center}.format-label select{padding:8px 5px;border-radius:8px;background:#fff;border:1px solid #e0eafa;color:#446486;max-width:153px;font-size:11px}.canvas-container{width:100%;margin-top:10px;border:1px solid #e8eff9;border-radius:12px;background:#fbfdff;overflow:hidden;position:relative;touch-action:pan-y}.canvas-container canvas{display:block;width:100%;height:auto;aspect-ratio:700/450;cursor:grab}.canvas-container canvas:active{cursor:grabbing}.viz-caption{font-size:11px;margin:7px 0 9px;min-height:20px}.viz-controls{display:flex;gap:15px;align-items:center;border-top:1px solid #edf1f7;padding-top:12px;flex-wrap:wrap}.viz-controls label{display:flex;align-items:center;gap:8px;color:#6c82a1;font-size:12px}.viz-controls input{width:96px;accent-color:var(--blue)}.viz-hint{font-size:11px;color:#92a1b5;margin:5px 0 0}.history{margin-top:16px;padding:22px}.history-head{display:flex;align-items:center;justify-content:space-between}.history-head h3{font-size:18px;margin-bottom:13px}.history-count{display:inline-block;border-radius:50px;background:#eff5ff;padding:2px 8px;font-size:12px;color:#5386ca;vertical-align:2px}.history-empty{font-size:13px;margin:0}.history-list{display:flex;flex-wrap:wrap;gap:9px}.history-item{border:1px solid #e1eaf6;background:#fbfdff;border-radius:10px;color:#456688;padding:10px 14px;font-size:12px;font-weight:700;text-align:left;min-width:100px;max-width:100%;overflow:hidden;text-overflow:ellipsis}.history-item small{display:block;font-weight:500;color:#9babc0;margin-top:2px}.history-item:hover{border-color:#8ab2ec;background:#f3f8ff}.disclaimer{margin-top:14px;background:#eaf2ff70;border:1px solid #d9e8ff;padding:12px 15px;border-radius:10px;color:#647e9b;font-size:12px}.disclaimer span{color:#387de7;font-size:17px;vertical-align:-1px;margin-right:5px}.info{padding-top:73px;padding-bottom:42px}.section-title{text-align:center;margin:auto auto 28px;max-width:550px}.section-title h2{font-size:32px;letter-spacing:-1px;margin-bottom:10px}.section-title p:last-child{font-size:14px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.feature-grid article{border:1px solid var(--line);border-radius:17px;padding:25px;background:#fff}.feature-grid h3{font-size:16px;margin-bottom:8px}.feature-grid p{font-size:13px;line-height:1.7;margin:0}.feature-icon{width:40px;height:40px;background:#eaf2ff;display:grid;place-items:center;color:#327bf6;font-size:25px;border-radius:11px;margin-bottom:16px}.faq{padding-top:25px;padding-bottom:76px;max-width:860px}.faq details{background:#fff;border:1px solid var(--line);border-radius:13px;margin-bottom:10px;padding:0 17px}.faq summary{padding:15px 0;font-weight:700;cursor:pointer;list-style-position:inside}.faq details p{font-size:13px;padding:0 5px 13px;margin:0}.footer{background:#fff;border-top:1px solid var(--line)}.footer-inner{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:20px;padding-bottom:20px;color:#9caabe;font-size:12px}.smallbrand{font-size:15px}.smallbrand .brandmark{width:27px;height:27px;font-size:15px}dialog{border:1px solid #dce7f8;border-radius:20px;box-shadow:0 30px 90px #102b4f40;max-width:min(570px,calc(100% - 28px));width:100%;padding:0}dialog::backdrop{background:#18304770}.dialog-content{padding:24px}.dialog-title{display:flex;justify-content:space-between;align-items:start}.dialog-title h3{font-size:22px;margin:0 0 12px}.close-x{background:#fff;border:1px solid var(--line);border-radius:9px;padding:4px 10px}.dialog-content>p{font-size:13px}.block-label{display:block;font-size:12px;font-weight:720;margin-bottom:6px}.dialog-content textarea{display:block;width:100%;border:1px solid #cedef4;border-radius:10px;padding:13px;font-family:ui-monospace,Consolas,monospace;font-size:13px;resize:vertical}.dialog-actions{display:flex;justify-content:end;gap:10px;margin-top:14px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#1d3556;color:#fff;border-radius:12px;padding:12px 20px;box-shadow:0 8px 40px #0003;z-index:10;font-size:13px;max-width:90vw}@media(max-width:950px){.op-grid{grid-template-columns:repeat(4,1fr)}.matrix-grid{grid-template-columns:1fr}.matrix-input-wrap{min-height:105px}.output-grid{grid-template-columns:1fr}.canvas-container canvas{max-height:410px}.result-card,.viz-card{padding:19px}}@media(max-width:650px){.wrap{padding-left:17px;padding-right:17px}.top-inner{padding:12px 17px;gap:11px}.topnav{display:none}.privacy{font-size:10px}.intro{padding-top:34px;padding-bottom:26px}.intro h1{letter-spacing:-1.5px}.lead{font-size:14px}.hero-tags{gap:8px 15px}.workspace-top{align-items:start}.workspace-top h2{font-size:23px}.workspace-actions{justify-content:flex-end}.workspace-actions .btn{font-size:11px;padding:6px 9px;min-height:36px}#matrixPanel,#vectorPanel{padding:15px;border-radius:14px}.section-head{flex-wrap:wrap}.keyboard-hint{display:none}.small-sub{display:block;margin:0;font-size:10px}.card-top{padding:12px 10px}.matrix-grid{gap:10px}.dimension-group{gap:3px}.dimension-group label{font-size:10px}.matrix-edit input{width:54px;padding:7px 0}.card-actions{justify-content:space-between;gap:5px}.op-grid{grid-template-columns:repeat(3,1fr);gap:6px}.op{font-size:13px;padding:8px 3px;min-height:64px}.op small{font-size:9px}.operations-help{display:none}.calculate-row{flex-wrap:wrap}.calculate-row .btn{width:100%}.vector-input-grid{grid-template-columns:1fr}.result-actions{gap:7px}.format-label{margin-left:0}.result-actions .btn{flex:1}.feature-grid{grid-template-columns:1fr}.section-title h2{font-size:25px}.info{padding-top:47px}.footer-inner{flex-wrap:wrap}.footer-inner>span:last-child{display:none}}@media(max-width:370px){.privacy{display:none}.op-grid{grid-template-columns:repeat(2,1fr)}.format-label{width:100%}.mode{padding:9px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.eigen-item small{display:block;font-size:11px;font-weight:560;color:#6d83a3;margin-top:4px;overflow-wrap:anywhere}.canvas-container canvas:focus-visible{outline:3px solid #79abff;outline-offset:-4px}.workspace-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.warning-result{background:#fff8e9;border-left-color:#d69a25;color:#76531b}#matrixParameterControl{flex-shrink:0}#matrixParameterControl input{width:84px}#useResult:disabled{opacity:.48}@media(max-width:650px){.workspace-top{flex-wrap:wrap}.workspace-actions{width:100%;justify-content:flex-start}.workspace-actions .btn{flex:0 0 auto}.calculate-row:has(#matrixParameterControl:not([hidden])){align-items:flex-start}}