*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#000;--color-surface:#1c1c1c;--color-border:#555;--color-text:#fff;--color-text-secondary:#ccc;--color-primary:#7cb8ff;--color-primary-hover:#a0cdff;--color-danger:#ff8080;--color-success:#70e0a0;--radius:6px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif}*{scrollbar-color:#444 transparent}html{overflow-y:scroll}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);font-size:14px;line-height:1.5}input,textarea,button,select{font:inherit;color:inherit}button{cursor:pointer}input[type=number]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.ScenarioForm{gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--color-surface);border:1px solid #7cb8ff99;border-radius:12px;flex-direction:column;max-width:820px;margin:0 auto;display:flex;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.ScenarioForm-header{justify-content:space-between;align-items:center;display:flex}.ScenarioForm-header h2{margin:0;font-size:18px;font-weight:600}.ScenarioForm-cancel{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-secondary);font-size:13px;transition:background .15s}.ScenarioForm-cancel:hover{background:var(--color-surface)}.ScenarioForm-label{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:13px;font-weight:500;display:flex}.ScenarioForm-input,.ScenarioForm-textarea,.ScenarioForm-select{padding:var(--spacing-sm) 12px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);font-size:14px;transition:border-color .15s}.ScenarioForm-label>.ScenarioForm-input,.ScenarioForm-label>.ScenarioForm-textarea{width:100%}.ScenarioForm-input:focus,.ScenarioForm-textarea:focus,.ScenarioForm-select:focus{border-color:var(--color-primary);outline:none}.ScenarioForm-textarea{resize:vertical;max-width:100%;font-family:ui-monospace,Consolas,monospace;font-size:13px;line-height:1.6}.ScenarioForm-select{flex-shrink:0;width:170px}.ScenarioForm-fieldset{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-md);min-width:0}.ScenarioForm-fieldset legend{color:var(--color-text-secondary);padding:0 var(--spacing-xs);font-size:13px;font-weight:500}.ScenarioForm-params{gap:var(--spacing-md);flex-direction:column;display:flex}.ScenarioForm-param-block{gap:var(--spacing-xs);flex-direction:column;display:flex}.ScenarioForm-param-row{align-items:center;gap:var(--spacing-sm);display:flex}.ScenarioForm-param-dist{align-items:center;gap:var(--spacing-sm);padding-left:var(--spacing-xs);display:flex}.ScenarioForm-mode-toggle{border:1px solid var(--color-border);border-radius:var(--radius);flex-shrink:0;display:flex;overflow:hidden}.ScenarioForm-mode-btn{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg);color:var(--color-text-secondary);border:none;font-size:11px;transition:background .15s,color .15s}.ScenarioForm-mode-btn+.ScenarioForm-mode-btn{border-left:1px solid var(--color-border)}.ScenarioForm-mode-btn--active{color:var(--color-primary);background:#7cb8ff26}.ScenarioForm-param-formula{padding-left:var(--spacing-xs)}.ScenarioForm-param-formula .ScenarioForm-input{width:100%;font-family:ui-monospace,Consolas,monospace;font-size:13px}.ScenarioForm-param-name{flex:2;min-width:0}.ScenarioForm-param-field{flex:1;min-width:0}.ScenarioForm-param-field-wide{flex:2;min-width:0}.ScenarioForm-param-sep{color:var(--color-text-secondary);flex-shrink:0}.ScenarioForm-param-remove{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);width:28px;height:28px;color:var(--color-text-secondary);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:color .15s,border-color .15s;display:flex}.ScenarioForm-param-remove:hover:not(:disabled){color:var(--color-danger);border-color:var(--color-danger)}.ScenarioForm-param-remove:disabled{opacity:.3;cursor:not-allowed}.ScenarioForm-add-param{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);border:1px dashed var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-primary);align-self:flex-start;font-size:13px;font-weight:500;transition:background .15s,border-color .15s}.ScenarioForm-add-param:hover{border-color:var(--color-primary);background:#1c2d3f}.ScenarioForm-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);background:#301414;font-size:13px}.ScenarioForm-submit{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);background:var(--color-primary);color:#000;border:none;align-self:flex-start;font-size:14px;font-weight:500;transition:background .15s}.ScenarioForm-submit:hover:not(:disabled){background:var(--color-primary-hover)}.ScenarioForm-submit:disabled{opacity:.6;cursor:not-allowed}.ScenarioList{padding:var(--spacing-xl);background:var(--color-surface);border:1px solid #7cb8ff99;border-radius:12px;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.ScenarioList-header{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.ScenarioList-header h2{margin:0;font-size:18px;font-weight:600}.ScenarioList-new{justify-content:center;align-items:center;gap:var(--spacing-md);width:100%;margin-top:var(--spacing-md);padding:var(--spacing-sm) 0;color:var(--color-text-secondary);opacity:.55;cursor:pointer;background:0 0;border:none;font-size:13px;transition:opacity .15s,color .15s;display:flex}.ScenarioList-new:before,.ScenarioList-new:after{content:"";background:var(--color-border);flex:1;height:1px}.ScenarioList-new:hover{opacity:1;color:var(--color-text)}.ScenarioList-empty{color:var(--color-text-secondary);text-align:center;padding:var(--spacing-xl) 0;font-size:14px}.ScenarioList-items{gap:var(--spacing-sm);flex-direction:column;list-style:none;display:flex}.ScenarioList-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius);text-align:left;cursor:pointer;background:#7cb8ff1a;border:1px solid #7cb8ff80;justify-content:space-between;align-items:center;font-size:14px;transition:background .15s,border-color .15s,box-shadow .15s;display:flex}.ScenarioList-item:hover{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);background:#7cb8ff33}.ScenarioList-name{color:var(--color-text);font-weight:600}.ScenarioList-meta{align-items:center;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:13px;display:flex}.ScenarioList-badge{color:var(--color-success);background:#132e1e;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.CsvUpload-wrapper{gap:var(--spacing-lg);flex-direction:column;display:flex}.CsvUpload-toolbar{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-end;display:flex}.CsvUpload-tabs{gap:2px;padding-bottom:0;display:flex}.CsvUpload-tab{padding:var(--spacing-sm) var(--spacing-lg);color:var(--color-text-secondary);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-size:14px;font-weight:500;transition:color .15s,border-color .15s}.CsvUpload-tab:hover{color:var(--color-text)}.CsvUpload-tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.CsvUpload-params-head{justify-content:space-between;align-items:flex-end;gap:var(--spacing-md);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md);flex-wrap:wrap;display:flex}.CsvUpload-subtabs{gap:2px;display:flex}.CsvUpload-empty{color:var(--color-text-secondary);text-align:center;padding:var(--spacing-xl) 0;font-size:14px}.CsvUpload-placeholder-card{opacity:.7;border-style:dashed}.CsvUpload-placeholder-card h3{margin:0;font-size:16px;font-weight:600}.CsvUpload-placeholder-text{color:var(--color-text-secondary);font-size:14px}.CsvUpload-tab-panel{gap:var(--spacing-lg);flex-direction:column;display:flex}.CsvUpload-card{padding:var(--spacing-xl);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #7cb8ff99;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.CsvUpload-card h2{margin:0;font-size:18px;font-weight:600}.CsvUpload-demo-gif{border-radius:8px;align-self:center;width:100%;max-width:600px;display:block}.CsvUpload-demo-gif--sim{max-width:780px}.CsvUpload-card h3{margin:0;font-size:16px;font-weight:600}.CsvUpload-heading--param,.CsvUpload-heading--spi{letter-spacing:.5px;padding-bottom:var(--spacing-xs);margin:0;font-size:12px;font-weight:600}.CsvUpload-heading--param{color:var(--color-primary)}.CsvUpload-heading--spi{color:#c084fc}.CsvUpload-param-list{flex-direction:column;gap:4px;font-size:13px;list-style:none;display:flex}.CsvUpload-param-list>li{border-radius:var(--radius);background:var(--color-bg);padding:6px 10px}.CsvUpload-spis-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.CsvUpload-spi-chips{gap:var(--spacing-sm);flex-wrap:wrap;font-size:13px;list-style:none;display:flex}.CsvUpload-spi-chips>li{border-radius:var(--radius);background:var(--color-bg);padding:5px 10px}.CsvUpload-param-item{gap:var(--spacing-sm);flex-direction:column;display:flex}.CsvUpload-param-main{justify-content:space-between;align-items:baseline;gap:var(--spacing-md);display:flex}.CsvUpload-param-main .CsvUpload-param-name{flex-shrink:0}.CsvUpload-param-main .CsvUpload-range{white-space:nowrap;text-align:right}.CsvUpload-param-dist{color:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:11px}.CsvUpload-param-name{font-family:ui-monospace,Consolas,monospace}.CsvUpload-formula{color:var(--color-primary);opacity:.7;padding:2px 0;font-family:ui-monospace,Consolas,monospace;font-size:11px}.CsvUpload-range{color:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:12px}.CsvUpload-dropzone{padding:var(--spacing-xl) var(--spacing-lg);border:2px dashed var(--color-border);border-radius:var(--radius);background:var(--color-bg);cursor:pointer;justify-content:center;align-items:center;transition:border-color .15s,background .15s;display:flex}.CsvUpload-dropzone:hover{border-color:var(--color-primary)}.CsvUpload-dropzone--active{border-color:var(--color-primary);background:#0a1520}.CsvUpload-dropzone--compact{padding:var(--spacing-md) var(--spacing-lg)}.CsvUpload-files{gap:var(--spacing-xs);flex-direction:column;display:flex}.CsvUpload-file{align-items:center;gap:var(--spacing-sm);border-radius:var(--radius);background:var(--color-bg);padding:6px 10px;font-size:13px;display:flex}.CsvUpload-file-name{color:var(--color-primary);flex:1;font-family:ui-monospace,Consolas,monospace}.CsvUpload-file-count{color:var(--color-text-secondary);font-size:12px}.CsvUpload-file-remove{border-radius:var(--radius);width:22px;height:22px;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;font-size:15px;transition:color .15s,background .15s;display:flex}.CsvUpload-file-remove:hover{color:var(--color-danger);background:#301414}.CsvUpload-placeholder{color:var(--color-text-secondary);font-size:14px}.CsvUpload-filename{color:var(--color-primary);font-family:ui-monospace,Consolas,monospace;font-size:14px}.CsvUpload-button{padding:var(--spacing-sm) var(--spacing-xl);border-radius:var(--radius);background:var(--color-primary);color:#000;border:none;align-self:flex-start;font-size:14px;font-weight:500;transition:background .15s}.CsvUpload-button:hover:not(:disabled){background:var(--color-primary-hover)}.CsvUpload-button:disabled{opacity:.4;cursor:not-allowed}.CsvUpload-data-header{justify-content:space-between;align-items:baseline;display:flex}.CsvUpload-row-count{color:var(--color-text-secondary);font-size:13px}.CsvUpload-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius);overflow-x:auto}.CsvUpload-table-wrap--expanded{max-height:400px;overflow-y:auto}.CsvUpload-table{border-collapse:collapse;white-space:nowrap;width:100%;font-family:ui-monospace,Consolas,monospace;font-size:12px}.CsvUpload-table th,.CsvUpload-table td{border-bottom:1px solid var(--color-border);text-align:right;padding:6px 10px}.CsvUpload-table th{text-align:right;color:var(--color-text-secondary);background:var(--color-bg);font-size:11px;font-weight:600;position:sticky;top:0}.CsvUpload-table tbody tr:last-child td{border-bottom:none}.CsvUpload-table th.CsvUpload-cell--param{color:var(--color-primary)}.CsvUpload-table th.CsvUpload-cell--spi{color:#c084fc}.CsvUpload-expand{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius);color:var(--color-text-secondary);background:0 0;border:none;align-self:center;font-size:13px;transition:color .15s}.CsvUpload-expand:hover{color:var(--color-primary)}.CsvUpload-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);white-space:pre-wrap;background:#301414;font-size:13px}.BoxPlot{gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg);border:1px solid #ffffff26;border-radius:10px;flex-direction:column;display:flex}.BoxPlot-header{align-items:baseline;gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.BoxPlot-spi{color:#c084fc;margin-right:var(--spacing-sm);font-family:ui-monospace,Consolas,monospace;font-size:14px;font-weight:600}.BoxPlot-stat-label{color:var(--color-text-secondary);margin-left:var(--spacing-sm);font-size:11px}.BoxPlot-stat-value{color:var(--color-text);font-family:ui-monospace,Consolas,monospace;font-size:13px}.BoxPlot-svg{width:100%;height:auto}.BoxPlot-label{fill:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:9px}.BoxPlot-label-muted{fill:#666}.BoxPlot-est-label{fill:#fff;font-family:ui-monospace,Consolas,monospace;font-size:9px}.BoxPlot-ucb-label{fill:#7cb8ff;font-family:ui-monospace,Consolas,monospace;font-size:9px}.BoxPlot-caption{fill:var(--color-text-secondary);opacity:.55;font-family:ui-monospace,Consolas,monospace;font-size:6.5px}.BoxPlot-break-knockout{fill:var(--color-bg)}.BoxPlot-break-mark{stroke:var(--color-text-secondary);stroke-width:1px;stroke-linecap:round}.BootstrapCard{padding:var(--spacing-xl);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #7cb8ff99;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.BootstrapCard h3{margin:0;font-size:16px;font-weight:600}.BootstrapCard-header{justify-content:space-between;align-items:center;display:flex}.BootstrapCard-run{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);color:#c084fc;background:0 0;border:1px solid #c084fc99;font-size:13px;font-weight:500;transition:box-shadow .15s,border-color .15s,color .15s;position:relative;overflow:hidden;box-shadow:0 0 8px #c084fc33,inset 0 0 8px #c084fc0d}.BootstrapCard-run-fill{transform-origin:0;background:#c084fc26;position:absolute;inset:0;transform:scaleX(0)}.BootstrapCard-run--loading .BootstrapCard-run-fill{animation:8s cubic-bezier(.3,0,.1,1) forwards boot-fill}@keyframes boot-fill{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}.BootstrapCard-run-text{z-index:1;position:relative}.BootstrapCard-run:hover:not(:disabled){color:#d4a8fd;border-color:#c084fce6;box-shadow:0 0 12px #c084fc59,inset 0 0 10px #c084fc14}.BootstrapCard-run:disabled{cursor:not-allowed}.BootstrapCard-run--loading{color:#d4a8fd;border-color:#c084fccc}.BootstrapCard-params{gap:var(--spacing-md);display:flex}.BootstrapCard-thresholds{gap:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px dashed var(--color-border);flex-wrap:wrap;display:flex}.BootstrapCard-param{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:12px;display:flex}.BootstrapCard-param input{width:100px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);font-family:ui-monospace,Consolas,monospace;font-size:13px}.BootstrapCard-param input:focus{border-color:#c084fc;outline:none}.BootstrapCard-empty{color:var(--color-text-secondary);font-size:14px}.BootstrapCard-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);background:#301414;font-size:13px}.BootstrapCard-results{gap:var(--spacing-lg);flex-direction:column;display:flex}.BootstrapCard-info,.BootstrapCard-advanced{color:var(--color-text-secondary);font-size:12px}.BootstrapCard-advanced>summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--spacing-xs) 0}.BootstrapCard-advanced[open]>summary{margin-bottom:var(--spacing-xs)}.BootstrapCard-toggle{align-items:center;gap:var(--spacing-xs);padding-left:var(--spacing-sm);display:flex}.BootstrapCard-toggle-hint{color:var(--color-text-secondary);opacity:.75}.SimEstimatorCard{padding:var(--spacing-xl);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #ff808099;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 0 8px #ff80804d,0 0 25px #ff808026,inset 0 0 8px #ff80800d}.SimEstimatorCard h3{margin:0;font-size:16px;font-weight:600}.SimEstimatorCard-header{justify-content:space-between;align-items:center;display:flex}.SimEstimatorCard-warning{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--color-danger);border-radius:var(--radius);background:#2a0e0e;animation:1.8s ease-in-out infinite sim-warn-pulse;display:flex;box-shadow:0 0 14px #ff808059,inset 0 0 10px #ff808014}@keyframes sim-warn-pulse{0%,to{box-shadow:0 0 14px #ff808059,inset 0 0 10px #ff808014}50%{box-shadow:0 0 22px #ff808099,inset 0 0 14px #ff808026}}.SimEstimatorCard-warning-icon{flex-shrink:0;font-size:26px;line-height:1.1}.SimEstimatorCard-warning-text{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:13px;line-height:1.45;display:flex}.SimEstimatorCard-warning-text strong{color:var(--color-danger);letter-spacing:.02em;font-size:14px}.SimEstimatorCard-warning-text em{color:var(--color-text);font-style:normal;font-weight:600}.SimEstimatorCard-run{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);color:var(--color-danger);background:0 0;border:1px solid #ff808099;font-size:13px;font-weight:500;transition:box-shadow .15s,border-color .15s,color .15s;position:relative;overflow:hidden;box-shadow:0 0 8px #ff808033,inset 0 0 8px #ff80800d}.SimEstimatorCard-run-fill{transform-origin:0;background:#ff808026;position:absolute;inset:0;transform:scaleX(0)}.SimEstimatorCard-run--loading .SimEstimatorCard-run-fill{animation:8s cubic-bezier(.3,0,.1,1) forwards sim-boot-fill}@keyframes sim-boot-fill{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}.SimEstimatorCard-run-text{z-index:1;position:relative}.SimEstimatorCard-run:hover:not(:disabled){color:#ffb0b0;border-color:#ff8080e6;box-shadow:0 0 12px #ff808059,inset 0 0 10px #ff808014}.SimEstimatorCard-run:disabled{cursor:not-allowed}.SimEstimatorCard-run--loading{color:#ffb0b0;border-color:#ff8080cc}.SimEstimatorCard-params{gap:var(--spacing-md);display:flex}.SimEstimatorCard-thresholds{gap:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px dashed var(--color-border);flex-wrap:wrap;display:flex}.SimEstimatorCard-param{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:12px;display:flex}.SimEstimatorCard-param input{width:100px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);font-family:ui-monospace,Consolas,monospace;font-size:13px}.SimEstimatorCard-param input:focus{border-color:var(--color-danger);outline:none}.SimEstimatorCard-empty{color:var(--color-text-secondary);font-size:14px}.SimEstimatorCard-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);background:#301414;font-size:13px}.SimEstimatorCard-results{gap:var(--spacing-lg);flex-direction:column;display:flex}.SimEstimatorCard-info{color:var(--color-text-secondary);font-size:12px}.SimEstimatorCard-info-warn{color:var(--color-danger);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.ScatterPlot{align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.ScatterPlot-titlebar{align-items:baseline;gap:var(--spacing-md);display:flex}.ScatterPlot-title{color:#c084fc;margin:0;font-family:ui-monospace,Consolas,monospace;font-size:14px;font-weight:600}.ScatterPlot-rho{color:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:13px}.ScatterPlot-svg{width:100%;max-width:400px;height:auto}.ScatterPlot-tick{fill:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:13px}.ScatterPlot-axis-label{fill:var(--color-text);font-size:16px;font-weight:500}.PairingCard{padding:var(--spacing-xl);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #7cb8ff99;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.PairingCard h3{margin:0;font-size:16px;font-weight:600}.PairingCard-header{justify-content:space-between;align-items:center;display:flex}.PairingCard-refresh{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius);color:#c084fc;background:0 0;border:1px solid #c084fc99;font-size:12px;font-weight:500;transition:box-shadow .15s,border-color .15s;box-shadow:0 0 6px #c084fc26}.PairingCard-refresh:hover:not(:disabled){border-color:#c084fce6;box-shadow:0 0 10px #c084fc4d}.PairingCard-refresh:disabled{opacity:.5;cursor:not-allowed}.PairingCard-empty{color:var(--color-text-secondary);font-size:14px}.PairingCard-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);background:#301414;font-size:13px}.PairingCard-stats{align-items:baseline;gap:var(--spacing-xl);display:flex}.PairingCard-stat{align-items:baseline;gap:var(--spacing-sm);display:flex}.PairingCard-stat-value{color:#c084fc;font-size:24px;font-weight:700}.PairingCard-stat-label{color:var(--color-text-secondary);font-size:14px}.PairingCard-stat-detail{color:var(--color-text-secondary);font-size:13px}.PairingCard-plots{gap:var(--spacing-lg);flex-wrap:wrap;justify-content:center;display:flex}.ComparisonPlot{gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg);border:1px solid #ffffff26;border-radius:10px;flex-direction:column;display:flex}.ComparisonPlot-header{align-items:baseline;gap:var(--spacing-lg);display:flex}.ComparisonPlot-spi{color:#c084fc;font-family:ui-monospace,Consolas,monospace;font-size:14px;font-weight:600}.ComparisonPlot-reduction{color:var(--color-success);font-size:12px;font-weight:500}.ComparisonPlot-svg{width:100%;height:auto}.ComparisonPlot-label{fill:var(--color-text-secondary);font-size:11px}.ComparisonPlot-tick{fill:#666;font-family:ui-monospace,Consolas,monospace;font-size:9px}.ComparisonPlot-est-label{fill:#fff;font-family:ui-monospace,Consolas,monospace;font-size:9px}.ComparisonPlot-ucb-label{font-family:ui-monospace,Consolas,monospace;font-size:9px}.ComparisonPlot-caption{fill:var(--color-text-secondary);opacity:.55;font-family:ui-monospace,Consolas,monospace;font-size:6.5px}.ComparisonPlot-stats{gap:var(--spacing-sm);margin-top:var(--spacing-xs);flex-direction:column;display:flex}.ComparisonPlot-stat-row{align-items:center;gap:var(--spacing-md);font-size:12px;display:flex}.ComparisonPlot-stat-color{border-radius:2px;flex-shrink:0;width:10px;height:10px}.ComparisonPlot-stat-name{color:var(--color-text-secondary);flex-shrink:0;width:150px}.ComparisonPlot-mcf-detail{opacity:.8;font-size:11px}.ComparisonPlot-mcf-skipped{opacity:.7;font-size:11px;font-style:italic}.ComparisonPlot-stat-val{color:var(--color-text);margin-right:var(--spacing-md);font-family:ui-monospace,Consolas,monospace}.ComparisonPlot-stat-ghost{opacity:.7;font-style:italic}.ComparisonPlot-break-knockout{fill:var(--color-bg)}.ComparisonPlot-break-mark{stroke:var(--color-text-secondary);stroke-width:1px;stroke-linecap:round}.WhatIfPanel{gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px dashed var(--color-border);flex-direction:column;display:flex}.WhatIfPanel-toggle{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0;color:var(--color-text);cursor:pointer;-webkit-user-select:none;user-select:none;text-align:left;background:0 0;border:none;font-size:13px;font-weight:500;display:flex}.WhatIfPanel-toggle:hover{color:#c084fc}.WhatIfPanel-caret{width:12px;color:var(--color-text-secondary);font-size:10px;display:inline-block}.WhatIfPanel-body{gap:var(--spacing-md);flex-direction:column;padding-left:20px;display:flex}.WhatIfPanel-disclosure{color:var(--color-text-secondary);font-size:12px;font-style:italic}.WhatIfPanel-controls{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.WhatIfPanel-precision{border-radius:var(--radius);border:1px solid #c084fc59;display:inline-flex;overflow:hidden}.WhatIfPanel-precision button{padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;font-size:13px;transition:background .15s,color .15s}.WhatIfPanel-precision button+button{border-left:1px solid #c084fc59}.WhatIfPanel-precision button:hover{color:#d4a8fd}.WhatIfPanel-precision button.is-active{color:#d4a8fd;background:#c084fc2e}.WhatIfPanel-info{width:22px;height:22px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:15px;line-height:1;transition:color .15s,background .15s;display:inline-flex}.WhatIfPanel-info:hover,.WhatIfPanel-info[aria-expanded=true]{color:#d4a8fd;background:#c084fc24}.WhatIfPanel-info-note{color:var(--color-text-secondary);border-radius:var(--radius);padding:var(--spacing-sm) var(--spacing-md);background:#c084fc14;border:1px solid #c084fc40;font-size:12px;line-height:1.5}.WhatIfPanel-info-note ul{margin:var(--spacing-xs) 0;padding-left:1.2em}.WhatIfPanel-info-note li{margin:2px 0}.WhatIfPanel-info-note strong{color:var(--color-text-primary)}.WhatIfPanel-compute{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:#c084fc;cursor:pointer;background:0 0;border:1px solid #c084fc99;align-self:flex-start;font-size:13px;transition:border-color .15s,color .15s,box-shadow .15s}.WhatIfPanel-compute:hover{color:#d4a8fd;border-color:#c084fce6;box-shadow:0 0 8px #c084fc4d}.WhatIfPanel-progress{gap:var(--spacing-xs);flex-direction:column;max-width:400px;display:flex}.WhatIfPanel-progress progress{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);width:100%;height:8px}.WhatIfPanel-progress progress::-webkit-progress-bar{background:var(--color-bg);border-radius:var(--radius)}.WhatIfPanel-progress progress::-webkit-progress-value{border-radius:var(--radius);background:#c084fc;transition:width .2s}.WhatIfPanel-progress progress::-moz-progress-bar{border-radius:var(--radius);background:#c084fc}.WhatIfPanel-progress-label{color:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:12px}.WhatIfPanel-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);background:#301414;font-size:13px}.WhatIfPanel-sliders{gap:var(--spacing-sm);flex-direction:column;max-width:480px;display:flex}.WhatIfPanel-slider-row{align-items:center;gap:var(--spacing-md);grid-template-columns:130px 1fr;display:grid}.WhatIfPanel-slider-label{color:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:12px}.WhatIfPanel-slider-value{margin-left:var(--spacing-xs);color:var(--color-text);font-weight:500;display:inline-block}.WhatIfPanel-slider-row input[type=range]{accent-color:#c084fc;width:100%}.WhatIfPanel-exact{gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px dashed var(--color-border);flex-direction:column;max-width:600px;display:flex}.WhatIfPanel-exact-header{color:var(--color-text);flex-direction:column;gap:2px;font-size:12px;display:flex}.WhatIfPanel-exact-hint{color:var(--color-text-secondary);font-size:11px;font-style:italic}.WhatIfPanel-exact-row{align-items:flex-end;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.WhatIfPanel-exact-field{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:12px;display:flex}.WhatIfPanel-exact-field input{width:110px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:ui-monospace,Consolas,monospace;font-size:13px}.WhatIfPanel-exact-field input:focus{border-color:#c084fc;outline:none}.WhatIfPanel-exact-button{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:#c084fc;cursor:pointer;background:0 0;border:1px solid #c084fc99;align-self:flex-end;font-size:13px;transition:border-color .15s,color .15s,box-shadow .15s}.WhatIfPanel-exact-button:hover:not(:disabled){color:#d4a8fd;border-color:#c084fce6;box-shadow:0 0 8px #c084fc4d}.WhatIfPanel-exact-button:disabled{opacity:.5;cursor:not-allowed}.WhatIfPanel-exact-results{gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px dashed var(--color-border);border-radius:var(--radius);flex-direction:column;font-family:ui-monospace,Consolas,monospace;font-size:12px;display:flex}.WhatIfPanel-exact-results-caption{color:var(--color-text-secondary)}.WhatIfPanel-exact-result{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.WhatIfPanel-exact-result-spi{color:#c084fc;min-width:180px;font-weight:500}.WhatIfPanel-exact-result-val{color:var(--color-text)}.WhatIfPanel-exact-result-skipped{color:var(--color-text-secondary);font-style:italic}.CVCard{padding:var(--spacing-xl);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #7cb8ff99;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.CVCard h3{margin:0;font-size:16px;font-weight:600}.CVCard-header{justify-content:space-between;align-items:center;display:flex}.CVCard-run{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);color:#c084fc;background:0 0;border:1px solid #c084fc99;font-size:13px;font-weight:500;transition:box-shadow .15s,border-color .15s,color .15s;position:relative;overflow:hidden;box-shadow:0 0 8px #c084fc33,inset 0 0 8px #c084fc0d}.CVCard-run-fill{transform-origin:0;background:#c084fc26;position:absolute;inset:0;transform:scaleX(0)}.CVCard-run--loading .CVCard-run-fill{animation:10s cubic-bezier(.3,0,.1,1) forwards cv-fill}@keyframes cv-fill{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}.CVCard-run-text{z-index:1;position:relative}.CVCard-run:hover:not(:disabled){color:#d4a8fd;border-color:#c084fce6;box-shadow:0 0 12px #c084fc59,inset 0 0 10px #c084fc14}.CVCard-run:disabled{cursor:not-allowed;opacity:.45}.CVCard-run--loading{color:#d4a8fd;border-color:#c084fccc}.CVCard-params{gap:var(--spacing-md);display:flex}.CVCard-thresholds{gap:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px dashed var(--color-border);flex-wrap:wrap;display:flex}.CVCard-param{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:12px;display:flex}.CVCard-param input{width:100px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:ui-monospace,Consolas,monospace;font-size:13px}.CVCard-param input:focus{border-color:#c084fc;outline:none}.CVCard-empty{color:var(--color-text-secondary);font-size:14px}.CVCard-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);background:#301414;font-size:13px}.CVCard-notice{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-text);background:#c084fc12;border:1px solid #c084fc66;font-size:13px;line-height:1.5}.CVCard-notice-link{color:var(--color-primary);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.CVCard-notice-link:hover{color:var(--color-primary-hover)}.CVCard-results{gap:var(--spacing-lg);flex-direction:column;display:flex}.CVCard-info,.CVCard-advanced{color:var(--color-text-secondary);font-size:12px}.CVCard-advanced>summary{cursor:pointer;-webkit-user-select:none;user-select:none;padding:var(--spacing-xs) 0}.CVCard-advanced[open]>summary{margin-bottom:var(--spacing-xs)}.CVCard-toggle{align-items:center;gap:var(--spacing-xs);padding-left:var(--spacing-sm);display:flex}.CVCard-toggle-hint{color:var(--color-text-secondary);opacity:.75}.MiniDist{position:relative}.MiniDist-clickable{cursor:pointer}.MiniDist-curve-wrap{border-radius:4px;flex-direction:column;gap:2px;transition:background .15s;display:flex}.MiniDist-curve-wrap:hover{background:#7cb8ff0f}.MiniDist-svg{width:100%;height:24px;display:block}.MiniDist-cond-tag{color:var(--color-primary);opacity:.5;font-family:ui-monospace,Consolas,monospace;font-size:9px}.MiniDist-vis{border-radius:4px;height:24px;transition:background .15s}.MiniDist-vis:hover{background:#7cb8ff14}.MiniDist-vis--empty{border:1px dashed #ffffff1a;justify-content:center;align-items:center;display:flex}.MiniDist-vis--empty:hover{background:#7cb8ff0d;border-color:#7cb8ff4d}.MiniDist-vis--conditional{border:1px dashed #7cb8ff33;justify-content:center;align-items:center;display:flex}.MiniDist-empty-label{color:var(--color-text-secondary);opacity:.5;font-size:10px}.MiniDist-conditional-label{color:var(--color-primary);opacity:.6;font-family:ui-monospace,Consolas,monospace;font-size:10px}.MiniDist-popover{z-index:10;padding:var(--spacing-md);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #7cb8ff66;border-radius:8px;flex-direction:column;margin-top:4px;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 4px 20px #00000080,0 0 10px #7cb8ff1a}.MiniDist-section{gap:var(--spacing-xs);flex-direction:column;display:flex}.MiniDist-section-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);font-size:10px;font-weight:600}.MiniDist-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font-size:12px}.MiniDist-select:focus{border-color:var(--color-primary);outline:none}.MiniDist-fields{gap:var(--spacing-sm);display:flex}.MiniDist-fields label{color:var(--color-text-secondary);flex-direction:column;flex:1;gap:2px;font-size:10px;display:flex}.MiniDist-fields input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;width:100%;font-family:ui-monospace,Consolas,monospace;font-size:12px}.MiniDist-fields input:focus{border-color:var(--color-primary);outline:none}.MiniDist-save{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius);color:var(--color-primary);background:0 0;border:1px solid #7cb8ff80;align-self:flex-end;font-size:11px;font-weight:500;transition:background .15s}.MiniDist-save:hover{background:#7cb8ff1a}.EditableRange{color:var(--color-text-secondary);white-space:nowrap;cursor:pointer;border-radius:4px;padding:2px 6px;font-family:ui-monospace,Consolas,monospace;font-size:12px;transition:background .15s}.EditableRange:hover{color:var(--color-text);background:#7cb8ff1a}.EditableRange-edit{align-items:center;gap:4px;display:flex}.EditableRange-input{background:var(--color-bg);width:80px;color:var(--color-text);text-align:right;border:1px solid #7cb8ff66;border-radius:4px;padding:2px 6px;font-family:ui-monospace,Consolas,monospace;font-size:12px}.EditableRange-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 4px #7cb8ff33}.EditableRange-sep{color:var(--color-text-secondary);font-size:12px}.FormulaDist{position:relative}.FormulaDist-clickable{cursor:pointer;border-radius:4px;flex-direction:column;gap:2px;transition:background .15s;display:flex}.FormulaDist-clickable:hover{background:#7cb8ff0f}.FormulaDist-svg{border-radius:4px;width:100%;height:24px;display:block}.FormulaDist-text{color:var(--color-primary);opacity:.5;font-family:ui-monospace,Consolas,monospace;font-size:10px}.FormulaDist-popover{z-index:10;padding:var(--spacing-md);background:var(--color-surface);gap:var(--spacing-sm);border:1px solid #7cb8ff66;border-radius:8px;flex-direction:column;margin-top:4px;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 4px 20px #00000080,0 0 10px #7cb8ff1a}.FormulaDist-popover-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);font-size:10px;font-weight:600}.FormulaDist-input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:ui-monospace,Consolas,monospace;font-size:12px}.FormulaDist-input:focus{border-color:var(--color-primary);outline:none}.FormulaDist-save{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius);color:var(--color-primary);background:0 0;border:1px solid #7cb8ff80;align-self:flex-end;font-size:11px;font-weight:500;transition:background .15s}.FormulaDist-save:hover{background:#7cb8ff1a}.SampleParamsCard{padding:var(--spacing-xl);background:var(--color-surface);gap:var(--spacing-md);border:1px solid #7cb8ff99;border-radius:12px;flex-direction:column;min-width:0;display:flex;box-shadow:0 0 8px #7cb8ff4d,0 0 25px #7cb8ff26,inset 0 0 8px #7cb8ff0d}.SampleParamsCard h3{margin:0;font-size:16px;font-weight:600}.SampleParamsCard-header{justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.SampleParamsCard-title{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.SampleParamsCard-source{align-items:center;gap:var(--spacing-sm);display:inline-flex}.SampleParamsCard-source-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);font-size:11px}.SampleParamsCard-source-toggle{border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;display:inline-flex;overflow:hidden}.SampleParamsCard-source-opt{color:var(--color-text-secondary);background:0 0;border:none;padding:3px 12px;font-size:11px;font-weight:500;transition:background .15s,color .15s}.SampleParamsCard-source-opt:hover:not(:disabled):not(.is-active){color:var(--color-text)}.SampleParamsCard-source-opt.is-active{color:var(--color-primary);background:#7cb8ff26}.SampleParamsCard-source-opt:disabled{opacity:.4;cursor:not-allowed}.SampleParamsCard-run{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);color:#c084fc;background:0 0;border:1px solid #c084fc99;font-size:13px;font-weight:500;transition:box-shadow .15s,border-color .15s,color .15s;position:relative;overflow:hidden;box-shadow:0 0 8px #c084fc33,inset 0 0 8px #c084fc0d}.SampleParamsCard-run-fill{transform-origin:0;background:#c084fc26;position:absolute;inset:0;transform:scaleX(0)}.SampleParamsCard-run--loading .SampleParamsCard-run-fill{animation:3s cubic-bezier(.3,0,.1,1) forwards sample-fill}@keyframes sample-fill{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}.SampleParamsCard-run-text{z-index:1;position:relative}.SampleParamsCard-run:hover:not(:disabled){color:#d4a8fd;border-color:#c084fce6;box-shadow:0 0 12px #c084fc59,inset 0 0 10px #c084fc14}.SampleParamsCard-run:disabled{cursor:not-allowed;opacity:.55}.SampleParamsCard-run--loading{color:#d4a8fd;border-color:#c084fccc}.SampleParamsCard-hint{color:var(--color-text-secondary);margin:0;font-size:12px}.SampleParamsCard-params{gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end;display:flex}.SampleParamsCard-param{gap:var(--spacing-xs);color:var(--color-text-secondary);flex-direction:column;font-size:12px;display:flex}.SampleParamsCard-param input{width:140px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font-family:ui-monospace,Consolas,monospace;font-size:13px}.SampleParamsCard-param input:focus{border-color:#c084fc;outline:none}.SampleParamsCard-param--wide{flex:320px}.SampleParamsCard-param--wide input{width:100%}.SampleParamsCard-error{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);color:var(--color-danger);white-space:pre-wrap;background:#301414;font-size:13px}.SampleParamsCard-result{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font-size:13px}.SampleParamsCard-path{color:var(--color-primary);font-family:ui-monospace,Consolas,monospace}.SampleParamsCard-seed{color:var(--color-text-secondary);font-size:12px}.FitPanel{gap:var(--spacing-lg);flex-direction:column;display:flex}.FitPanel-source{color:var(--color-text-secondary);justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;font-size:13px;display:flex}.FitPanel-source-ok strong{color:var(--color-text)}.FitPanel-upload{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.FitPanel-run{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius);color:#c084fc;background:0 0;border:1px solid #c084fc99;font-size:13px;font-weight:500;transition:box-shadow .15s,border-color .15s,color .15s;position:relative;overflow:hidden;box-shadow:0 0 8px #c084fc33,inset 0 0 8px #c084fc0d}.FitPanel-run-fill{transform-origin:0;background:#c084fc26;position:absolute;inset:0;transform:scaleX(0)}.FitPanel-run--loading .FitPanel-run-fill{animation:3s cubic-bezier(.3,0,.1,1) forwards fit-fill}@keyframes fit-fill{0%{transform:scaleX(0)}to{transform:scaleX(.92)}}.FitPanel-run-text{z-index:1;position:relative}.FitPanel-run:hover:not(:disabled){color:#d4a8fd;border-color:#c084fce6;box-shadow:0 0 12px #c084fc59,inset 0 0 10px #c084fc14}.FitPanel-run:disabled{cursor:not-allowed;opacity:.55}.FitPanel-run--loading{color:#d4a8fd;border-color:#c084fccc}.FitPanel-btn-secondary{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text-secondary)}.FitPanel-btn-secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-text)}.FitPanel-error{color:var(--color-danger);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius);background:#301414;font-size:13px}.FitPanel-warn{color:#f0d8a8;border-radius:var(--radius);padding:var(--spacing-sm) var(--spacing-md);background:#b4821e1a;border:1px solid #c8962873;font-size:13px;line-height:1.5}.FitPanel-warn strong{color:#ffcf7a}.FitPanel-warn ul{margin:var(--spacing-xs) 0 0;padding-left:var(--spacing-lg);font-family:ui-monospace,Consolas,monospace;font-size:12px}.FitPanel-explain-link{color:var(--color-primary);width:fit-content;font-size:12px;text-decoration:none}.FitPanel-explain-link:hover{text-decoration:underline}.FitPanel-source-left{align-items:baseline;gap:var(--spacing-md);flex-wrap:wrap;display:inline-flex}.FitPanel-method-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.FitPanel-method-link:hover{text-decoration:underline}.FitPanel-modal-backdrop{z-index:100;padding:var(--spacing-lg);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.FitPanel-modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;width:100%;max-width:540px;max-height:85vh;overflow-y:auto;box-shadow:0 12px 48px #0000008c}.FitPanel-modal-head{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.FitPanel-modal-head h3{margin:0;font-size:16px;font-weight:600}.FitPanel-modal-close{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:22px;line-height:1}.FitPanel-modal-close:hover{color:var(--color-text)}.FitPanel-modal-body{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;display:flex}.FitPanel-modal-body section{gap:var(--spacing-sm);flex-direction:column;display:flex}.FitPanel-modal-body h4{letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary);margin:0;font-size:11px;font-weight:600}.FitPanel-modal-body ol{padding-left:var(--spacing-lg);gap:var(--spacing-sm);color:var(--color-text);flex-direction:column;margin:0;font-size:13px;line-height:1.55;display:flex}.FitPanel-modal-body a{color:var(--color-primary);text-decoration:none}.FitPanel-modal-body a:hover{text-decoration:underline}.FitPanel-graph-legend{gap:var(--spacing-md);color:var(--color-text-secondary);flex-wrap:wrap;font-size:11px;display:flex}.FitPanel-graph-legend>span{align-items:center;gap:var(--spacing-xs);display:inline-flex}.FitPanel-edge-key{width:20px;height:0;display:inline-block}.FitPanel-edge-key.solid{border-top:2px solid #7cb8ff}.FitPanel-edge-key.dashed{border-top:2px dashed #7cb8ff}.FitPanel-edge-key.dotted{opacity:.55;border-top:2px dotted #7cb8ff}.FitPanel-section{gap:var(--spacing-sm);border-top:1px solid var(--color-border);padding-top:var(--spacing-md);flex-direction:column;display:flex}.FitPanel-section h3{margin:0;font-size:15px;font-weight:600}.FitPanel-note{color:var(--color-text-secondary);font-size:12px}.FitPanel-params{gap:var(--spacing-md);flex-direction:column;list-style:none;display:flex}.FitPanel-param{gap:var(--spacing-xs);background:var(--color-bg);padding:var(--spacing-sm) 12px;border-radius:6px;flex-direction:column;display:flex}.FitPanel-param-head{justify-content:space-between;align-items:baseline;gap:var(--spacing-md);display:flex}.FitPanel-param-name{font-family:ui-monospace,Consolas,monospace;font-size:13px}.FitPanel-param-range{color:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:12px}.FitPanel-curve{background:0 0;width:100%;height:42px;display:block}.FitPanel-cond-expand{margin-top:var(--spacing-xs)}.FitPanel-cond-expand>summary{cursor:pointer;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;font-size:12px}.FitPanel-cond-expand[open]>summary{margin-bottom:var(--spacing-xs);color:var(--color-text)}.FitPanel-cond-expand .FitPanel-note{margin-bottom:var(--spacing-xs)}.FitPanel-heat-svg{width:272px;max-width:100%;height:auto;display:block}.FitPanel-heat-bg{fill:#11161d}.FitPanel-heat-frame{fill:none;stroke:#ffffff1f;stroke-width:1px}.FitPanel-heat-dot{fill:#ffffff8c}.FitPanel-heat-axis{fill:var(--color-text-secondary);font-family:ui-monospace,Consolas,monospace;font-size:9px}.FitPanel-heat-tick{fill:var(--color-text-secondary);opacity:.7;font-family:ui-monospace,Consolas,monospace;font-size:8px}.FitPanel-diag{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--spacing-sm) var(--spacing-md)}.FitPanel-diag>summary{cursor:pointer;color:var(--color-text-secondary);-webkit-user-select:none;user-select:none;font-size:13px}.FitPanel-diag[open]>summary{margin-bottom:var(--spacing-sm);color:var(--color-text)}.FitPanel-diag-body{gap:var(--spacing-lg);flex-direction:column;display:flex}.FitPanel-diag-body .FitPanel-section:first-child{border-top:none;padding-top:0}.FitPanel-legend{gap:5px var(--spacing-lg);margin:var(--spacing-xs) 0 var(--spacing-sm);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));padding:0;font-family:ui-monospace,Consolas,monospace;font-size:12px;list-style:none;display:grid}.FitPanel-legend li{align-items:center;gap:var(--spacing-sm);display:flex}.FitPanel-legend-dot{border-radius:50%;flex:none;width:9px;height:9px}.FitPanel-legend-idx{text-align:right;min-width:13px;color:var(--color-text)}.FitPanel-legend-name{color:var(--color-text-secondary)}.FitPanel-structure{gap:var(--spacing-lg);flex-wrap:wrap;align-items:flex-start;display:flex}.FitPanel-structure-item{gap:var(--spacing-xs);flex-direction:column;display:flex}.FitPanel-structure-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);font-size:11px;font-weight:600}.FitPanel-graph-svg{width:244px;height:244px}.FitPanel-graph-node{font-family:var(--font-body);font-size:12px;font-weight:700}.FitPanel-graph-edgelabel{fill:var(--color-text-secondary);paint-order:stroke;stroke:var(--color-surface);stroke-width:3px;stroke-linejoin:round;font-family:ui-monospace,Consolas,monospace;font-size:9px}.FitPanel-matrix{border-collapse:separate;border-spacing:3px;font-variant-numeric:tabular-nums;font-family:ui-monospace,Consolas,monospace;font-size:11px}.FitPanel-matrix th{width:26px;height:26px;color:var(--color-text-secondary);text-align:center;font-weight:500}.FitPanel-matrix td{text-align:center;width:36px;height:26px;color:var(--color-text);background:#1f1f1f;border-radius:4px}.FitPanel-matrix td.is-diag{background:#303030}.FitPanel-overlay-legend{align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:12px;display:flex}.FitPanel-swatch-line{vertical-align:middle;width:16px;height:0;margin-left:var(--spacing-sm);border-top:2px solid #9ecbff;display:inline-block}.FitPanel-swatch-bars{background:#8ca0b91f;border:1px solid #96aac380;border-radius:1px;width:16px;height:10px;display:inline-block}.FitPanel-hist-bar{fill:#8ca0b91f;stroke:#96aac380;stroke-width:1px}.FitPanel-vtable{border-collapse:collapse;font-variant-numeric:tabular-nums;font-family:ui-monospace,Consolas,monospace;font-size:13px}.FitPanel-vtable th,.FitPanel-vtable td{text-align:right;padding:4px 14px 4px 0}.FitPanel-vtable th:first-child,.FitPanel-vtable td:first-child{text-align:left}.FitPanel-vtable th{color:var(--color-text-secondary);font-weight:500;font-family:var(--font-body);border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-xs);font-size:12px}.FitPanel-activate-hint{border-top:1px solid var(--color-border);padding-top:var(--spacing-md)}.LoginPage{min-height:100vh;padding:var(--spacing-lg);justify-content:center;align-items:center;display:flex}.LoginPage-card{align-items:center;gap:var(--spacing-md);width:100%;max-width:360px;padding:var(--spacing-xl);border:1px solid var(--color-border);background:var(--color-bg);text-align:center;border-radius:12px;flex-direction:column;display:flex}.LoginPage-logo{width:auto;height:40px;margin-bottom:var(--spacing-sm)}.LoginPage-title{color:var(--color-text);margin:0;font-size:20px;font-weight:600}.LoginPage-subtitle{color:var(--color-text-secondary);margin:0;font-size:13px;line-height:1.5}.LoginPage-buttons{gap:var(--spacing-sm);margin-top:var(--spacing-sm);flex-direction:column;align-items:center;width:100%;display:flex}.LoginPage-provider{border:1px solid var(--color-border);border-radius:var(--radius);color:#1f1f1f;cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:10px;width:260px;padding:10px 18px;font-size:14px;font-weight:500;transition:box-shadow .15s,background .15s;display:inline-flex}.LoginPage-provider:hover{background:#f5f5f5;box-shadow:0 1px 4px #0000004d}.LoginPage-provider-icon{flex-shrink:0;width:18px;height:18px}.LoginPage-note{color:var(--color-text-secondary);opacity:.7;margin:var(--spacing-sm) 0 0;font-size:11px}.App{flex-direction:column;min-height:100vh;display:flex}.App-header{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-lg);display:flex;position:relative}.App-logo{width:auto;height:40px}.App-back{left:var(--spacing-lg);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-secondary);background:0 0;font-size:13px;transition:background .15s,color .15s;position:absolute}.App-back:hover{background:var(--color-surface);color:var(--color-text)}.App-user{right:var(--spacing-lg);align-items:center;gap:var(--spacing-sm);display:flex;position:absolute}.App-user-email{color:var(--color-text-secondary);font-size:12px}.App-logout{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text-secondary);cursor:pointer;background:0 0;font-size:13px;transition:background .15s,color .15s}.App-logout:hover{background:var(--color-surface);color:var(--color-text)}.App-main{padding:var(--spacing-xl) var(--spacing-lg);flex-direction:column;flex:1;justify-content:flex-start;width:100%;max-width:1100px;margin:0 auto;display:flex}.App-detail{gap:var(--spacing-lg);flex-direction:column;display:flex}
