@import url(https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@300;400;500&family=IBM+Plex+Sans:wght@300;400;500;600&display=swap);body{-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg-0:#080b0f;--bg-1:#0d1117;--bg-2:#131920;--bg-3:#1a2330;--border:#1e2d3d;--border-bright:#2a3f55;--accent:#00d4ff;--accent-dim:#00a8cc;--accent-glow:#00d4ff1f;--green:#39d353;--green-dim:#2a9e3f;--amber:#f0a500;--red:#ff4757;--text-0:#e8edf2;--text-1:#a8bfd4;--text-2:#6a8299;--mono:"IBM Plex Mono",monospace;--sans:"IBM Plex Sans",sans-serif;--radius:4px;--panel-shadow:0 0 0 1px var(--border),0 8px 32px #0006;--bg-image-1:#00d4ff0a;--bg-image-2:#39d35308;--bg-primary:var(--bg-0);--bg-secondary:var(--bg-1);--bg-panel:var(--bg-2);--bg-input:var(--bg-2);--bg-card:var(--bg-3);--text-primary:var(--text-0);--text-secondary:var(--text-1);--text-muted:var(--text-2);--text-accent:var(--accent);--border-color:var(--border);--border-focus:var(--accent);--accent-cyan:#00d4ff;--accent-green:var(--green);--accent-yellow:var(--amber);--accent-red:var(--red);--plot-bg:var(--bg-1);--plot-text:#8ba3bb;--plot-grid:var(--border-bright);--plot-axis:var(--text-2)}:root[data-theme=light],body[data-theme=light]{--bg-0:#f0f4f8;--bg-1:#fff;--bg-2:#fff;--bg-3:#f8f9fa;--border:#dee2e6;--border-bright:#c4cbd4;--accent:#0052cc;--accent-dim:#003d99;--accent-glow:#0052cc14;--green:#28a745;--green-dim:#1e7e34;--amber:#ffc107;--red:#dc3545;--text-0:#1a1a2e;--text-1:#4a4a6a;--text-2:#6c757d;--panel-shadow:0 0 0 1px var(--border),0 4px 12px #0f172a0f;--bg-image-1:#0052cc08;--bg-image-2:#28a74508;--plot-bg:#fff;--plot-text:#1a1a2e;--plot-grid:#e0e0e0;--plot-axis:#4a4a6a;--accent-cyan:#0052cc}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#080b0f;background:var(--bg-0);background-image:radial-gradient(ellipse at 20% 0,#00d4ff0a 0,#0000 50%),radial-gradient(ellipse at 80% 100%,#39d35308 0,#0000 50%);background-image:radial-gradient(ellipse at 20% 0,var(--bg-image-1) 0,#0000 50%),radial-gradient(ellipse at 80% 100%,var(--bg-image-2) 0,#0000 50%);color:#e8edf2;color:var(--text-0);font-family:IBM Plex Sans,sans-serif;font-family:var(--sans);font-size:17px;line-height:1.5;transition:background-color .2s ease,color .2s ease}.app,body{min-height:100vh}.app{display:flex;flex-direction:column}.app-body{display:flex;flex:1 1;min-height:0;position:relative}.workspace{flex:1 1;min-width:0;padding-right:0;padding-right:var(--chat-width,0);transition:padding-right .2s ease}@media (max-width:1023px){.workspace{padding-right:0}}.main-layout{grid-gap:0;display:grid;gap:0;grid-template-columns:1fr;height:calc(100vh - 96px);overflow:hidden}.main-layout.with-rail{grid-template-columns:380px 1fr}.header{align-items:center;background:#0d1117;background:var(--bg-1);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);display:flex;gap:16px;height:56px;padding:0 24px;position:relative}.header-logo{align-items:baseline;display:flex;gap:6px}.header-logo-mark{color:#00d4ff;color:var(--accent);font-size:18px;font-weight:500;letter-spacing:-.5px}.header-logo-mark,.header-logo-sub{font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.header-logo-sub{color:#6a8299;color:var(--text-2);font-size:13px;letter-spacing:2px;text-transform:uppercase}.header-divider{background:#1e2d3d;background:var(--border);height:20px;width:1px}.header-tag{letter-spacing:1px;text-transform:uppercase}.header-status,.header-tag{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px}.header-status{align-items:center;display:flex;gap:8px;margin-left:auto}.status-dot{animation:pulse 2s infinite;background:#39d353;background:var(--green);border-radius:50%;box-shadow:0 0 6px #39d353;box-shadow:0 0 6px var(--green);height:6px;width:6px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.simulator-panel{background:#0d1117;background:var(--bg-1);border-right:1px solid #1e2d3d;border-right:1px solid var(--border);display:flex;flex-direction:column;overflow-y:auto}.simulator-panel::-webkit-scrollbar{width:4px}.simulator-panel::-webkit-scrollbar-track{background:#0000}.simulator-panel::-webkit-scrollbar-thumb{background:#2a3f55;background:var(--border-bright);border-radius:2px}.panel-section{border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);padding:16px 20px}.panel-section:last-child{border-bottom:none}.section-label{align-items:center;color:#6a8299;color:var(--text-2);display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;gap:8px;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.section-label:after{background:#1e2d3d;background:var(--border);content:"";flex:1 1;height:1px}.field{margin-bottom:12px}.field:last-child{margin-bottom:0}.field-label{align-items:center;color:#a8bfd4;color:var(--text-1);display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px;justify-content:space-between;margin-bottom:5px}.field-unit{color:#6a8299;color:var(--text-2);font-size:12px}.field-input{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#e8edf2;color:var(--text-0);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:14px;outline:none;padding:7px 10px;transition:border-color .15s,box-shadow .15s;width:100%}.field-input:focus{border-color:#00a8cc;border-color:var(--accent-dim);box-shadow:0 0 0 2px #00d4ff1f;box-shadow:0 0 0 2px var(--accent-glow)}.field-input::placeholder{color:#6a8299;color:var(--text-2)}select.field-input{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='m0 0 5 6 5-6z' fill='%234a6278'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;cursor:pointer;padding-right:28px}.field-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr}.toggle-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.toggle-label{color:#a8bfd4;color:var(--text-1);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px}.toggle{height:20px;position:relative;width:36px}.toggle input{height:0;opacity:0;width:0}.toggle-slider{background:#1a2330;background:var(--bg-3);border:1px solid #2a3f55;border:1px solid var(--border-bright);border-radius:10px;cursor:pointer;inset:0;position:absolute;transition:.2s}.toggle-slider:before{background:#6a8299;background:var(--text-2);border-radius:50%;content:"";height:14px;left:2px;position:absolute;top:2px;transition:.2s;width:14px}.toggle input:checked+.toggle-slider{background:#00d4ff1f;background:var(--accent-glow);border-color:#00a8cc;border-color:var(--accent-dim)}.toggle input:checked+.toggle-slider:before{background:#00d4ff;background:var(--accent);transform:translateX(16px)}.preset-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:1fr 1fr}.preset-btn{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#a8bfd4;color:var(--text-1);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px;line-height:1.3;padding:8px 10px;text-align:left;transition:all .15s}.preset-btn:hover{background:#1a2330;background:var(--bg-3);border-color:#00a8cc;border-color:var(--accent-dim);color:#e8edf2;color:var(--text-0)}.preset-btn.active{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent);color:#00d4ff;color:var(--accent)}.preset-name{display:block;font-weight:500}.preset-desc{color:#6a8299;color:var(--text-2);font-size:14px}.run-section{background:#0d1117;background:var(--bg-1);border-top:1px solid #1e2d3d;border-top:1px solid var(--border);bottom:0;margin-top:auto;padding:16px 20px;position:sticky}.run-btn{background:#0000;border:1px solid #00d4ff;border:1px solid var(--accent);border-radius:4px;border-radius:var(--radius);color:#00d4ff;color:var(--accent);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:1px;overflow:hidden;padding:12px;position:relative;text-transform:uppercase;transition:all .15s;width:100%}.run-btn:before{background:#00d4ff;background:var(--accent);content:"";inset:0;position:absolute;transform:translateX(-100%);transition:transform .2s;z-index:0}.run-btn:hover:before{transform:translateX(0)}.run-btn:hover{color:#080b0f;color:var(--bg-0)}.run-btn span{position:relative;z-index:1}.run-btn:disabled{border-color:#2a3f55;border-color:var(--border-bright);color:#6a8299;color:var(--text-2);cursor:not-allowed}.run-btn:disabled:before{display:none}.run-btn.loading{border-color:#f0a500;border-color:var(--amber);color:#f0a500;color:var(--amber)}.results-panel{background:#080b0f;background:var(--bg-0);display:flex;flex-direction:column;overflow-y:auto}.results-panel::-webkit-scrollbar{width:4px}.results-panel::-webkit-scrollbar-track{background:#0000}.results-panel::-webkit-scrollbar-thumb{background:#1e2d3d;background:var(--border);border-radius:2px}.empty-state{color:#6a8299;color:var(--text-2);flex:1 1;flex-direction:column;gap:12px;padding:40px}.empty-icon,.empty-state{align-items:center;display:flex;justify-content:center}.empty-icon{border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:50%;font-size:20px;height:48px;opacity:.5;width:48px}.empty-title{font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;letter-spacing:1px;text-transform:uppercase}.empty-sub{color:#6a8299;color:var(--text-2);font-size:12px;line-height:1.6;max-width:260px;text-align:center}.loading-state{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:20px;justify-content:center}.loading-bar-wrap{background:#1e2d3d;background:var(--border);border-radius:1px;height:2px;overflow:hidden;width:200px}.loading-bar{animation:loadingSlide 1.2s ease-in-out infinite;background:#00d4ff;background:var(--accent);border-radius:1px;height:100%}@keyframes loadingSlide{0%{transform:translateX(-100%);width:60%}to{transform:translateX(200%);width:60%}}.loading-text{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;letter-spacing:1px;text-transform:uppercase}.metrics-bar{border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);display:grid;grid-template-columns:repeat(4,1fr)}.metric-cell{border-right:1px solid #1e2d3d;border-right:1px solid var(--border);padding:16px 20px;transition:background .15s}.metric-cell:last-child{border-right:none}.metric-cell:hover{background:#131920;background:var(--bg-2)}.metric-name{color:#6a8299;color:var(--text-2);font-size:14px;letter-spacing:1.5px;margin-bottom:4px;text-transform:uppercase}.metric-name,.metric-value{font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.metric-value{color:#e8edf2;color:var(--text-0);font-size:24px;font-weight:300;letter-spacing:-.5px;line-height:1}.metric-value.highlight{color:#00d4ff;color:var(--accent)}.metric-unit{color:#6a8299;color:var(--text-2);font-size:15px;margin-left:3px}.secondary-metrics{background:#0d1117;background:var(--bg-1);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);display:grid;grid-template-columns:repeat(4,1fr)}.sec-metric{border-right:1px solid #1e2d3d;border-right:1px solid var(--border);padding:10px 20px}.sec-metric:last-child{border-right:none}.sec-name{color:#6a8299;color:var(--text-2);font-size:11px;letter-spacing:1px;text-transform:uppercase}.sec-name,.sec-value{font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.sec-value{color:#a8bfd4;color:var(--text-1);font-size:14px;margin-top:2px}.charts-area{grid-gap:0;display:grid;flex:1 1;gap:0;grid-template-columns:1fr 1fr}.chart-panel{border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);border-right:1px solid #1e2d3d;border-right:1px solid var(--border);padding:20px}.chart-panel:nth-child(2n){border-right:none}.chart-title{color:#a8bfd4;color:var(--text-1);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;letter-spacing:2px;margin-bottom:16px;text-transform:uppercase}.warnings-bar{align-items:flex-start;background:#f0a5000f;border-bottom:1px solid #f0a50033;display:flex;gap:8px;padding:8px 20px}.warn-icon{flex-shrink:0;margin-top:1px}.warn-icon,.warn-text{color:#f0a500;color:var(--amber);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px}.warn-text{line-height:1.5}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#1e2d3d!important;stroke:var(--border)!important}.recharts-text{fill:#6a8299!important;fill:var(--text-2)!important;font-family:IBM Plex Mono,monospace!important;font-family:var(--mono)!important;font-size:14px!important}.recharts-tooltip-wrapper{outline:none}.tab-bar{align-items:flex-end;background:#0d1117;background:var(--bg-1);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);gap:2px;padding:0 24px}.tab-bar,.tab-btn{display:flex;height:40px}.tab-btn{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#6a8299;color:var(--text-2);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:14px;gap:8px;letter-spacing:1px;padding:0 20px;position:relative;text-transform:uppercase;transition:color .15s,border-color .15s}.tab-btn:hover{color:#a8bfd4;color:var(--text-1)}.tab-btn.active{border-bottom:2px solid #00d4ff;border-bottom:2px solid var(--accent);color:#00d4ff;color:var(--accent)}.tab-badge{color:#39d353;color:var(--green);font-size:8px}.persistent-ai{background:#0d1117;background:var(--bg-1);border-left:1px solid #1e2d3d;border-left:1px solid var(--border);bottom:0;display:flex;flex-direction:column;font-family:IBM Plex Mono,monospace;font-family:var(--mono);position:fixed;right:0;top:96px;transition:width .18s ease;width:400px;z-index:10000}.persistent-ai.dragging{transition:none}@media (max-width:1023px){.persistent-ai{box-shadow:-8px 0 32px #00000059}}@media (max-width:767px){.persistent-ai{left:0;right:0;width:100vw!important}}.chat-resize-handle{background:#0000;bottom:0;cursor:ew-resize;left:-4px;position:absolute;top:0;transition:background .15s;width:8px;z-index:101}.chat-resize-handle.dragging,.chat-resize-handle:hover{background:#00d4ff1f;background:var(--accent-glow)}.chat-floating-icon{align-items:center;background:#00d4ff;background:var(--accent);border:none;border-radius:50%;bottom:24px;box-shadow:0 6px 20px #00000059,0 0 0 1px #0000001f;color:#080b0f;color:var(--bg-0);cursor:pointer;display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);height:56px;justify-content:center;position:fixed;right:24px;transition:transform .12s ease,box-shadow .12s ease;width:56px;z-index:10010}.chat-floating-icon:hover{box-shadow:0 8px 28px #0000006b,0 0 0 1px #0000001f;transform:scale(1.06)}.chat-overlay-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000040;bottom:0;display:none;left:0;pointer-events:none;position:fixed;right:0;top:96px;z-index:99}@media (min-width:768px) and (max-width:1023px){.persistent-ai+.chat-overlay-backdrop{display:block}}[data-theme=light] .chat-overlay-backdrop{background:#0f172a26}.chat-header{border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);justify-content:space-between;min-height:48px;padding:12px 16px}.chat-header,.chat-title{align-items:center;display:flex;gap:12px}.chat-title{color:#00a8cc;color:var(--accent-dim);font-size:14px;font-weight:500;letter-spacing:2px;min-width:0;text-transform:uppercase}.chat-metrics{color:#6a8299;color:var(--text-2);font-size:11px;font-weight:400;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;text-transform:none;white-space:nowrap}.chat-header-actions{align-items:center;display:flex;flex-shrink:0;gap:6px}.chat-icon-btn{background:#0000;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#a8bfd4;color:var(--text-1);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;padding:4px 9px;transition:background .12s,color .12s,border-color .12s}.chat-icon-btn:hover:not(:disabled){background:#131920;background:var(--bg-2);border-color:#2a3f55;border-color:var(--border-bright);color:#e8edf2;color:var(--text-0)}.chat-context-strip{background:#131920;background:var(--bg-2);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;letter-spacing:.5px;overflow:hidden;padding:4px 16px;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;white-space:nowrap}.chat-messages{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:12px 16px}.chat-bubble-row{display:flex;margin-bottom:12px}.chat-bubble-row.user{justify-content:flex-end}.chat-bubble-row.assistant{justify-content:flex-start}.chat-bubble{word-wrap:break-word;border-radius:8px;font-size:13px;line-height:1.6;max-width:88%;padding:10px 13px;white-space:pre-wrap}.chat-bubble.loading{font-style:italic}.chat-bubble.error{border-color:#ff4757!important;border-color:var(--red)!important;color:#ff4757!important;color:var(--red)!important}.chat-lit-banner{font-size:10px;letter-spacing:1px;margin-bottom:6px;text-transform:uppercase}.chat-lit-queries{font-style:italic;letter-spacing:0;margin-left:6px;text-transform:none}.chat-system-note{align-items:center;display:flex;gap:8px;margin:8px 0}.chat-system-note:after,.chat-system-note:before{background:#1e2d3d;background:var(--border);content:"";flex:1 1;height:1px}.chat-system-note-text{color:#6a8299;color:var(--text-2);font-size:10px;letter-spacing:1px;text-transform:uppercase}.chat-input-row{border-top:1px solid #1e2d3d;border-top:1px solid var(--border);display:flex;gap:8px;padding:12px 16px}.chat-textarea{border-radius:4px;border-radius:var(--radius);flex:1 1;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px;line-height:1.45;max-height:140px;min-height:36px;outline:none;padding:8px 12px;resize:none}.chat-textarea:focus{border-color:#00d4ff!important;border-color:var(--accent)!important}.chat-send-btn{border:none;border-radius:4px;border-radius:var(--radius);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px;font-weight:500;padding:8px 16px;transition:background .12s,color .12s;white-space:nowrap}.chat-send-btn:disabled{cursor:default}.chat-confirm-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:absolute;z-index:120}.chat-confirm-dialog{border-radius:6px;font-family:IBM Plex Mono,monospace;font-family:var(--mono);max-width:340px;padding:16px 18px;width:86%}.chat-confirm-title{font-size:14px;font-weight:500;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.chat-confirm-body{font-size:12px;line-height:1.55;margin-bottom:16px}.chat-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.chat-confirm-actions button{border-radius:4px;border-radius:var(--radius);font-size:12px;padding:6px 14px}.chat-confirm-actions button,.chat-transcript-btn{cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.chat-transcript-btn{background:#0000;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#6a8299;color:var(--text-2);font-size:10px;letter-spacing:.5px;opacity:.7;padding:3px 8px;transition:opacity .15s;white-space:nowrap}.chat-transcript-btn:hover{color:#a8bfd4;color:var(--text-1);opacity:1}.stack-bar{background:#1a2330;background:var(--bg-3);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;display:flex;height:8px;margin:6px 0 10px;overflow:hidden}.layer-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.layer-card{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);overflow:hidden;transition:border-color .15s}.layer-card.expanded,.layer-card:hover{border-color:#2a3f55;border-color:var(--border-bright)}.layer-card-header{align-items:center;cursor:pointer;display:flex;gap:8px;padding:7px 8px;-webkit-user-select:none;user-select:none}.layer-card-header:hover{background:#1a2330;background:var(--bg-3)}.layer-swatch{border-radius:2px;flex-shrink:0;height:28px;width:3px}.layer-card-info{flex:1 1;min-width:0}.layer-card-name{color:#e8edf2;color:var(--text-0);display:block;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-card-meta{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px}.layer-card-actions{align-items:center;display:flex;gap:2px}.layer-action-btn{align-items:center;background:none;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:3px;color:#6a8299;color:var(--text-2);cursor:pointer;display:flex;font-size:11px;height:20px;justify-content:center;padding:0;transition:all .12s;width:20px}.layer-action-btn:hover{border-color:#00d4ff;border-color:var(--accent);color:#00d4ff;color:var(--accent)}.layer-action-btn.danger:hover{border-color:#ff4757;border-color:var(--red);color:#ff4757;color:var(--red)}.layer-action-btn:disabled{cursor:not-allowed;opacity:.3}.layer-chevron{color:#6a8299;color:var(--text-2);font-size:9px;margin-left:2px}.layer-editor{background:#0d1117;background:var(--bg-1);border-top:1px solid #1e2d3d;border-top:1px solid var(--border);padding:10px 10px 12px}.layer-warn{background:#f0a50014;border:1px solid #f0a50040;border-radius:3px;color:#f0a500;color:var(--amber);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;margin-bottom:8px;padding:4px 8px}.editor-tabs{display:flex;flex-wrap:wrap;gap:2px;margin-bottom:8px}.editor-tab{background:none;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:3px;color:#6a8299;color:var(--text-2);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;letter-spacing:.5px;padding:3px 7px;transition:all .12s}.editor-tab:hover{border-color:#2a3f55;border-color:var(--border-bright);color:#a8bfd4;color:var(--text-1)}.editor-tab.active{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent);color:#00d4ff;color:var(--accent)}.editor-body{min-height:60px}.doping-type-badge{background:#1a2330;background:var(--bg-3);border-radius:3px;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;margin-top:6px;padding:3px 6px}.add-layer-row{align-items:center;display:flex;gap:6px}.add-layer-btn{background:none;border:1px solid #2a3f55;border:1px solid var(--border-bright);border-radius:4px;border-radius:var(--radius);color:#00d4ff;color:var(--accent);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;padding:5px 10px;transition:all .15s;white-space:nowrap}.add-layer-btn:hover{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent)}.contact-row{margin-bottom:10px}.contact-label{color:#6a8299;color:var(--text-2);display:block;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.dam-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;right:var(--chat-width,0);top:0;transition:right .18s ease;z-index:9999}@media (max-width:1023px){.dam-overlay{right:0}}.dam-modal{background:#0d1117;background:var(--bg-1);border:1px solid #2a3f55;border:1px solid var(--border-bright);border-radius:8px;box-shadow:0 24px 80px #0009,0 0 0 1px #1e2d3d;box-shadow:0 24px 80px #0009,0 0 0 1px var(--border);display:flex;flex-direction:column;height:95vh;overflow:hidden;width:95vw}.dam-titlebar{align-items:center;background:#131920;background:var(--bg-2);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);display:flex;flex-shrink:0;gap:12px;padding:12px 20px}.dam-title{color:#00d4ff;color:var(--accent);font-size:14px;font-weight:500;letter-spacing:1px;text-transform:uppercase}.dam-title,.dam-title-meta{font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.dam-title-meta{font-size:11px}.dam-close-btn,.dam-title-meta{color:#6a8299;color:var(--text-2)}.dam-close-btn{align-items:center;background:none;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;margin-left:auto;transition:all .15s;width:28px}.dam-close-btn:hover{border-color:#ff4757;border-color:var(--red);color:#ff4757;color:var(--red)}.dam-body{display:grid;flex:1 1;grid-template-columns:25% 50% 25%;min-height:0;overflow:hidden}.dam-body-two-col{grid-template-columns:30% 70%}.dam-col{border-right:1px solid #1e2d3d;border-right:1px solid var(--border);overflow-y:auto;padding:16px}.dam-col:last-child{border-right:none}.dam-col::-webkit-scrollbar{width:4px}.dam-col::-webkit-scrollbar-track{background:#0000}.dam-col::-webkit-scrollbar-thumb{background:#2a3f55;background:var(--border-bright);border-radius:2px}.dam-col-left{background:#0d1117;background:var(--bg-1)}.dam-col-center{background:#080b0f;background:var(--bg-0);padding:0}.dam-col-right,.dam-col-stack{background:#0d1117;background:var(--bg-1)}.dam-col-stack{padding:12px}.dam-col-editor{background:#080b0f;background:var(--bg-0);padding:0}.dam-domain-section{border-left:4px solid #0000;cursor:pointer;margin-bottom:1px;padding:8px 12px;transition:background .15s}.dam-domain-section:hover{background:#131920;background:var(--bg-2)}.dam-domain-section.selected{background:#1a2330;background:var(--bg-3)}.dam-domain-name{color:#6a8299;color:var(--text-2);cursor:pointer;font-size:10px;font-weight:600;letter-spacing:1px;margin-bottom:2px;text-transform:uppercase}.dam-domain-detail{color:#6a8299;color:var(--text-2)}.dam-domain-detail,.dam-domain-layer{font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px}.dam-domain-layer{border-radius:3px;color:#a8bfd4;color:var(--text-1);cursor:pointer;padding:2px 4px;transition:background .1s}.dam-domain-layer:hover{background:#1a2330;background:var(--bg-3)}.dam-domain-layer.active{background:#00d4ff1f;background:var(--accent-glow);color:#00d4ff;color:var(--accent)}.dam-domain-empty{color:var(--text-3);font-size:11px;font-style:italic;padding:2px 0}.dam-domain-bar{border-left:4px solid #0000;font-weight:600;letter-spacing:1px;padding:6px 12px;text-transform:uppercase}.dam-domain-bar,.dam-iface-divider{align-items:center;display:flex;font-size:10px;justify-content:space-between;margin-bottom:1px}.dam-iface-divider{background:#22d3ee0a;border-left:4px solid #22d3ee;color:#22d3ee;cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);padding:5px 12px;transition:background .15s}.dam-iface-divider:hover{background:#22d3ee14}.dam-iface-divider.selected{background:#22d3ee1f}.dam-iface-summary{color:#6a8299;color:var(--text-2);font-size:9px}.dam-col-header{border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;letter-spacing:2px;margin-bottom:10px;padding-bottom:6px;text-transform:uppercase}.dam-stack-bar{background:#1a2330;background:var(--bg-3);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:5px;display:flex;height:10px;margin-bottom:4px;overflow:hidden}.dam-layer-label-row{color:#6a8299;color:var(--text-2);display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:9px;justify-content:space-between;margin-bottom:10px}.dam-layer-list{display:flex;flex-direction:column;gap:3px;margin-bottom:10px}.dam-layer-card{align-items:center;background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);cursor:pointer;display:flex;gap:8px;padding:8px;transition:all .12s}.dam-layer-card:hover{background:#1a2330;background:var(--bg-3);border-color:#2a3f55;border-color:var(--border-bright)}.dam-layer-card.selected{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent)}.dam-layer-swatch{border-radius:2px;flex-shrink:0;height:32px;width:4px}.dam-layer-info{flex:1 1;min-width:0}.dam-layer-name{color:#e8edf2;color:var(--text-0);font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dam-layer-meta{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px}.dam-layer-actions{display:flex;flex-shrink:0;gap:2px}.dam-action-btn{align-items:center;background:none;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:3px;color:#6a8299;color:var(--text-2);cursor:pointer;display:flex;font-size:10px;height:20px;justify-content:center;padding:0;transition:all .12s;width:20px}.dam-action-btn:hover{border-color:#00d4ff;border-color:var(--accent);color:#00d4ff;color:var(--accent)}.dam-action-btn.danger:hover{border-color:#ff4757;border-color:var(--red);color:#ff4757;color:var(--red)}.dam-action-btn:disabled{cursor:not-allowed;opacity:.3}.dam-add-row{align-items:center;display:flex;gap:6px}.dam-btn{border:none;border-radius:4px;border-radius:var(--radius);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;padding:6px 14px;transition:all .15s;white-space:nowrap}.dam-btn:disabled{cursor:not-allowed;opacity:.4}.dam-btn-primary{background:#00d4ff;background:var(--accent);color:#080b0f;color:var(--bg-0);font-weight:500}.dam-btn-primary:hover{background:#00a8cc;background:var(--accent-dim)}.dam-btn-secondary{background:#0000;border:1px solid #2a3f55;border:1px solid var(--border-bright);color:#00d4ff;color:var(--accent)}.dam-btn-secondary:hover{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent)}.dam-btn-accent{background:#0000;border:1px solid #00a8cc;border:1px solid var(--accent-dim);color:#00d4ff;color:var(--accent)}.dam-btn-accent:hover{background:#00d4ff1f;background:var(--accent-glow)}.dam-btn-ghost{background:#0000;border:1px solid #1e2d3d;border:1px solid var(--border);color:#6a8299;color:var(--text-2)}.dam-btn-ghost:hover{border-color:#2a3f55;border-color:var(--border-bright);color:#a8bfd4;color:var(--text-1)}.dam-btn-sm{font-size:11px;padding:3px 8px}.dam-field{margin-bottom:10px}.dam-field:last-child{margin-bottom:0}.dam-field-label{align-items:center;color:#a8bfd4;color:var(--text-1);display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;justify-content:space-between;margin-bottom:4px}.dam-field-unit{color:#6a8299;color:var(--text-2);font-size:11px}.dam-field-input{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#e8edf2;color:var(--text-0);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:13px;outline:none;padding:6px 8px;transition:border-color .15s,box-shadow .15s;width:100%}.dam-field-input:focus{border-color:#00a8cc;border-color:var(--accent-dim);box-shadow:0 0 0 2px #00d4ff1f;box-shadow:0 0 0 2px var(--accent-glow)}.dam-field-input.readonly{background:#1a2330;background:var(--bg-3);color:#6a8299;color:var(--text-2);cursor:default}select.dam-field-input{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='m0 0 5 6 5-6z' fill='%234a6278'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;cursor:pointer;padding-right:24px}.dam-field-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-bottom:10px}.dam-field-row:last-child{margin-bottom:0}.dam-editor{display:flex;flex-direction:column;height:100%}.dam-editor-header{align-items:center;background:#0d1117;background:var(--bg-1);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:12px 16px}.dam-editor-title{color:#e8edf2;color:var(--text-0);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:14px;font-weight:500}.dam-editor-tabs{background:#0d1117;background:var(--bg-1);border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:2px;padding:8px 16px}.dam-tab{background:none;border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:3px;color:#6a8299;color:var(--text-2);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;letter-spacing:.5px;padding:4px 10px;transition:all .12s}.dam-tab:hover{border-color:#2a3f55;border-color:var(--border-bright);color:#a8bfd4;color:var(--text-1)}.dam-tab.active{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent);color:#00d4ff;color:var(--accent)}.dam-editor-body{flex:1 1;overflow-y:auto;padding:16px}.dam-editor-body::-webkit-scrollbar{width:4px}.dam-editor-body::-webkit-scrollbar-track{background:#0000}.dam-editor-body::-webkit-scrollbar-thumb{background:#2a3f55;background:var(--border-bright);border-radius:2px}.dam-subsection-label{border-top:1px solid #1e2d3d;border-top:1px solid var(--border);color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;letter-spacing:1px;margin:12px 0 8px;padding-top:8px;text-transform:uppercase}.dam-divider{background:#1e2d3d;background:var(--border);height:1px;margin:12px 0}.dam-type-badge{background:#1a2330;background:var(--bg-3);border-radius:3px;display:inline-block;font-size:11px;padding:3px 8px}.dam-defects-header,.dam-type-badge{font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.dam-defects-header{align-items:center;color:#a8bfd4;color:var(--text-1);display:flex;font-size:12px;justify-content:space-between;margin-bottom:10px}.dam-trap-card{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);margin-bottom:8px;padding:10px}.dam-trap-header{align-items:center;color:#a8bfd4;color:var(--text-1);display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;justify-content:space-between;margin-bottom:8px}.dam-contact-card{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);margin-bottom:8px;padding:10px}.dam-contact-label{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.dam-interface-card{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);margin-bottom:6px;padding:10px}.dam-interface-name{color:#00d4ff;color:var(--accent);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;margin-bottom:6px}.dam-toggle-group{display:flex;gap:2px;margin-bottom:8px}.dam-toggle-btn{background:#131920;background:var(--bg-2);border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#6a8299;color:var(--text-2);cursor:pointer;flex:1 1;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;padding:5px 8px;transition:all .12s}.dam-toggle-btn:hover{border-color:#2a3f55;border-color:var(--border-bright);color:#a8bfd4;color:var(--text-1)}.dam-toggle-btn.active{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent);color:#00d4ff;color:var(--accent)}.dam-toggle-row{align-items:center;color:#a8bfd4;color:var(--text-1);display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;justify-content:space-between;margin-bottom:10px}.dam-toggle{height:20px;position:relative;width:36px}.dam-toggle input{height:0;opacity:0;width:0}.dam-toggle-slider{background:#1a2330;background:var(--bg-3);border:1px solid #2a3f55;border:1px solid var(--border-bright);border-radius:10px;cursor:pointer;inset:0;position:absolute;transition:.2s}.dam-toggle-slider:before{background:#6a8299;background:var(--text-2);border-radius:50%;content:"";height:14px;left:2px;position:absolute;top:2px;transition:.2s;width:14px}.dam-toggle input:checked+.dam-toggle-slider{background:#00d4ff1f;background:var(--accent-glow);border-color:#00a8cc;border-color:var(--accent-dim)}.dam-toggle input:checked+.dam-toggle-slider:before{background:#00d4ff;background:var(--accent);transform:translateX(16px)}.dam-grading-preview{border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);margin-top:10px;padding:8px}.dam-bottombar,.dam-grading-preview{background:#131920;background:var(--bg-2)}.dam-bottombar{align-items:center;border-top:1px solid #1e2d3d;border-top:1px solid var(--border);display:flex;flex-shrink:0;justify-content:space-between;padding:10px 20px}.dam-bottombar-right{align-items:center;display:flex;gap:8px}.dam-save-inline{gap:6px}.dam-empty,.dam-save-inline{align-items:center;display:flex}.dam-empty{flex:1 1;height:100%;justify-content:center}.dam-empty-text{font-size:12px}.dam-empty-text,.dam-muted{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono)}.dam-muted{font-size:11px;padding:8px 0}.define-device-btn{background:#0000;border:1px solid #00a8cc;border:1px solid var(--accent-dim);border-radius:4px;border-radius:var(--radius);color:#00d4ff;color:var(--accent);cursor:pointer;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:1px;margin-top:8px;padding:10px;text-transform:uppercase;transition:all .15s;width:100%}.define-device-btn:hover{background:#00d4ff1f;background:var(--accent-glow);border-color:#00d4ff;border-color:var(--accent)}.dam-collapsible{border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);margin:10px 0;overflow:hidden}.dam-collapsible-header{align-items:center;background:#131920;background:var(--bg-2);color:#6a8299;color:var(--text-2);cursor:pointer;display:flex;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;justify-content:space-between;letter-spacing:.5px;padding:6px 10px;-webkit-user-select:none;user-select:none}.dam-collapsible-header:hover{color:#a8bfd4;color:var(--text-1)}.dam-collapsible-arrow{font-size:10px}.dam-collapsible-body{border-top:1px solid #1e2d3d;border-top:1px solid var(--border);padding:8px 10px}.dam-graded-badge{background:#39d3531a;border:1px solid #39d35340;border-radius:2px;color:#39d353;color:var(--green);display:inline-block;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:8px;letter-spacing:1px;margin-left:6px;padding:0 4px;vertical-align:middle}.dam-graded-editor{margin-top:4px}.dam-profile-table-wrap{border:1px solid #1e2d3d;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);margin:6px 0;overflow-x:auto}.dam-profile-table{border-collapse:collapse;font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;width:100%}.dam-profile-table th{background:#131920;background:var(--bg-2);color:#6a8299;color:var(--text-2);font-size:10px;font-weight:400;letter-spacing:.3px;padding:5px 4px;white-space:nowrap}.dam-profile-table td,.dam-profile-table th{border-bottom:1px solid #1e2d3d;border-bottom:1px solid var(--border);text-align:center}.dam-profile-table td{padding:3px 2px}.dam-profile-table tr:last-child td{border-bottom:none}.dam-table-input{background:#1a2330;background:var(--bg-3);border:1px solid #0000;border-radius:2px;color:#e8edf2;color:var(--text-0);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:11px;min-width:50px;outline:none;padding:3px 4px;text-align:center;transition:border-color .15s;width:100%}.dam-table-input:focus{background:#131920;background:var(--bg-2);border-color:#00a8cc;border-color:var(--accent-dim)}.dam-table-input[readOnly]{background:#131920;background:var(--bg-2);color:#6a8299;color:var(--text-2)}.dam-hint{background:#1a2330;background:var(--bg-3);border-radius:3px;color:#6a8299;color:var(--text-2);line-height:1.4;margin-top:6px}.dam-hint,.dam-warn{font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;padding:4px 8px}.dam-warn{background:#f0a50014;border:1px solid #f0a50033;border-radius:3px;color:#f0a500;color:var(--amber);margin-top:4px}.dam-field-compact{margin-bottom:6px}.dam-field-compact .dam-field-label{font-size:11px;margin-bottom:2px}.dam-field-compact .dam-field-input{font-size:12px;padding:4px 6px}.device-summary{color:#6a8299;color:var(--text-2);font-family:IBM Plex Mono,monospace;font-family:var(--mono);font-size:10px;margin-top:4px;padding:4px 0}
/*# sourceMappingURL=main.feff8e67.css.map*/