*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;background-color:orange;margin:0;font-family:Intel,sans-serif}:root{background-color:#555;font-family:Intel,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;user-select:none}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}input:focus,button:focus,a:focus{outline:none}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026,0 0 0 1px #0000000d;pointer-events:auto;animation:slideIn .3s ease-out;transition:all .2s ease}.toast:hover{transform:translate(-4px);box-shadow:0 6px 16px #0003,0 0 0 1px #0000000d}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:14px;font-weight:700;flex-shrink:0}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#333;word-wrap:break-word}.toast-close{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;color:#666;cursor:pointer;font-size:16px;line-height:1;padding:0;border-radius:4px;transition:all .2s ease;flex-shrink:0}.toast-close:hover{background:#0000000d;color:#333}.toast-success{border-left:4px solid #4caf50}.toast-success .toast-icon{background:#e8f5e9;color:#4caf50}.toast-error{border-left:4px solid #f44336}.toast-error .toast-icon{background:#ffebee;color:#f44336}.toast-warning{border-left:4px solid #ff9800}.toast-warning .toast-icon{background:#fff3e0;color:#ff9800}.toast-info{border-left:4px solid #2196f3}.toast-info .toast-icon{background:#e3f2fd;color:#2196f3}.wasm-error-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-in}.wasm-error-container{background:#fff;border-radius:12px;padding:32px;max-width:500px;width:90%;box-shadow:0 8px 32px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.wasm-error-icon{font-size:48px;text-align:center;margin-bottom:16px}.wasm-error-title{font-size:24px;font-weight:600;color:#333;margin:0 0 12px;text-align:center}.wasm-error-message{font-size:16px;color:#666;margin:0 0 20px;text-align:center;line-height:1.5}.wasm-error-details{background:#f8f9fa;border-left:4px solid #ff9800;padding:16px;margin-bottom:20px;border-radius:4px}.wasm-error-details p{margin:0 0 8px;font-weight:600;color:#333}.wasm-error-details ul{margin:8px 0 0;padding-left:20px;color:#666}.wasm-error-details li{margin:4px 0;line-height:1.5}.wasm-error-actions{display:flex;gap:12px;margin-bottom:16px}.wasm-error-button{flex:1;padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.wasm-error-button.primary{background:#007bff;color:#fff}.wasm-error-button.primary:hover{background:#0056b3;transform:translateY(-1px);box-shadow:0 4px 8px #007bff4d}.wasm-error-button.secondary{background:#e9ecef;color:#495057}.wasm-error-button.secondary:hover{background:#dee2e6}.wasm-error-technical{background:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;padding:12px;margin:16px 0}.wasm-error-technical p{margin:0 0 8px;font-size:13px;font-weight:600;color:#495057}.wasm-error-technical code{display:block;background:#343a40;color:#f8f9fa;padding:12px;border-radius:4px;font-size:12px;font-family:Courier New,monospace;overflow-x:auto;white-space:pre-wrap;word-break:break-all;margin-bottom:8px}.wasm-error-link{background:none;border:none;color:#007bff;font-size:14px;cursor:pointer;padding:4px 0;text-decoration:underline;transition:color .2s ease}.wasm-error-link:hover{color:#0056b3}.wasm-error-help{text-align:center;font-size:13px;color:#999;margin:16px 0 0;line-height:1.5}.button-container{display:flex;gap:.5rem;align-items:center;justify-content:flex-end}.initiate-button{width:36px;height:36px;background:#834800;border:none;border-radius:2px;cursor:pointer;transition:background .2s;display:flex;align-items:center;justify-content:center;padding:0}.initiate-button:hover{background:#b8860b}.initiate-button:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.active-button{cursor:pointer}.installation{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1.5rem;border-radius:4px;background-color:#e0e0e0;box-shadow:0 2px 8px #0000001a;transition:all .2s;margin-bottom:1rem}.installation:hover{box-shadow:0 4px 12px #00000026}.initiate-form{display:flex;flex-direction:column;gap:.75rem;background-color:#e0e0e0;padding:1rem;border-radius:4px;box-shadow:0 2px 8px #0000001a;flex:1;overflow-y:auto;max-height:75vh}.integrated-file-tree{margin-top:.75rem;background:#fff;border:2px solid #834800;border-radius:4px;overflow:hidden;max-height:450px;display:flex;flex-direction:column}.integrated-file-tree .file-tree-container{height:100%;max-height:450px;border-radius:0;border:none}.integrated-file-tree::-webkit-scrollbar,.integrated-file-tree .file-tree-container::-webkit-scrollbar{width:8px}.integrated-file-tree::-webkit-scrollbar-track,.integrated-file-tree .file-tree-container::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.integrated-file-tree::-webkit-scrollbar-thumb,.integrated-file-tree .file-tree-container::-webkit-scrollbar-thumb{background:#834800;border-radius:4px}.integrated-file-tree::-webkit-scrollbar-thumb:hover,.integrated-file-tree .file-tree-container::-webkit-scrollbar-thumb:hover{background:#b8860b}.initiate-row{display:flex;flex-direction:row;align-items:center;gap:.5rem;padding:.5rem;background:#fff;border:1px solid #ddd;border-radius:4px;transition:all .2s;min-height:50px}.initiate-row:hover{background:#f9f9f9;border-color:#834800;box-shadow:0 2px 4px #0000001a}.initiate-form input{flex:1;padding:.7rem;border-radius:4px;border:1px solid lightslategray;box-shadow:inset 0 2px 8px #0003;color:#000;background-color:#fff;font-size:.95rem;min-width:180px;transition:all .2s}.initiate-form input:focus{outline:none;border-color:#834800;box-shadow:inset 0 2px 8px #0003,0 0 0 2px #83480040}.initiate-form input::placeholder{color:#999;font-style:italic}.initiate-form input:read-only{background:#f5f5f5;color:#333}.connection-status{display:flex;align-items:center;justify-content:center;padding:1rem}.connection-button{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:140px;justify-content:center;box-shadow:0 2px 8px #0000001a}.connection-button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.connection-button:disabled{opacity:.7;cursor:not-allowed}.connection-button.disconnected{background-color:#dc3545;color:#fff}.connection-button.disconnected:hover:not(:disabled){background-color:#bd2130}.connection-button.connected{background-color:#28a745;color:#fff}.connection-button.connected:hover:not(:disabled){background-color:#218838}.connection-button.connecting{background-color:#ffc107;color:#212529}.connection-button.connecting:hover:not(:disabled){background-color:#e0a800}.connection-status-indicator{display:inline-block;width:12px;height:12px;border-radius:50%;flex-shrink:0}.connected-status{background-color:#28a745;background-color:#5cb85c;border:1px solid rgba(255,255,255,.5)}.disconnected-status{background-color:#dc3545;background-color:#d9534f;border:1px solid rgba(255,255,255,.5)}.connection-spinner{width:12px;height:12px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;flex-shrink:0}.logoff{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:#00000080;z-index:1000;padding:1rem}.logoff>*{background-color:#e0e0e0;padding:1.5rem;border-radius:4px;min-width:400px;max-width:500px;box-shadow:0 4px 20px #0000004d;text-align:center;color:#333}.logoff p{font-size:1.1rem;font-weight:500;margin-bottom:1.5rem;color:#333}.logoff-buttons{display:flex;gap:1rem;justify-content:center;align-items:center}.buttonIcon{width:48px;height:48px;border:none;border-radius:2px;background:#834800;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;padding:0}.buttonIcon:hover{background:#b8860b;transform:scale(1.05)}.yes{background:#28a745}.yes:hover{background:#218838}.no{background:#dc3545}.no:hover{background:#c82333}.active-case{background:#fff;color:#333;transition:all .2s;padding:.75rem;border:1px solid #ddd;box-shadow:0 2px 8px #0000001a;border-radius:4px;display:grid;grid-template-columns:40px 1fr 40px;gap:.75rem;align-items:center;margin-bottom:0}.active-case:hover{box-shadow:0 4px 12px #00000026;border-color:#834800}.active-case button{width:40px;height:40px;border:none;border-radius:2px;background:#834800;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.active-case button:hover{background:#b8860b;transform:scale(1.05)}.active-case button:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.active-case div{display:flex;flex-direction:row;justify-content:center;align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:.5rem 1rem;transition:all .2s;font-size:1rem;font-weight:600;color:#333}.main-container{display:flex;flex-direction:column;height:100vh;padding:1.5rem;gap:1.5rem;background:linear-gradient(0deg,#333,#444)}.main-container.with-file-tree{flex-direction:column;height:100vh}.left-panel{flex:1;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;min-width:500px;max-width:800px;background:transparent;position:relative;overflow-y:auto;overflow-x:hidden}.left-panel-wrapper{flex:1;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;min-width:500px;max-width:800px;background:transparent;position:relative;overflow-y:visible;overflow-x:hidden}.scrollable-content{flex:0 0 auto;overflow-y:auto;overflow-x:hidden}.left-panel:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0}.left-panel>*{position:relative;z-index:1}.left-panel::-webkit-scrollbar,.scrollable-content::-webkit-scrollbar{width:8px}.left-panel::-webkit-scrollbar-track,.scrollable-content::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}.left-panel::-webkit-scrollbar-thumb,.scrollable-content::-webkit-scrollbar-thumb{background:#834800;border-radius:4px}.left-panel::-webkit-scrollbar-thumb:hover,.scrollable-content::-webkit-scrollbar-thumb:hover{background:#b8860b}.right-panel{flex:0 0 40%;min-width:400px;max-width:600px;overflow:hidden;display:flex;flex-direction:column;position:relative;background:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001a}.close-popup-button{background:transparent;color:#333;border:2px solid transparent;border-radius:2px;padding:.1rem;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .2s;position:absolute;top:5px;right:5px;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.close-popup-button:hover{background:#0000001a;border-color:#333}.cancel-button,.confirm-button{padding:.7rem 1.5rem;border:none;border-radius:2px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s;min-width:80px}.confirm-button{background:#dc3545;color:#fff}.confirm-button:hover{background:#c82333}.right-panel .file-tree-container{height:100%;max-height:100%;flex:1;display:flex;flex-direction:column;overflow:hidden}.right-panel .node-directory{color:#333!important;font-weight:600}.right-panel .node-file{color:#2c3e50!important;font-weight:500}.file-tree-container{background:#fff;color:#333;padding:1rem;height:100%;width:100%;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;flex-direction:column;overflow:hidden;border-radius:8px}.file-tree-header{color:#333;border-bottom:1px solid #ddd;padding:0 0 .75rem;margin:0 0 1rem;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.file-tree-header h2{margin:0;font-size:1.1rem;font-weight:600;color:#333;letter-spacing:0}.tree-controls{display:flex;gap:.5rem}.control-button{background:#007bff;color:#fff;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;text-transform:none;letter-spacing:0}.control-button:hover{background:#0056b3;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.control-button:active{transform:translateY(0)}.close-tree-button{background:#6c757d;color:#fff;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;text-transform:none;letter-spacing:0}.close-tree-button:hover{background:#5a6268;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.close-tree-button:active{transform:translateY(0)}.tree-content{flex:1;overflow-y:auto;overflow-x:hidden;padding-right:4px;width:100%;box-sizing:border-box}.tree-content::-webkit-scrollbar{width:6px}.tree-content::-webkit-scrollbar-track{background:#4b526333;border-radius:3px}.tree-content::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-active) 100%);border-radius:3px}.tree-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--color-accent-active) 0%,var(--color-accent) 100%)}.tree-root,.tree-children{list-style-type:none;padding-left:20px;margin:0;position:relative}.tree-root{padding-left:0}.tree-children:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:1px;background:linear-gradient(180deg,rgba(171,178,191,.2) 0%,transparent 100%)}.tree-node{padding:2px 0;position:relative;border-radius:4px;transition:all .2s ease}.tree-node:hover{background:#ffffff14}.tree-node:before{content:"";position:absolute;left:-12px;top:50%;width:12px;height:1px;background:linear-gradient(90deg,rgba(171,178,191,.2) 0%,transparent 100%)}.tree-root>.tree-node:before{display:none}.node-content{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;transition:all .2s ease;position:relative;width:100%;box-sizing:border-box;min-width:0;justify-content:space-between}.fold-button{background:linear-gradient(135deg,#4b526399,#3e445199);border:1px solid var(--color-accent);color:var(--color-text-light);cursor:pointer;padding:0;width:18px;height:18px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:8px;transition:all .3s ease;box-shadow:0 1px 3px var(--color-text-dark)}.fold-button:hover{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-active) 100%);color:var(--color-text-light);border-color:var(--color-accent-active);box-shadow:0 2px 6px var(--color-accent)}.fold-button:active{box-shadow:0 1px 3px #61afef33}.file-spacer{width:18px;height:18px}.node-directory{color:#d4af37;text-shadow:0 1px 2px rgba(0,0,0,.3);position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 100px);font-weight:500}.node-directory:before{content:"📁";margin-right:6px;font-size:.9em;opacity:.8;flex-shrink:0}.node-file{color:#228b22;position:relative;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:calc(100% - 100px);font-weight:400}.node-file:before{content:"📄";margin-right:6px;font-size:.8em;opacity:.7;flex-shrink:0}.node-file[title$=".js"]:before,.node-file[title$=".jsx"]:before{content:"⚡";color:#f7df1e}.node-file[title$=".ts"]:before,.node-file[title$=".tsx"]:before{content:"🔷";color:#3178c6}.node-file[title$=".css"]:before{content:"🎨";color:#1572b6}.node-file[title$=".json"]:before{content:"⚙️";color:gold}.node-file[title$=".md"]:before{content:"📝";color:#fff}.node-file[title$=".py"]:before{content:"🐍";color:#3776ab}.node-file[title$=".html"]:before{content:"🌐";color:#e34f26}.node-content:hover .node-directory{color:#f0c674;text-shadow:0 0 8px rgba(240,198,116,.4)}.node-content:hover .node-file{color:#a0d468;text-shadow:0 0 6px rgba(160,212,104,.3)}@keyframes flashOnMount{0%{box-shadow:inset 0 1px #ffffff0d}20%,80%{box-shadow:inset 0 0 25px var(--color-accent),inset 0 1px #ffffff0d}to{box-shadow:inset 0 1px #ffffff0d}}.file-tree-container.flash-on-mount{animation:flashOnMount 1.2s ease-in-out}.select-button{border:1px solid var(--color-border-light);color:var(--color-text-muted);cursor:pointer;padding:0;width:12px;height:12px;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .3s ease;flex-shrink:0;margin-left:auto}.select-button:hover{color:var(--color-text-light);border-color:var(--color-accent-active);transform:scale(1.1)}.select-button.selected{background:linear-gradient(135deg,var(--color-success) 0%,var(--color-success-active) 100%);color:var(--color-text-light);border-color:var(--color-success-active);box-shadow:0 2px 6px #4caf5066}.select-button.selected:hover{background:linear-gradient(135deg,var(--color-success-active) 0%,var(--color-success) 100%)}.node-name.selected{background:#4caf5033;border-radius:3px;padding:2px 4px}.node-content{display:flex;align-items:center;justify-content:flex-start;gap:6px}.node-name{flex:1;min-width:0}.delete-button{background:linear-gradient(135deg,#dc3545,#c82333)!important}.delete-button:hover{background:linear-gradient(135deg,#c82333,#a71e2a)!important}.delete-button:disabled{background:#6c757d!important;cursor:not-allowed;opacity:.6}.delete-confirmation-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-confirmation-dialog{background:var(--color-bg-panel);border:1px solid var(--border-color-light);border-radius:4px;padding:24px;max-width:400px;color:var(--color-text-light);box-shadow:0 4px 20px #00000080}.delete-confirmation-dialog h3{margin:0 0 16px;color:#fff;font-size:1.1em}.delete-confirmation-dialog p{margin:0 0 16px;color:var(--color-text-muted)}.selected-items-list{max-height:200px;overflow-y:auto;margin:16px 0;padding:8px;background:#fff;border-radius:4px;border:1px solid #ddd}.item-to-delete{padding:.5rem;border-bottom:1px solid #f0f0f0;font-family:Courier New,monospace;font-size:.85rem;color:#555}.item-to-delete:last-child{border-bottom:none}.dialog-buttons{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.cancel-button,.delete-button-confirm{padding:.7rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s}.cancel-button{background:#6c757d;color:#fff}.cancel-button:hover{background:#5a6268}.delete-button-confirm{background:#dc3545;color:#fff}.delete-button-confirm:hover{background:#c82333}.gui-canvas{width:100%;height:100%;z-index:0;background-color:var(--color-bg-app)}.processing-text{font-size:16px;font-weight:400;color:#fff;text-align:center;border-radius:2px}.processing-text:hover{cursor:pointer}.geo-row{display:flex;flex-direction:row;align-items:center;justify-content:left;background-color:#111;width:100%}.geo-input input[type=text]{width:144px;height:24px;background-color:#fff;font-size:12px;font-family:Courier New,Courier,monospace;padding-left:4px}.sub-panel--geo{width:156px}.sub-panel--geo .geo-input{padding-bottom:2px}.viewMesh{display:grid;grid-template-columns:1fr 36px 36px;height:32px;background-color:#333;border:1px solid #4a90e2;border-radius:2px;width:100%;margin-bottom:4px}.viewMesh-name{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-family:monospace;font-size:12px;max-width:120px}.viewMesh-off{margin:2px;display:flex;flex-direction:column;align-items:center;justify-content:center}.viewMesh-off div{width:12px;height:12px;background-color:#fff;border-radius:50%}.viewMesh-highlight{margin:2px;display:flex;flex-direction:column;align-items:center;justify-content:center}.viewMesh-highlight div{width:16px;height:16px;background-color:#fff;border-radius:4px}.examMesh{display:grid;grid-template-columns:1fr 4px 32px 32px 32px 20px;color:#fff;font-family:monospace;font-size:12px;width:100%;background-color:#333;border:1px solid #4a90e2;border-radius:2px;margin-bottom:4px;align-items:center;justify-content:center}.examMesh label{display:flex;flex-direction:row;align-items:center;justify-content:right}.examMesh input{background-color:#ddd;border-radius:4px;text-align:right}.mesh-buttons{display:flex;flex-direction:row;align-items:center;justify-content:space-around}.startButton{width:28px;height:28px;background-color:var(--color-success-active);border-radius:4px}.startButton :hover{background-color:var(--color-success)}.sub-mesh-header{background-color:transparent;color:#fff;padding:4px 8px;margin:0;font-size:14px;font-weight:400;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.mesh-stage{display:grid;grid-template-columns:1fr 32px;align-items:center;justify-content:center;background-color:var(--color-bg-app);width:100%;border:1px solid var(--border-color-light);border-radius:var(--border-radius-sm)}.sub-panel--cfmesh,.sub-panel--mesh-controls{border:1px solid var(--color-bg-button-disabled)}#refinementOpt{width:100%}.add-object-select{background-color:#555;padding:2px;font-size:16px;margin:0;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start}.partition-surface-list{max-height:200px;overflow-y:auto;border:1px solid var(--color-bg-button-disabled);padding:10px;margin-bottom:10px;display:flex;flex-direction:column;gap:8px}.partition-surface-item{display:flex;align-items:center;gap:10px}.popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.popup-content{background-color:var(--color-bg-subpanel);padding:20px;border-radius:8px;border:1px solid var(--color-bg-button-default);color:var(--color-text-light);display:flex;flex-direction:column;gap:15px}.popup-content label{margin-right:10px}.popup-content input{padding:5px;border-radius:4px;border:1px solid var(--color-text-muted)}.popup-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}.loading-overlay{position:absolute;inset:0;background-color:#000000b3;color:#fff;display:flex;justify-content:center;align-items:center;font-size:1.2em;z-index:10;border-radius:5px}.popup-buttons button{padding:8px 15px;border-radius:4px;border:none;cursor:pointer}.popup-buttons button:first-child{background-color:var(--border-color-dark);color:var(--color-text-light)}.panel-header--cfmesh,.panel-header--mesh,.panel-header--geo{text-align:left;padding-left:4px;width:100%}.partition-surface-item label{cursor:pointer}.add-object-select select{font-size:16px}.custom-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:var(--color-bg-header-footer);color:var(--color-text-light);border:1px solid var(--border-color-dark);border-radius:6px;padding:6px 32px 6px 12px;font-size:16px;font-family:inherit;cursor:pointer;outline:none;transition:all .2s ease;background-image:url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'><path fill='var(--color-text-muted)' d='M6 8L0 2h12z'/></svg>");background-repeat:no-repeat;background-position:right 10px center;background-size:12px;min-height:28px;width:100%;box-shadow:0 1px 3px #0000004d}.custom-select:hover{border-color:var(--color-bg-button-default);background-color:var(--color-bg-subpanel);box-shadow:0 2px 5px #0006}.custom-select:focus{border-color:var(--color-primary);background-color:var(--color-bg-subpanel);box-shadow:0 0 0 3px var(--color-primary-highlight),0 2px 5px #0006}.custom-select:active{background-color:var(--color-bg-button-disabled);transform:translateY(1px)}.custom-select option{background-color:var(--color-bg-header-footer);color:var(--color-text-light);padding:8px 12px;border:none}.custom-select option:hover{background-color:var(--color-bg-subpanel)}.custom-select option:checked{background-color:#007acc}.custom-dropdown{position:relative;width:100%;height:28px;padding:1px}.custom-dropdown-trigger{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;color:#fff;border:1px solid #555555;border-radius:2px;cursor:pointer;font-size:14px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0006,inset 0 1px 3px #ffffff1a;letter-spacing:.5px;width:100%;height:100%;box-sizing:border-box}.custom-dropdown-trigger:hover{background-color:#454545;border-color:#666;box-shadow:0 6px 16px #00000080,inset 0 1px 3px #ffffff26;transform:translateY(-1px)}.custom-dropdown-text{flex:1;text-align:center;font-size:14px;display:flex;align-items:center;justify-content:center}.custom-dropdown-arrow{font-size:12px;transition:transform .3s ease;margin-left:8px}.custom-dropdown-arrow.open{transform:rotate(180deg)}.custom-dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:#3a3a3a;border:2px solid #555555;border-top:none;border-radius:0 0 8px 8px;box-shadow:0 8px 24px #0009;z-index:1000;overflow:hidden}.custom-dropdown-option{padding:6px 8px;cursor:pointer;font-size:14px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-weight:400;color:#fff;transition:background-color .2s ease;letter-spacing:.5px;height:30px;display:flex;align-items:center;box-sizing:border-box}.custom-dropdown-option:hover{background-color:#454545}.custom-dropdown-option.selected{background-color:#2a2a2a}.add-object{width:100%;display:flex;flex-direction:column;background-color:var(--border-color-dark);justify-content:center;align-items:center}.add-object-name{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.add-object-name input{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:center;margin-top:4px}.add-object-button{width:100%;padding:2px;display:flex;flex-direction:row;align-items:center;justify-content:space-evenly;border:1px solid #999}.add-object-button button{width:100%;height:28px;padding:2px}.param-block{color:var(--color-text-light);padding:2px;font-size:16px;background-color:var(--color-bg-header-footer);margin:5px 0;border-radius:2px;box-shadow:1px 1px 1px #fafafa80}.param-row{width:100%;margin:1px 0;padding:0;display:grid;grid-template-columns:1fr 36px}.param-row input{width:100px;margin:0 5px 0 auto}.param-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:2px}.param-header button{width:18px;height:18px;border-radius:4px}.refinement-row{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin:2px;border-radius:5px;color:var(--color-text-light)}.zoomPanel{position:absolute;top:50px;left:50%;display:flex;flex-direction:row;background-color:#aaa;border-radius:3px;border:1px solid green;margin:10px}.zoomLabel{color:#fff;font-size:1em;display:flex;align-items:center;width:28px;margin:0 2px 0 0;background-color:#666}.zoomButton{width:28px;height:28px;border:1px solid #fff;padding:0;cursor:pointer;display:inline-block;border:none;background:none;background-color:#ddd;overflow:hidden;margin:1px;border-radius:3px}.zoomButton:active{background-color:#222;transition:background-color .2s ease}.zoomButton img{width:100%;height:100%;object-fit:cover}.sphere{background-color:red}.cone{background-color:green}.box{background-color:#00f}.shape-block{width:100%;padding:0;margin:0}.point-block{width:100%;color:#fff;font-family:monospace;font-size:12px;padding:0;margin:2px 0;background-color:#333;border:1px solid #4a90e2;border-radius:2px}.point-title{padding-left:2px;width:100%;color:#fff;font-family:monospace;font-size:12px}.input-row{width:100%;display:grid;grid-template-columns:1fr 120px 32px;align-items:center;justify-content:center;border-radius:2px;padding:0 2px;text-align:right}.input-row label{color:#fff;font-family:monospace;font-size:12px}.input-row input{border-radius:2px;height:20px}.unit{display:flex;flex-direction:row;align-items:center;justify-content:center;padding:2px;width:60px;color:#fff;font-family:monospace;font-size:12px}.geometry-row{display:grid;grid-template-columns:55px 1fr;align-items:center;margin:2px 0;padding:2px;border:1px solid #999;border-radius:2px;color:#fff}.geometry-row label{padding-left:4px;color:#fff;font-family:monospace;font-size:12px}.geometry-inputs{display:flex;gap:4px;align-items:center}.geometry-inputs input{width:72px;border-radius:2px;height:20px}.geometry-inputs span{font-size:14px;padding-left:4px}.advanced-geo-panel{position:fixed;top:60px;right:20px;width:302px;z-index:100}.advanced-sub-panel{padding:10px}.advanced-operation-section{background-color:#1e232df2;border:1px solid #4a90e2;border-radius:3px;padding:10px;margin-top:8px}.advanced-section-title{font-size:12px;font-weight:400;color:#6cf;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.advanced-input-group{margin-bottom:10px}.advanced-input-label{font-size:11px;color:#f0f0f0;margin-bottom:4px;display:block;font-weight:500}.advanced-input{width:100%;padding:6px 8px;background-color:#333;border:1px solid #4a90e2;border-radius:2px;color:#fff;font-family:monospace;font-size:12px}.advanced-input:focus{outline:none;border-color:#6cf;background-color:#3a3a3a}.advanced-input:disabled{color:#888}.advanced-button-group{display:flex;gap:6px;margin-top:10px}.advanced-action-button{flex:1;padding:8px;background-color:#2a5a7a;border:1px solid #3a6a8a;border-radius:3px;color:#fff;font-size:11px;font-weight:700;cursor:pointer;transition:all .2s ease}.advanced-action-button:hover{background-color:#3a6a8a;border-color:#4a7a9a}.advanced-action-button:active{background-color:#1a4a6a}.advanced-action-button:disabled{background-color:#444;border-color:#555;color:#777;cursor:not-allowed}.advanced-status-text{font-size:11px;color:#ffd966;margin-top:6px;text-align:center;min-height:14px;font-weight:500}.advanced-status-text.success{color:#4dff88}.advanced-status-text.error{color:#ff6b6b}.advanced-progress-bar{width:100%;height:16px;background-color:#333;border-radius:8px;overflow:hidden;margin-top:8px}.advanced-progress-fill{height:100%;background-color:#4a90e2;transition:width .3s ease;border-radius:8px}.advanced-progress-fill.complete{background-color:#4dff88}.advanced-checkbox-group{display:flex;align-items:center;gap:6px;margin-bottom:8px}.advanced-checkbox-group input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:#855}.advanced-checkbox-group label{font-size:11px;color:#f0f0f0;cursor:pointer;font-weight:500}.advanced-checkbox-group:hover label{color:#6cf}.advanced-checkbox-group input[type=checkbox]:disabled+label{color:#888}.advanced-select{width:100%;padding:6px 8px;background-color:#333;border:1px solid #4a90e2;border-radius:2px;color:#fff;font-family:monospace;font-size:12px;cursor:pointer}.advanced-select:focus{outline:none;border-color:#6cf}.advanced-select option{font-family:monospace;font-size:12px;background-color:#333;color:#fff}.advanced-file-selector{background-color:#1e232dfa;border:1px solid #4a90e2;border-radius:3px;padding:10px;margin-top:10px}.advanced-file-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;font-weight:700;color:#6cf;text-transform:uppercase;letter-spacing:.5px}.advanced-close-button{background:none;border:none;color:#d0d0d0;font-size:20px;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center}.advanced-close-button:hover{color:#6cf;background-color:#6cf3;border-radius:2px}.advanced-file-list{max-height:200px;overflow-y:auto;margin-bottom:10px;border:1px solid #4a90e2;border-radius:2px;background-color:#2a2a2a}.advanced-file-item{padding:8px 10px;font-size:11px;color:#f0f0f0;cursor:pointer;border-bottom:1px solid #2a3040;transition:background-color .2s ease}.advanced-file-item:last-child{border-bottom:none}.advanced-file-item:hover{background-color:#252b38;color:#6cf}.advanced-file-item.selected{background-color:#855;color:#fff;font-weight:700}.advanced-file-item-empty{padding:20px 10px;font-size:11px;color:#999;text-align:center;font-style:italic}.advanced-operation-section ::-webkit-scrollbar{width:8px}.advanced-operation-section ::-webkit-scrollbar-track{background:#1a1f28cc;border-radius:4px}.advanced-operation-section ::-webkit-scrollbar-thumb{background:#4a90e299;border-radius:4px}.advanced-operation-section ::-webkit-scrollbar-thumb:hover{background:#6cfc}.advanced-operation-section *{scrollbar-width:thin;scrollbar-color:rgba(74,144,226,.6) rgba(26,31,40,.8)}.remesh-action-overlay{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:2000;background:#000000eb;padding:16px 20px;border-radius:8px;border:2px solid #4a90e2;box-shadow:0 4px 16px #000000b3;min-width:360px;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.remesh-action-buttons{display:flex;gap:12px;margin-bottom:12px;justify-content:center}.remesh-accept-button,.remesh-reject-button{flex:1;padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-weight:700;font-size:13px;transition:all .2s ease;min-width:140px}.remesh-accept-button{background:#28a745;color:#fff}.remesh-accept-button:hover:not(:disabled){background:#218838;box-shadow:0 2px 8px #28a74580;transform:translateY(-1px)}.remesh-accept-button:active:not(:disabled){background:#1e7e34;transform:translateY(0)}.remesh-reject-button{background:#dc3545;color:#fff}.remesh-reject-button:hover:not(:disabled){background:#c82333;box-shadow:0 2px 8px #dc354580;transform:translateY(-1px)}.remesh-reject-button:active:not(:disabled){background:#bd2130;transform:translateY(0)}.remesh-accept-button:disabled,.remesh-reject-button:disabled{opacity:.5;cursor:not-allowed}.remesh-action-hint{font-size:11px;color:#d0d0d0;text-align:center;line-height:1.4;padding:0 8px}*{font-size:14px}.sub-panel-content{display:flex;flex-direction:column;gap:2px}.text-row{display:grid;grid-template-columns:1fr 10px 120px 80px;background-color:var(--color-bg-row);color:var(--color-text-light);align-items:center;justify-content:center;background-color:var(--color-bg-header-footer);background-color:#333;height:24px}.text-row label{color:var(--color-text-light);display:flex;flex-direction:row;text-align:right;height:100%;align-items:center;justify-content:right;width:100%;padding-right:4px}.text-row input{border:none;background:none;padding:0;margin:0;font:inherit;color:var(--color-text-light);outline:none;outline-color:var(--color-accent-active);border:1px solid var(--color-text-dark);font-size:12px;background-color:var(--color-bg-button-disabled);border:1px solid var(--color-accent)}.text-row select{all:unset;outline:none;display:flex;flex-direction:row;align-items:center;justify-content:center;background-color:var(--color-bg-button-disabled);border:1px solid var(--color-bg-button-default);border-radius:var(--border-radius-sm)}.text-row select option{background-color:var(--color-bg-button-disabled);color:var(--color-text-light);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.unit{height:24px;font-size:14px;font-style:italic;width:100%;display:flex;flex-direction:row;align-items:center;justify-content:left}.unit *{font-style:italic}.scheme-row{display:grid;grid-template-columns:1fr 10px 20px;align-items:center;justify-content:center;background-color:#333;padding:0 2px;width:100%}.scheme-row label{height:100%;display:flex;flex-direction:row;align-items:center;justify-content:right;text-align:right;width:100%;padding-right:4px}.scheme-button{all:unset;cursor:pointer;height:20px;width:20px;display:flex;flex-direction:row;align-items:center;justify-content:center;background-color:var(--color-bg-button-default);border-radius:var(--border-radius-sm)}.scheme-button:hover{background-color:var(--color-accent-active);cursor:default}.active{background-color:var(--color-accent)}.scheme-sub-row{display:grid;grid-template-columns:40px 1fr 10px 120px 120px 120px;align-items:center;justify-content:center;width:100%}.solution-row{display:grid;grid-template-columns:1fr 10px 50px;align-items:center;justify-content:center}.para-row{display:grid;grid-template-columns:1fr 10px 180px}.para-row label{height:100%;display:flex;flex-direction:row;align-items:center;justify-content:right;text-align:right;width:100%;padding-right:4px}.para-row label div{width:8px;height:8px;border-radius:4px;background-color:var(--color-bg-button-default)}.run-button{width:100%;height:100%;border-radius:var(--border-radius-sm);background-color:var(--border-color-light)}.mathUnitSup{font-size:12px}.symbol{transform:scale(1.4) translateY(-3px) translate(-3px);transform-origin:center}.mathUnit{display:flex;flex-direction:row;align-items:center;justify-content:left;width:100%;height:100%;overflow-x:auto;white-space:nowrap}.mathUnitInput{width:100%;height:100%;border:none;background:none;padding:0;margin:0;font:inherit;color:var(--color-text-light);outline:none;outline-color:var(--color-accent-active);border:1px solid var(--color-text-dark);background-color:var(--color-bg-button-disabled);border:1px solid var(--color-accent)}.start-button-row{display:flex;justify-content:space-evenly;align-items:center;flex-direction:row;background-color:var(--color-bg-header-footer)}.start-button-row img{height:24px;padding:2px}.scheme-expanded-container{background-color:#2a2a2a;padding:4px;display:flex;flex-direction:column;gap:2px;border-left:2px solid #555}.scheme-field-wrapper{margin-bottom:2px}.scheme-field-header{display:flex;align-items:center;gap:6px;padding:2px 6px;background-color:#333;border-radius:2px}.scheme-field-header label{flex:1;font-size:14px;text-align:left;justify-content:left;padding-right:0}.scheme-field-content{margin-top:2px;margin-left:24px;display:flex;flex-direction:column;gap:4px}.scheme-property-row{display:flex;gap:4px;align-items:center}.scheme-property-label{min-width:120px;font-size:12px;color:#aaa}.scheme-property-input{flex:1;background:#444;border:1px solid #666;color:#fff;padding:4px 8px;font-size:14px;border-radius:2px}.scheme-property-select{flex:1;background:#444;border:1px solid #666;color:#fff;padding:4px 8px;font-size:14px;border-radius:2px;cursor:pointer}.scheme-help-text{font-size:12px;color:#888;font-style:italic;margin-bottom:4px}.add-entry-button{height:24px;background:#444;border:1px solid #666;color:#fff;border-radius:2px;cursor:pointer;font-size:14px}.add-entry-button:hover{background:#555}.param-grid-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.param-label{font-size:12px;color:#aaa;display:block;margin-bottom:4px}.param-input-base{width:100%;background:#444;border:1px solid #555;color:#fff;padding:2px;border-radius:3px;font-size:12px}.info-grid-row{font-size:12px;color:#888;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:8px;border-bottom:1px solid #444}.info-item{display:flex;align-items:center;gap:4px}.bc-tooltip{padding:8px;background:#2a2a2a;border-left:3px solid #4a90e2;border-radius:3px;font-size:12px}.param-section-header{margin-top:12px;padding-top:8px;border-top:1px solid #444}.param-section-title{font-size:12px;color:#888;margin-bottom:4px}.param-wrapper{margin-top:12px}.param-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.param-name{font-size:12px;color:#ccc}.suggestion-container{display:flex;gap:4px;margin-bottom:2px;flex-wrap:wrap}.suggestion-btn{padding:4px 8px;font-size:12px;background:#555;border:none;color:#fff;border-radius:2px;cursor:pointer}.vector-container{display:flex;gap:4px}.vector-component{flex:1}.vector-label{font-size:12px;color:#888;text-align:center;margin-bottom:2px}.param-input-scalar{width:100%;background:#444;border:1px solid #555;color:#fff;border-radius:2px;font-size:12px;padding:2px 4px}.param-input-vector{width:100%;background:#444;border:1px solid #555;color:#fff;padding:2px;border-radius:2px;text-align:center;font-size:12px}.patch-label{cursor:pointer;font-weight:400;flex:1}.patch-type-select{background:#444;color:#ccc;border:1px solid #666;padding:2px 4px;border-radius:2px;font-size:12px;width:100px;margin-right:8px}.preview-container{display:flex;flex-direction:column;height:100%;overflow:hidden;background-color:#1e1e1e}.preview-header-bar{display:flex;justify-content:space-between;align-items:center;background-color:#252526;padding:0 10px;height:35px;border-bottom:1px solid #3e3e42}.preview-tab-group{display:flex;height:100%}.preview-tab-btn{padding:8px 12px;background:transparent;color:#969696;border:none;border-top:1px solid transparent;cursor:pointer;font-size:12px;outline:none}.preview-tab-btn.active{background:#1e1e1e;color:#fff;border-top:1px solid #007acc}.preview-action-btn{background:transparent;border:1px solid #3e3e42;color:#ccc;padding:2px 8px;font-size:12px;cursor:pointer;border-radius:2px}.preview-content-area{flex:1;overflow-y:auto;padding:16px}.preview-code{margin:0;font-family:Consolas,Monaco,monospace;font-size:13px;color:#d4d4d4;white-space:pre-wrap}.validation-hint-container{margin-top:24px;font-size:12px;border-top:1px solid #333;padding-top:12px}.boundary-row{display:grid;grid-template-columns:1fr 10px 120px 20px;background-color:#333;color:var(--color-text-light);align-items:center;justify-content:center;height:24px;padding:0 2px;width:100%}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size3-Regular-gV2CO0n9.woff2) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.27"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.preview-panel{display:flex;flex-direction:column;height:100%;background-color:#1a1a1a;border-left:2px solid #444}.preview-panel-collapsed{display:flex;align-items:flex-start;background-color:#1a1a1a;border-left:2px solid #444;padding:8px 0}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#252525;border-bottom:1px solid #333}.preview-tabs{display:flex;gap:4px}.preview-tab{padding:6px 12px;background-color:#333;border:1px solid #444;color:#aaa;cursor:pointer;font-size:12px;border-radius:3px;transition:all .2s}.preview-tab:hover{background-color:#3a3a3a;color:#fff}.preview-tab.active{background-color:#4a90e2;color:#fff;border-color:#4a90e2}.preview-actions{display:flex;gap:6px;align-items:center}.preview-action-btn{padding:4px 10px;background-color:#333;border:1px solid #555;color:#fff;cursor:pointer;font-size:11px;border-radius:3px;transition:background-color .2s}.preview-action-btn:hover{background-color:#444}.preview-toggle-btn{padding:4px 8px;background-color:#444;border:1px solid #555;color:#fff;cursor:pointer;font-size:12px;border-radius:3px;transition:background-color .2s}.preview-toggle-btn:hover{background-color:#555}.preview-content{flex:1;overflow:auto;padding:12px;background-color:#1a1a1a}.preview-content pre{margin:0;font-family:Courier New,monospace;font-size:12px;line-height:1.5;color:#ddd}.preview-content code{display:block;white-space:pre}.preview-content::-webkit-scrollbar{width:8px;height:8px}.preview-content::-webkit-scrollbar-track{background:#1a1a1a}.preview-content::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.preview-content::-webkit-scrollbar-thumb:hover{background:#555}.boundary-info,.file-info{width:100%;padding:8px}.info-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;font-size:12px}.info-label{color:var(--color-text-muted);font-weight:700;min-width:80px}.info-value{color:#fff;text-align:right;max-width:110px;word-wrap:break-word}.info-value.success{color:var(--color-success);font-weight:700}.info-value.error{color:#ff6b6b;font-weight:700}.file-path{font-family:Courier New,Courier,monospace;font-size:11px}.patches-section{width:100%;padding:8px}.section-header{color:var(--color-text-muted);font-size:12px;font-weight:700;margin-bottom:8px;text-align:center}.patches-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin-top:8px}.patch-item{background-color:var(--color-bg-subpanel);border:1px solid var(--border-color-dark);border-radius:3px;padding:4px 6px;text-align:center}.patch-name{color:#fff;font-size:11px;font-family:Courier New,Courier,monospace}.main-panel.panel--boundary{width:164px}.sub-panel--boundary{width:100%}.panel-header--boundary{background-color:var(--border-color-dark);color:#fff}.extended-info{width:100%;padding:8px}.info-grid{display:flex;flex-direction:column;gap:6px}.url-text{font-family:Courier New,Courier,monospace;font-size:10px;word-break:break-all;max-width:180px}:root{--color-primary: #007bff;--color-primary-active: #0056b3;--color-primary-highlight: rgba(0, 123, 255, .25);--color-accent: #834800;--color-accent-active: #b8860b;--color-success: #4CAF50;--color-success-active: darkgreen;--color-danger: #ff6b6b;--color-danger-active: darkred;--color-bg-app: #555;--color-bg-header-footer: #222;--color-bg-panel: #666;--color-bg-subpanel: #666;--color-bg-row: #111;--color-bg-input: #f0f0f0;--color-bg-button-default: #666;--color-bg-button-disabled: #444;--color-text-light: #fff;--color-text-dark: #000;--color-text-muted: #ccc;--border-color-light: #999;--border-color-dark: #666;--border-radius-sm: 2px;--border-radius-md: 4px;--border-radius-lg: 8px}.sidebar{font-size:small;height:72vh;position:absolute;top:40px;left:48px;z-index:1000;width:0}.sidebar li{list-style-type:none;background-color:var(--color-bg-input);color:var(--color-bg-header-footer);margin:56px 0;padding:0;cursor:pointer;text-align:center;transform-origin:0 0;transform:rotate(-90deg) translate(-85px) translateY(-40px);border:1px solid var(--color-danger-active);border-radius:var(--border-radius-md);width:80px;font-size:16px;height:22px;display:flex;align-items:center;justify-content:center}.sidebar li:hover{background-color:var(--color-text-muted)}.sidebar li.active{background-color:var(--color-accent);color:#fff}.app{height:100%;width:100%;display:flex;flex-direction:column;background-color:var(--color-bg-app)}.header{color:#fff;padding:0 24px;display:flex;flex-direction:row;justify-content:space-between;align-items:center;background-color:var(--color-bg-header-footer)}.header-right{display:flex;flex-direction:row;gap:8px;margin:auto 0;padding:6px 10px;align-items:center;justify-content:center}.header-right>a,.header-right>button{display:flex;align-items:center;justify-content:center;padding:6px;margin:0;background-color:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:6px;transition:all .2s ease;cursor:pointer;min-width:40px;min-height:40px}.header-right>a:hover,.header-right>button:hover{background-color:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}.header-right>a:active,.header-right>button:active{transform:translateY(0)}.header-right img{display:block;height:28px;width:auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}@media(max-width:768px){.header-right{gap:6px;padding:4px 8px}.header-right>a,.header-right>button{padding:4px;min-width:36px;min-height:36px}.header-right img{height:24px}}.content{display:flex;flex-direction:column;background-color:var(--color-bg-app);min-height:50vh;flex:1}.page{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%}.footer{background-color:var(--color-bg-header-footer);color:#fff;padding:10px 50px;display:flex;justify-content:space-between;justify-items:right;flex-direction:row;align-items:center}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.buttonIcon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-button-default);margin:0;padding:0;border:none;overflow:hidden;cursor:pointer;border-radius:var(--border-radius-sm);border:1px solid var(--color-text-dark);transition:.2s ease-in-out}.buttonIcon:hover{background-color:var(--color-accent)}.icons{width:100%;height:100%;padding:4px;box-sizing:border-box;border-radius:var(--border-radius-sm)}.main-panel{position:absolute;border-radius:var(--border-radius-md);background-color:var(--color-bg-panel);padding:5px;max-height:calc(100vh - 120px);overflow-y:auto;overflow-x:hidden}.main-panel::-webkit-scrollbar{width:8px}.main-panel::-webkit-scrollbar-track{background:#1a1f28cc;border-radius:4px}.main-panel::-webkit-scrollbar-thumb{background:#4a90e299;border-radius:4px}.main-panel::-webkit-scrollbar-thumb:hover{background:#6cfc}.main-panel{scrollbar-width:thin;scrollbar-color:rgba(74,144,226,.6) rgba(26,31,40,.8)}.sub-panel{font-size:14px;padding:5px;margin:1px;border:1px solid var(--border-color-light);border-radius:var(--border-radius-sm);background-color:var(--color-bg-subpanel)}.mesh-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;width:100%;z-index:100;background-color:#ffffffe1}.panel-header{font-size:16px;font-weight:400;color:#fff;background-color:var(--border-color-dark);text-align:center;border-radius:var(--border-radius-sm)}.sub-panel-header{font-size:14px;font-weight:400;color:#fff;text-align:center;margin:0;padding:4px 0}.geo-input{display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--border-radius-sm)}.geo-input input[type=checkbox]{width:14px;height:14px;appearance:none;-webkit-appearance:none;border-radius:3px;cursor:pointer;position:relative;background-color:var(--color-text-muted);border:1px solid}.geo-input input[type=checkbox]:checked:after{content:"✓";color:#fff;font-size:12px;position:absolute;top:-2px;left:1px}.geo-input input[type=checkbox]:checked{background-color:var(--border-color-dark);border-color:#90ee90}.geo-button-row{display:flex;flex-direction:row;background-color:var(--color-bg-row);width:100%;overflow:hidden;height:36px;align-items:center;border-radius:3px}.box-wrap{display:flex;flex-direction:row;align-items:center;justify-content:center;width:36px;height:36px;background-color:#888}.no-hover-effect button:hover{background-color:var(--color-bg-button-default)!important;cursor:default}.auth-overlay{position:relative}.auth-container{position:absolute;left:0;top:0;background-color:#00000080;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2000}.auth-modal{background-color:#e0e0e0;padding:1rem;border-radius:8px;width:100%;max-width:400px;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:0 .5rem;position:absolute;top:0;right:0}.form-group{margin-bottom:1rem;width:100%}.form-group label{display:block;margin:0 0 .5rem;font-size:.95rem;font-weight:500}.form-group input{width:100%;padding:.7rem;border:1px solid lightslategray;box-shadow:inset 0 2px 8px #0003;font-size:.95rem;border-radius:4px;color:#000}.submit-button{width:100%;padding:.7rem;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s}.submit-button:hover{background:#0056b3}.modal-footer{margin-top:1.5rem;text-align:center}.modal-footer p{margin:.5rem 0}.modal-footer button{background:none;border:none;color:#007bff;text-decoration:underline;cursor:pointer;padding:0;font-size:.9rem;transition:color .2s}.modal-footer button:hover{color:#0056b3}.auth-form{display:flex;flex-direction:column;align-items:center;position:relative}.auth-error{display:flex;justify-content:space-between;align-items:center;color:#d32f2f;background-color:#fddede;border:1px solid #d32f2f;border-radius:4px;padding:.7rem;margin-bottom:1rem;width:100%;text-align:left}.close-error-button{background:none;border:none;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;margin-left:.5rem;color:#d32f2f;opacity:.7;transition:opacity .2s}.close-error-button:hover{opacity:1}.session-info{padding:1rem;display:flex;flex-direction:column;gap:1rem}.session-info h3{margin:0 0 .5rem;font-size:1.2rem;color:#333;text-align:center}.session-description{color:#666;font-size:.9rem;margin:0 0 1rem;text-align:center;line-height:1.4}.session-id-container{display:flex;flex-direction:column;gap:.5rem}.session-id-container label{font-size:.85rem;font-weight:600;color:#555}.session-id-display{display:flex;align-items:center;gap:.5rem;background:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:.5rem}.session-id{flex:1;font-family:Courier New,monospace;font-size:.75rem;color:#007bff;word-break:break-all;background:none;border:none;padding:0}.copy-button{background:#007bff;border:none;border-radius:4px;padding:.3rem .5rem;cursor:pointer;font-size:1rem;transition:background .2s;min-width:32px}.copy-button:hover{background:#0056b3}.session-actions{display:flex;gap:.5rem;margin-top:.5rem}.login-button,.signup-button{flex:1;padding:.7rem;border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .2s}.login-button{background:#007bff;color:#fff}.login-button:hover{background:#0056b3}.signup-button{background:#007bff;color:#fff;border:1px solid #0056b3}.signup-button:hover{background:#0056b3}.session-note{font-size:.85rem;color:#666;text-align:center;margin:.5rem 0 0;font-style:italic}.guest-button{width:100%;padding:.75rem;background:#28a745;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.guest-button:hover{background:#218838;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.disconnect-button{width:100%;padding:.75rem;background:#dc3545;color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.disconnect-button:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 2px 4px #0003}.auth-loading-overlay{position:fixed;inset:0;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:9999;backdrop-filter:blur(4px)}.auth-loading-content{background:#fff;border-radius:12px;padding:2.5rem;text-align:center;max-width:450px;box-shadow:0 10px 40px #0000004d;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.auth-loading-content h3{margin:1.5rem 0 .5rem;font-size:1.4rem;color:#333;font-weight:600}.auth-loading-content>p{color:#666;font-size:.95rem;margin:.5rem 0 1.5rem;line-height:1.5}.auth-loading-tips{background:#f8f9fa;border-left:4px solid #007bff;padding:1rem;border-radius:4px;margin-top:1.5rem}.auth-loading-tips p{margin:0;color:#555;font-size:.9rem;line-height:1.6}.auth-spinner{width:60px;height:60px;margin:0 auto;border:5px solid #f3f3f3;border-top:5px solid #007bff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.password-protection-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000}.password-protection-modal{background:#fff;border-radius:8px;padding:2rem;max-width:400px;width:90%;position:relative;box-shadow:0 4px 6px #0000001a}.password-protection-modal .close-button{position:absolute;top:10px;right:10px;background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.password-protection-modal .close-button:hover{color:#000}.password-protection-content{text-align:center}.password-protection-content h3{margin-bottom:1rem;color:#333}.password-protection-content p{margin-bottom:1.5rem;color:#666}.password-protection-content form{display:flex;flex-direction:column;gap:1rem}.password-input{padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:16px;width:100%}.password-input:focus{outline:none;border-color:#4caf50}.error-message{color:#f44336;margin:0;font-size:14px}.button-group{display:flex;gap:1rem;justify-content:center}.submit-button,.cancel-button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.submit-button{background-color:#4caf50;color:#fff}.submit-button:hover{background-color:#45a049}.cancel-button{background-color:#f44336;color:#fff}.cancel-button:hover{background-color:#da190b}.faceValue-row{display:grid;grid-template-columns:1fr 10px 90px 90px;align-items:center;justify-content:left;background-color:#333;width:100%}.faceValue-input{width:80px}.isosurface-row{display:grid;grid-template-columns:1fr 10px 80px 80px;align-items:center;background-color:#333}.isosurface-row select{text-align:center;border:none;background-color:#333}.isosurface-value{display:flex;flex-direction:row;align-items:center;justify-content:center}.isosurface-value input{width:100%}.isosurface-value select{width:40px;background-color:#333}.view-container{display:flex;flex-direction:column;width:100%;background-color:#444}.view-row{display:grid;grid-template-columns:64px 10px 1fr;align-items:center;width:100%;height:28px}.view-row button{color:#fff;text-align:right;padding:4px;font-size:12px;margin:2px;width:60px;height:24px;background:transparent;border:1px solid white}.view-row label{color:#fff;text-align:right;padding:4px;font-size:12px;margin:2px;width:60px;height:24px}.view-row-input{display:flex;align-items:center;height:100%}.range-input-container{display:grid;grid-template-columns:1fr 1fr;align-items:center;justify-content:space-evenly;height:100%;width:100%;box-sizing:border-box;gap:8px}.range-input-container input{width:100%;box-sizing:border-box}.view-row-input>*{width:100%;box-sizing:border-box}.post-control{display:flex;flex-direction:row;align-items:center;justify-content:center;border-top:1px solid #666}.post-control label{text-align:right}.post-control input,.post-control select{border-radius:1px;background-color:#eee}.post-control-buttons{display:grid;grid-template-columns:1fr 36px 36px 36px;align-items:center;justify-content:center;width:100%;gap:1px}.post-control-buttons button{width:100%;height:36px}.post-control-buttons img{height:32px;width:100%}.color-legend{position:absolute;top:50px;right:20px;display:flex;flex-direction:column;background-color:#aaaaaae6;border-radius:5px;border:1px solid green;padding:10px;font-family:monospace;color:#fff;min-width:100px}.legend-title{font-size:14px;font-weight:700;text-align:center;margin-bottom:8px;background-color:#666;padding:4px;border-radius:3px}.legend-content{display:flex;flex-direction:column;align-items:center;gap:5px}.legend-canvas{border:1px solid #fff;border-radius:3px}.legend-max,.legend-min{font-size:12px;background-color:#666;padding:3px 6px;border-radius:3px;min-width:60px;text-align:center}.legend-component-select{background-color:#555;color:#fff;border:1px solid #888;border-radius:4px;padding:4px 8px;font-size:13px;font-weight:700;font-family:monospace;cursor:pointer;outline:none;transition:all .2s ease}.legend-component-select:hover{background-color:#666;border-color:#aaa}.legend-component-select:focus{border-color:green;box-shadow:0 0 3px #00ff004d}.legend-component-select option{background-color:#333;color:#fff;padding:4px}.legend-component-select-subscript{background-color:transparent;color:#fff;border:none;border-radius:3px;padding:1px 4px;font-size:10px;font-weight:700;font-family:monospace;cursor:pointer;outline:none;transition:all .2s ease;vertical-align:baseline;position:relative;top:2px;width:35px;text-align:left;appearance:none;-webkit-appearance:none;-moz-appearance:none}.legend-component-select-subscript:hover{background-color:#ffffff1a;border:none}.legend-component-select-subscript:focus{border:none;box-shadow:none}.legend-component-select-subscript option{background-color:#333;color:#fff;padding:2px;font-size:10px}.chatbot-container{position:fixed;bottom:60px;right:50%;z-index:1000}.chat-toggle-button{background-color:#555;color:#fff;border:none;border-radius:50%;width:60px;height:60px;font-size:16px;font-family:monospace;cursor:pointer;box-shadow:0 4px 8px #0003;display:flex;justify-content:center;align-items:center;transition:background-color .3s}.chat-toggle-button:hover{background-color:#333}.chat-window{position:fixed;top:0;left:0;min-width:500px;min-height:400px;max-width:1200px;background-color:#1a1a1a;border-radius:10px;box-shadow:0 5px 15px #00000080;display:flex;flex-direction:column;overflow:hidden;border:1px solid #333;color:#d3d3d3;font-family:monospace}.chat-header{background-color:#252525;padding:10px 15px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #333;cursor:move}.chat-header p{margin:0;font-weight:700;color:#d3d3d3}.font-size-controls{display:flex;gap:4px;cursor:default}.font-size-btn{background-color:#333;color:#e0e0e0;border:1px solid #444;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;min-width:32px}.font-size-btn:hover{background-color:#444;border-color:#4a90e2}.font-size-btn.active{background-color:#4a90e2;border-color:#4a90e2;color:#fff}.chat-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#d3d3d3}.chat-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-messages{flex-grow:1;padding:15px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:12px;min-height:0;max-height:100%}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:#1a1a1a}.chat-messages::-webkit-scrollbar-thumb{background:#444;border-radius:4px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#555}.message{padding:12px 16px;border-radius:12px;max-width:85%;word-wrap:break-word;overflow-wrap:break-word;line-height:1.4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.message.user{background-color:#4a90e2;color:#fff;align-self:flex-end;white-space:pre-wrap}.message.bot{background-color:#252525;color:#e0e0e0;align-self:flex-start;border:1px solid #3a3a3a}.message.bot p{margin:0 0 8px;font-size:inherit}.message.bot p:last-child{margin-bottom:0}.message.bot p:first-child{margin-top:0}.message.bot h1,.message.bot h2,.message.bot h3,.message.bot h4{margin:12px 0 6px;color:#fff;font-weight:600;line-height:1.3}.message.bot h1:first-child,.message.bot h2:first-child,.message.bot h3:first-child,.message.bot h4:first-child{margin-top:0}.message.bot h1{font-size:1.43em}.message.bot h2{font-size:1.29em}.message.bot h3{font-size:1.14em}.message.bot h4{font-size:1em}.message.bot ul,.message.bot ol{margin:6px 0;padding-left:24px}.message.bot li{margin:2px 0;line-height:1.4;font-size:inherit}.message.bot strong{color:#fff;font-weight:600;font-size:inherit}.message.bot em{font-style:italic;font-size:inherit}.message.bot blockquote{border-left:3px solid #555;padding-left:12px;margin:4px 0;color:#bbb;font-size:inherit}.message code,.message .inline-code{background-color:#00000080;padding:2px 6px;border-radius:4px;font-family:Courier New,Consolas,monospace;font-size:.93em;color:#a8e6cf}.code-block-wrapper{background-color:#0009;border-radius:6px;margin:4px 0;border:1px solid rgba(255,255,255,.1);overflow:hidden}.code-block-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#0006;border-bottom:1px solid rgba(255,255,255,.1)}.code-language{font-size:.86em;color:#888;text-transform:uppercase;font-weight:600;letter-spacing:.5px}.code-block-actions{display:flex;gap:8px}.copy-button{background-color:#4a90e233;color:#4a90e2;border:1px solid #4a90e2;border-radius:4px;padding:4px 12px;font-size:.86em;cursor:pointer;transition:all .2s;font-weight:500}.copy-button:hover{background-color:#4a90e24d}.copy-button:active{transform:scale(.95)}.save-button{background-color:#4caf5033;color:#4caf50;border:1px solid #4caf50;border-radius:4px;padding:4px 12px;font-size:.86em;cursor:pointer;transition:all .2s;font-weight:500}.save-button:hover:not(:disabled){background-color:#4caf504d}.save-button:active:not(:disabled){transform:scale(.95)}.save-button:disabled{opacity:.6;cursor:not-allowed}.apply-button{background-color:#9c27b033;color:#9c27b0;border:1px solid #9c27b0;border-radius:4px;padding:4px 12px;font-size:.86em;cursor:pointer;transition:all .2s;font-weight:500}.apply-button:hover:not(:disabled){background-color:#9c27b04d}.apply-button:active:not(:disabled){transform:scale(.95)}.apply-button:disabled{opacity:.6;cursor:not-allowed}.compare-button{background-color:#ff980033;color:#ff9800;border:1px solid #ff9800;border-radius:4px;padding:4px 12px;font-size:.86em;cursor:pointer;transition:all .2s;font-weight:500}.compare-button:hover{background-color:#ff98004d}.compare-button:active{transform:scale(.95)}.comparison-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:2000;animation:fadeIn .2s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.comparison-modal{background-color:#1e1e1e;border-radius:8px;width:90%;max-width:1400px;height:85%;max-height:900px;display:flex;flex-direction:column;box-shadow:0 10px 40px #00000080;border:1px solid #333;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.comparison-modal-header{padding:16px 20px;background-color:#252525;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;border-radius:8px 8px 0 0}.comparison-modal-header h3{margin:0;color:#e0e0e0;font-size:18px;font-weight:600}.comparison-close-btn{background:none;border:none;font-size:28px;color:#888;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.comparison-close-btn:hover{background-color:#ffffff1a;color:#fff}.comparison-modal-body{flex:1;overflow:hidden;padding:20px}.comparison-loading,.comparison-error{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:#888}.comparison-error{color:#f44336}.comparison-container{display:flex;gap:20px;height:100%}.comparison-pane{flex:1;display:flex;flex-direction:column;background-color:#2d2d2d;border-radius:6px;overflow:hidden;border:1px solid #444}.comparison-pane-header{padding:12px 16px;background-color:#252525;border-bottom:1px solid #444;display:flex;justify-content:space-between;align-items:center}.comparison-label{font-weight:600;color:#e0e0e0;font-size:14px}.comparison-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.chat-badge{background-color:#4caf5033;color:#4caf50;border:1px solid #4caf50}.original-badge{background-color:#4a90e233;color:#4a90e2;border:1px solid #4a90e2}.comparison-content{flex:1;padding:16px;overflow:auto;font-family:Courier New,Consolas,Monaco,monospace;font-size:13px;line-height:1.5;color:#a8e6cf;background-color:#1e1e1e;margin:0;white-space:pre-wrap;word-wrap:break-word}.comparison-content::-webkit-scrollbar{width:10px;height:10px}.comparison-content::-webkit-scrollbar-track{background:#2d2d2d}.comparison-content::-webkit-scrollbar-thumb{background:#555;border-radius:5px}.comparison-content::-webkit-scrollbar-thumb:hover{background:#666}.comparison-divider{width:2px;background:linear-gradient(to bottom,transparent 0%,#444 20%,#444 80%,transparent 100%);align-self:stretch}.comparison-modal-footer{padding:12px 20px;background-color:#252525;border-top:1px solid #333;border-radius:0 0 8px 8px}.comparison-note{margin:0;font-size:13px;color:#888}.comparison-note code{background-color:#0006;padding:2px 6px;border-radius:3px;font-family:Courier New,Consolas,Monaco,monospace;color:#a8e6cf}.code-block-wrapper pre{background-color:transparent;padding:12px;margin:0;overflow-x:auto;border:none}.code-block-wrapper pre code{background-color:transparent;padding:0;color:#a8e6cf;font-size:.93em;line-height:1.2}.chat-input-area{display:flex;padding:12px;border-top:1px solid #333;background-color:#252525;gap:8px}.chat-input-area input{flex-grow:1;border:1px solid #444;background-color:#1a1a1a;color:#e0e0e0;border-radius:20px;padding:10px 15px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;outline:none}.chat-input-area input:focus{border-color:#4a90e2}.chat-input-area button{background-color:#4a90e2;color:#fff;border:none;border-radius:20px;padding:10px 20px;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;transition:background-color .2s;font-weight:500}.chat-input-area button:hover:not(:disabled){background-color:#357abd}.chat-input-area button:disabled{opacity:.5;cursor:not-allowed}.typing-indicator{display:flex;gap:4px;padding:8px 0}.typing-indicator span{width:8px;height:8px;background-color:#888;border-radius:50%;animation:typing-pulse 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-pulse{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.attribution{text-align:center;padding:8px 12px;font-size:10px;color:#fff;background-color:#1a1a1a;border-top:1px solid #333;line-height:1.4}.resize-handle{position:absolute;top:0;right:0;width:10px;height:100%;cursor:ew-resize;z-index:10}.resize-handle:hover{background-color:#4a90e233}.resize-handle:active{background-color:#4a90e24d}.resize-handle-vertical{position:absolute;bottom:0;left:0;width:100%;height:10px;cursor:ns-resize;z-index:10}.resize-handle-vertical:hover{background-color:#4a90e233}.resize-handle-vertical:active{background-color:#4a90e24d}.session-timer{display:flex;align-items:center;justify-content:center;gap:.3rem;padding:6px 12px;border-radius:6px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:.9rem;font-weight:600;letter-spacing:.5px;transition:all .3s ease;user-select:none;min-width:40px;min-height:40px;border:1px solid transparent}.session-timer .timer-text{min-width:55px;text-align:center}.session-timer.normal{color:#4caf50;background-color:#4caf5026;border-color:#4caf504d}.session-timer.normal:hover{background-color:#4caf5040;border-color:#4caf5080;transform:translateY(-1px)}.session-timer.caution{color:#ffb84d;background-color:#ffb84d26;border-color:#ffb84d66}.session-timer.caution:hover{background-color:#ffb84d40;border-color:#ffb84d99;transform:translateY(-1px)}.session-timer.warning{color:#ff6b6b;background-color:#ff6b6b26;border-color:#ff6b6b66;font-weight:700}.session-timer.warning:hover{background-color:#ff6b6b40;border-color:#ff6b6b99;transform:translateY(-1px)}.session-timer.critical{color:#f44;background-color:#f443;border-color:#f449;font-weight:700;animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #f446}50%{opacity:.9;box-shadow:0 0 0 6px #f440}}@media(max-width:768px){.session-timer{font-size:.85rem;padding:4px 8px;min-width:36px;min-height:36px}.session-timer .timer-text{min-width:48px}}
