:root{--bg: #fafafa;--surface: #fff;--border: #e0e0e0;--text: #212121;--text-secondary: #666;--primary: #1976d2;--signal: #d32f2f;--error: #c62828;--warning: #e65100;--radius: 6px;--mono: "SF Mono", "Fira Code", "JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}header{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 24px}header h1{font-size:1.3rem;font-weight:600}header h1 span{color:var(--text-secondary);font-weight:400;font-size:.9rem}.main-grid{display:grid;grid-template-columns:340px 1fr;gap:16px;padding:16px 24px;max-width:1280px;margin:0 auto}@media(max-width:820px){.main-grid{grid-template-columns:1fr}}.left-col,.right-col{display:flex;flex-direction:column;gap:16px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.panel h2{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.fill-selector{display:flex;flex-wrap:wrap;gap:4px}.fill-btn{padding:5px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);color:var(--text-secondary);font-size:.82rem;cursor:pointer;transition:all .15s}.fill-btn:hover{border-color:var(--primary);color:var(--primary)}.fill-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.param-form{display:flex;flex-direction:column;gap:8px}.field label,.field{font-size:.88rem}.field label{display:flex;align-items:center;justify-content:space-between;gap:8px}.field{display:flex;flex-direction:column;gap:2px}.field>.field-label{color:var(--text)}.field-label{min-width:90px}.field-input{display:inline-flex;align-items:center;gap:4px}.field input[type=number],.list-row input[type=number],.diel-edit input[type=number]{width:96px;padding:4px 7px;border:1px solid var(--border);border-radius:4px;font-size:.88rem;font-family:var(--mono);text-align:right}input[type=number]:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #1976d226}input.invalid{border-color:var(--error)!important;background:#fff5f5}.field-unit{color:var(--text-secondary);font-size:.8rem;min-width:26px}.field-issue{font-size:.78rem;padding:2px 0 0}.field-issue.error{color:var(--error)}.field-issue.warning{color:var(--warning)}.field-issue.info{color:var(--text-secondary);font-style:italic}select{padding:4px 6px;border:1px solid var(--border);border-radius:4px;background:var(--surface);font-size:.85rem;color:var(--text)}.select-field{flex-direction:row!important;align-items:center;justify-content:space-between}.checkbox-field{flex-direction:row!important;align-items:center;justify-content:flex-start;gap:6px}.diel-edit{display:inline-flex;gap:4px;align-items:center}.diel-edit select{max-width:110px}.diel-edit input{width:64px!important}.diel-edit.compact select{max-width:92px;font-size:.8rem}.diel-edit.compact input{width:58px!important;font-size:.8rem}.list-editor{display:flex;flex-direction:column;gap:4px;margin-top:4px}.list-head{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:var(--text-secondary)}.list-row{display:grid;grid-template-columns:64px 1fr 24px;gap:4px;align-items:center}.list-header-row{font-size:.72rem;color:var(--text-secondary)}.list-row .col-r{width:64px!important}.list-row .pinned{font-family:var(--mono);font-size:.82rem;color:var(--text-secondary);text-align:right;padding-right:6px}button.mini{width:22px;height:22px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text-secondary);font-size:.9rem;line-height:1;cursor:pointer}button.mini:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}button.mini.danger:hover:not(:disabled){border-color:var(--error);color:var(--error)}button.mini:disabled{opacity:.35;cursor:default}.results{display:flex;flex-direction:column;gap:10px}.result-block{border-left:3px solid var(--primary);padding-left:10px}.result-block.reference{border-left-color:#9e9e9e}.result-block.solving{opacity:.55}.result-head{display:flex;justify-content:space-between;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:2px}.result-row{display:flex;justify-content:space-between;font-size:.9rem}.result-row .result-value{font-family:var(--mono)}.result-row.muted{color:var(--text-secondary);font-size:.8rem}.status-line{font-size:.85rem;color:var(--text-secondary);padding:4px 0}.status-line.error{color:var(--error)}.status-line.info{font-style:italic}.status-line.muted{font-size:.78rem}.spinner-wrap{display:inline-flex;align-items:center;gap:6px}.spinner{width:12px;height:12px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.view-tabs{display:flex;gap:2px;margin-bottom:12px}.view-tab{padding:5px 12px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .15s}.view-tab:hover{border-color:var(--primary);color:var(--primary)}.view-tab.active{background:var(--primary);color:#fff;border-color:var(--primary)}.schematic svg{width:100%;max-height:520px;display:block}.schematic-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:.8rem;color:var(--text-secondary)}.legend-item{display:inline-flex;align-items:center;gap:5px}.legend-swatch{width:14px;height:14px;border-radius:3px;border:1px solid var(--border);display:inline-block}.field-view{display:flex;flex-direction:column;gap:10px}.field-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.field-controls .field{flex-direction:row;align-items:center;gap:6px}.field-stage{display:flex;gap:12px}.field-canvas-wrap{position:relative;flex:1}.field-canvas{width:100%;display:block;image-rendering:auto;background:repeating-conic-gradient(#f3f3f3 0% 25%,#fbfbfb 0% 50%) 0 0 / 16px 16px;border-radius:4px}.field-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.colorbar{display:flex;gap:4px}.colorbar-gradient{width:14px;border-radius:3px;border:1px solid var(--border)}.colorbar-labels{display:flex;flex-direction:column;justify-content:space-between;font-size:.72rem;font-family:var(--mono);color:var(--text-secondary)}.rlgc-panel{display:flex;flex-direction:column;gap:12px}.sweep-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px 20px}.sweep-controls input[type=number]{width:118px}.plot-grid-wrap{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.plot svg{width:100%;display:block}.plot-title{font-size:11px;font-weight:600;fill:var(--text)}.plot-tick{font-size:9px;fill:var(--text-secondary);font-family:var(--mono)}.plot-unit{font-weight:600}.plot-grid{stroke:#eee}.plot-frame{fill:none;stroke:var(--border)}.plot.empty{color:var(--text-secondary);font-size:.8rem;padding:20px}
