html,body,#root{width:100%}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.component-container{margin-bottom:20px;display:flex;flex-direction:column;align-items:center;padding:15px;background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 4px #0000001a}.route-select-title{font-size:1.2em;color:#414141;margin-bottom:5px;margin-top:0;text-align:center;padding:0%}.route-select-title{font-size:1.2em;color:#333;margin-bottom:10px;width:100%}.route-select{width:100%;padding:10px;font-size:16px;border:1px solid #ccc;border-radius:4px;background-color:#fff;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;utf8,<svg fill="black" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>');background-repeat:no-repeat;background-position-x:95%;background-position-y:50%;cursor:pointer}.route-select:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033}.route-select option{padding:10px}.file-explorer-title{color:#333;margin-bottom:20px}.file-input-label{display:inline-block;padding:10px 20px;background-color:#4caf50;color:#fff;border-radius:4px;cursor:pointer;transition:background-color .3s}.export-button{display:flex;background-color:#4caf50;color:#fff;border-radius:4px;margin-bottom:0}.file-input-label:hover{background-color:#45a049}.file-input{display:none}.file-name{margin-top:10px;font-style:italic;color:#666}.api-settings-section{margin-top:16px;padding:12px 15px;background-color:#f5f5f5;border-radius:8px;box-shadow:0 2px 4px #0000001a}.api-settings-title{margin:0 0 10px;font-size:1em;color:#333;font-weight:600}.api-settings-field{margin-bottom:10px}.api-settings-label{display:block;font-size:.8em;color:#555;margin-bottom:4px;font-weight:500}.api-settings-input{width:100%;padding:6px 8px;font-size:12px;border:1px solid #ccc;border-radius:4px;background-color:#fff;box-sizing:border-box;color:#333}.api-settings-input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033}.draw-reaction-sidebar-btn{width:100%;padding:10px 16px;background-color:#1976d2;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease;margin-bottom:8px}.draw-reaction-sidebar-btn:hover{background-color:#1565c0}.draw-reaction-sidebar-btn:active{transform:scale(.98)}.single-reaction-input{margin:20px 0;padding:15px;background-color:#f9f9f9;border-radius:8px;border:1px solid #ddd}.single-reaction-input label{display:block;margin-bottom:8px;font-weight:600;font-size:14px;color:#333}.single-reaction-input input{width:100%;padding:10px;margin-bottom:10px;border:1px solid #ccc;border-radius:4px;font-size:13px;font-family:Courier New,monospace;box-sizing:border-box}.single-reaction-input input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 2px #4caf501a}.single-reaction-input button{width:100%;padding:10px;background-color:#4caf50;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .3s}.single-reaction-input button:hover{background-color:#45a049}.single-reaction-input button:active{background-color:#3d8b40}.gear-icon-container{cursor:pointer;display:inline-block}.gear-icon-svg{display:block}.gear-icon-circle{transition:fill .3s ease}.gear-icon-container:hover .gear-icon-circle{fill:#ccc!important}.gear-icon-container.has-mechanism .gear-icon-circle{fill:#b9ffb4}@keyframes rotate-clockwise{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotate-counter-clockwise{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}@keyframes pulse-glow{0%{fill:#999}50%{fill:#ff9800}to{fill:#999}}.gear-icon-container.is-loading .gear-icon-circle{animation:pulse-glow 2s ease-in-out infinite}.gear-icon-container.is-loading .cog-left{animation:rotate-counter-clockwise 2s linear infinite;transform-origin:55.206947px 95.762619px}.gear-icon-container.is-loading .cog-right{animation:rotate-clockwise 4s linear infinite;transform-origin:74.226196px 87.532715px}.gear-icon-container.is-loading:hover .gear-icon-circle{animation:pulse-glow 2s ease-in-out infinite}.mechanism-menu-backdrop{position:fixed;inset:0;background:transparent;z-index:999}.mechanism-menu{position:fixed;width:200px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;padding:8px;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mechanism-menu-button{width:100%;padding:12px 16px;margin:4px 0;border:none;background:#f5f5f5;border-radius:6px;font-size:14px;color:#000;cursor:pointer;transition:all .2s ease;text-align:left;font-family:inherit}.mechanism-menu-button:hover{background:#e3f2fd;transform:translate(4px)}.mechanism-menu-button:active{transform:translate(4px) scale(.98)}.mechanism-menu-button-view{background:#e8f5e9;color:#2e7d32;font-weight:500;border-top:1px solid #c8e6c9;margin-top:8px}.mechanism-menu-button-view:hover{background:#c8e6c9}.mechanism-menu-button-clear{background:#fff8e1;color:#6d4c00;font-weight:500;border-top:1px solid #ffe082;border-bottom:1px solid #ffe082}.mechanism-menu-button-clear:hover{background:#ffe082}.structure-editor-wrapper{width:100%;height:100%;min-height:450px;display:flex;flex-direction:column;background:#fff;position:relative}.structure-editor-container{flex:1 1 auto;width:100%;min-height:400px;height:100%;overflow:hidden;position:relative;display:flex;flex-direction:column}.structure-editor-container>div{flex:1;height:100%}.structure-editor-controls{display:flex;justify-content:center;gap:12px;padding:10px;background:#f5f5f5;border-top:1px solid #ddd}.structure-editor-btn{padding:8px 20px;border:1px solid #ccc;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s ease;font-family:inherit;font-weight:500}.structure-editor-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.structure-editor-btn:active{transform:translateY(0)}.cancel-btn{background:#fff;color:#666}.cancel-btn:hover{background:#f0f0f0;border-color:#999}.confirm-btn{background:#4caf50;color:#fff;border-color:#4caf50}.confirm-btn:hover{background:#45a049;border-color:#45a049}.arrow-draw-wrapper{width:100%;height:100%;display:flex;flex-direction:column;position:relative}.arrow-draw-container{flex:1;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent}.arrow-draw-container svg rect[fill="#FFFFFF"],.arrow-draw-container svg rect[fill="#ffffff"],.arrow-draw-container svg rect[fill=white],.arrow-draw-container svg rect[style*="fill:#FFFFFF"],.arrow-draw-container svg rect[style*="fill: #FFFFFF"],.arrow-draw-container svg rect[style*="fill:#ffffff"],.arrow-draw-container svg rect[style*="fill: #ffffff"]{fill:transparent!important}.arrow-draw-container-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;position:relative}.arrow-controls{display:flex;gap:16px;justify-content:center;align-items:center;padding:10px;background:#ffffffe6;border-top:1px solid #e0e0e0;flex-wrap:wrap}.arrow-controls-group{display:flex;gap:8px;align-items:center}.arrow-btn{padding:6px 12px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;font-size:13px;transition:all .2s ease;font-family:inherit}.arrow-btn:hover{background:#f0f0f0;border-color:#999}.arrow-btn:active{transform:scale(.98)}.arrow-reset-btn{color:#d32f2f}.arrow-reset-btn:hover{background:#ffebee;border-color:#d32f2f}.arrow-cancel-btn{color:#f57c00}.arrow-cancel-btn:hover{background:#fff3e0;border-color:#f57c00}.arrow-modify-btn{color:#1976d2}.arrow-modify-btn:hover{background:#e3f2fd;border-color:#1976d2}.arrow-apply-btn{color:#388e3c;font-weight:600}.arrow-apply-btn:hover{background:#e8f5e9;border-color:#388e3c}.arrow-zoom-btn{color:#5e35b1;font-size:18px;font-weight:700;padding:4px 12px;min-width:36px}.arrow-zoom-btn:hover{background:#ede7f6;border-color:#5e35b1}.arrow-zoom-reset-btn{color:#5e35b1;font-size:12px}.arrow-zoom-reset-btn:hover{background:#ede7f6;border-color:#5e35b1}.zoom-level-display{font-size:13px;color:#666;min-width:45px;text-align:center;font-weight:500}.arrow-draw-container svg{cursor:crosshair;user-select:none}.arrow-draw-container .node{cursor:pointer}.arrow-draw-container .node:hover{filter:brightness(1.2)}.mechanism-modal-backdrop{position:fixed;inset:0;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease;padding:0}.mechanism-modal-backdrop:has(.mechanism-modal-fullscreen){padding:0;align-items:stretch;justify-content:stretch}.mechanism-modal-content{background:#fff;border-radius:12px;width:90%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003;animation:slideIn .3s ease;transition:all .3s ease}.mechanism-modal-small{width:80%;max-width:1000px;height:55vh;max-height:55vh}.mechanism-modal-medium{width:90%;max-width:1400px;height:65vh;max-height:65vh}.mechanism-modal-large{width:95%;max-width:1800px;height:75vh;max-height:75vh}.mechanism-modal-fullscreen{width:100vw;max-width:100vw;height:100vh;max-height:100vh;border-radius:0;margin:0}.mechanism-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e0e0e0}.mechanism-modal-header h2{margin:0;font-size:24px;color:#333}.mechanism-modal-header-controls{display:flex;align-items:center;gap:12px}.mechanism-modal-size-btn{background:#ede7f6;border:1px solid #9575cd;color:#5e35b1;padding:6px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.mechanism-modal-size-btn:hover{background:#d1c4e9;border-color:#7e57c2}.mechanism-modal-size-btn:active{transform:scale(.96)}.mechanism-modal-close{background:none;border:none;font-size:36px;cursor:pointer;color:#666;line-height:1;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.mechanism-modal-close:hover{background:#f0f0f0;color:#333}.mechanism-modal-body{flex:1;overflow:hidden;padding:30px;display:flex;flex-direction:column;min-height:0}.mechanism-loading{display:flex;align-items:center;justify-content:center;min-height:400px;font-size:18px;color:#666}.mechanism-layout-wrapper{display:flex;flex-direction:column;gap:30px;flex:1;min-height:0;overflow:hidden}.mechanism-layout{display:flex;align-items:stretch;justify-content:space-around;gap:40px;flex:1;min-height:0;overflow:hidden}.mechanism-step-info{text-align:center;padding:10px;background:#e3f2fd;border-radius:6px;margin-bottom:10px;flex-shrink:0}.mechanism-step-info p{margin:0;font-weight:600;color:#1976d2;font-size:14px}.mechanism-products,.mechanism-reactants{flex:1;display:flex;flex-direction:column;align-items:center;min-height:0;overflow:visible}.mechanism-products h3,.mechanism-reactants h3{margin:0 0 20px;font-size:20px;color:#555;flex-shrink:0}.molecule-container{width:100%;flex:1;display:flex;align-items:center;justify-content:center;background:#f9f9f9;border-radius:8px;padding:0;overflow:hidden;min-height:0}.molecule-container.framed{border:3px solid #4CAF50;background:#f0f8f0;box-sizing:border-box}.mechanism-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center;min-width:0}.svg-display{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.svg-display svg{width:100%;height:100%;max-width:none;max-height:none}.svg-display svg rect[fill="#FFFFFF"],.svg-display svg rect[style*="fill:#FFFFFF"],.svg-display svg rect[style*="fill: #FFFFFF"]{fill:transparent!important}.helper-text{margin-top:10px;font-size:14px;color:#666;text-align:center;font-style:italic}.smiles-display{margin-top:8px;font-size:12px;color:#888;text-align:center;font-family:monospace;word-break:break-all}.mechanism-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid #e0e0e0}.mechanism-btn{padding:10px 24px;border:none;border-radius:6px;font-size:16px;cursor:pointer;transition:all .2s ease;font-family:inherit}.mechanism-btn-secondary{background:#f0f0f0;color:#333}.mechanism-btn-secondary:hover{background:#e0e0e0}.mechanism-btn-primary{background:#4caf50;color:#fff}.mechanism-btn-primary:hover{background:#45a049}.mechanism-btn:active{transform:scale(.98)}.mechanism-btn-primary:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.mechanism-btn-primary:disabled:hover{background:#ccc}.mechanism-viewer-backdrop{position:fixed;inset:0;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.mechanism-viewer-content{background:#fff;border-radius:12px;width:95%;max-width:1400px;max-height:95vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003;animation:slideIn .3s ease}.mechanism-viewer-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e0e0e0;background:linear-gradient(to right,#f8f9fa,#fff)}.mechanism-viewer-header h2{margin:0;font-size:24px;color:#333;font-weight:600}.mechanism-viewer-close{background:none;border:none;font-size:36px;cursor:pointer;color:#666;line-height:1;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.mechanism-viewer-close:hover{background:#f0f0f0;color:#333}.mechanism-viewer-body{flex:1;overflow:auto;padding:20px;background:#fafafa}.mechanism-viewer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;gap:20px}.mechanism-viewer-loading p{font-size:18px;color:#666;margin:0}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #4CAF50;border-radius:50%;animation:spin 1s linear infinite}.mechanism-viewer-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:500px;gap:10px;padding:20px}.mechanism-viewer-error p{font-size:18px;color:#d32f2f;margin:0;text-align:center}.mechanism-viewer-error .error-message{font-size:14px;color:#666;font-family:monospace;background:#ffebee;padding:10px 15px;border-radius:4px;max-width:600px;word-break:break-word}.mechanism-svg-container{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000001a;min-height:500px;display:flex;align-items:center;justify-content:center}.mechanism-svg-display{max-width:100%;height:auto;display:block}.mechanism-viewer-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 30px;border-top:1px solid #e0e0e0;background:#f8f9fa}.mechanism-info{display:flex;align-items:center;gap:15px;font-size:14px;color:#666}.step-count{font-weight:600;color:#4caf50;background:#e8f5e9;padding:4px 12px;border-radius:12px}.byproduct-indicator{font-style:italic;color:#ff9800}.mechanism-viewer-btn{padding:10px 24px;border:none;border-radius:6px;font-size:16px;cursor:pointer;transition:all .2s ease;font-family:inherit;background:#4caf50;color:#fff;font-weight:500}.mechanism-viewer-btn:hover{background:#45a049;transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.mechanism-viewer-btn:active{transform:scale(.98)}.condition-modal-backdrop{position:fixed;inset:0;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.condition-modal-content{background:#fff;border-radius:12px;width:90%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0003;animation:slideIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.condition-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e0e0e0}.condition-modal-header h2{margin:0;font-size:24px;color:#333}.condition-modal-close{background:none;border:none;font-size:36px;cursor:pointer;color:#666;line-height:1;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.condition-modal-close:hover{background:#f0f0f0;color:#333}.condition-modal-body{flex:1;overflow-y:auto;padding:30px;display:flex;flex-direction:column;gap:30px;min-height:600px}.condition-reaction-reminder{display:flex;flex-direction:column;gap:15px}.condition-reaction-reminder h3{margin:0;font-size:18px;color:#555}.condition-reaction-display{display:flex;align-items:center;justify-content:center;gap:20px;padding:15px;background:#f9f9f9;border-radius:8px;border:2px solid #e0e0e0}.condition-reaction-part{display:flex;flex-direction:column;align-items:center;gap:10px;flex:1}.condition-reaction-label{font-size:14px;font-weight:600;color:#666}.condition-reaction-svg{width:100%;max-height:150px;display:flex;align-items:center;justify-content:center;padding:10px}.condition-reaction-svg svg{max-width:100%;max-height:130px}.condition-reaction-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center}.condition-loading{display:flex;align-items:center;justify-content:center;min-height:150px;font-size:16px;color:#666}.condition-editor-section{display:flex;flex-direction:column;gap:15px;min-height:500px}.condition-editor-section h3{margin:0;font-size:18px;color:#555}.condition-editor-section .structure-editor-wrapper{flex:1;min-height:450px}.condition-editor-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background:#f9f9f9;border-radius:8px;border:2px dashed #cccccc;padding:30px;gap:15px}.condition-smiles-display{font-family:monospace;font-size:14px;color:#333;background:#fff;padding:10px 15px;border-radius:4px;border:1px solid #ddd;word-break:break-all;max-width:100%}.condition-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 30px;border-top:1px solid #e0e0e0}.condition-btn{padding:10px 24px;border:none;border-radius:6px;font-size:16px;cursor:pointer;transition:all .2s ease;font-family:inherit}.condition-btn-secondary{background:#f0f0f0;color:#333}.condition-btn-secondary:hover{background:#e0e0e0}.condition-btn-primary{background:#4caf50;color:#fff}.condition-btn-primary:hover{background:#45a049}.condition-btn:active{transform:scale(.98)}.condition-btn-primary:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.condition-btn-primary:disabled:hover{background:#ccc}.circle-button{width:50px;height:50px;border-radius:50%;background-color:#777;color:#fff;border:#000000 2px solid;text-align:center;line-height:50px;font-size:16px;cursor:pointer}.node-element{display:flex;flex-direction:column;align-items:center;justify-content:center;border:5px solid;box-sizing:border-box;background-color:#fff;border-radius:15px}.non-purchasable-border{border-color:#db5b68}.purchasable-border{border-color:#89dd84}.byproduct-border{border-color:#ccc}.condition-border{border-color:#444}.hover-box{background-color:#f8f9fa;border:3px solid #2669ac;padding:12px;border-radius:8px;box-shadow:0 4px 6px #0000001a,0 1px 3px #00000014;font-family:Arial,sans-serif;max-width:1450px;transition:all .3s ease;max-height:500px;touch-action:pan-y;overflow-y:auto}.hover-box:hover{box-shadow:0 6px 8px #00000026,0 1px 3px #0000001a;transform:translateY(-2px);font-size:10px}.hover-box h4{margin-top:0;margin-bottom:10px;color:#343a40;font-size:20px;border-bottom:1px solid #ced4da;padding-bottom:6px}.hover-box p{margin:6px;color:#495057;font-size:22px;width:100%}.hover-box .label{font-weight:700;color:#6c757d}.vertical-offset-transition{transition:transform .5s ease-in-out!important}.reaction-circle-transition{transition:cy .5s ease-in-out!important}.rd3t-link,.byproduct-link-transition{transition:d .5s ease-in-out!important}.spinner{border:4px solid #f3f3f3;border-top:4px solid ##4caf50;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}.spinner-container{display:grid;place-items:center;height:100%;width:100%}.spinner-content{display:grid;gap:20px;text-align:center}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.draw-reaction-backdrop{position:fixed;inset:0;background:#0009;z-index:2000;display:flex;align-items:center;justify-content:center;animation:drFadeIn .2s ease}@keyframes drFadeIn{0%{opacity:0}to{opacity:1}}.draw-reaction-content{background:#fff;border-radius:12px;width:92%;max-width:960px;height:88vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000038;animation:drSlideIn .25s ease;overflow:hidden}@keyframes drSlideIn{0%{transform:translateY(-18px);opacity:0}to{transform:translateY(0);opacity:1}}.draw-reaction-header{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;border-bottom:1px solid #e0e0e0;flex-shrink:0}.draw-reaction-title-group{display:flex;align-items:center;gap:24px}.draw-reaction-title-group h2{margin:0;font-size:22px;color:#333}.draw-reaction-steps{display:flex;align-items:center;gap:6px}.draw-reaction-step-dot{width:28px;height:28px;border-radius:50%;background:#ddd;color:#999;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.draw-reaction-step-dot.active{background:#4caf50;color:#fff}.draw-reaction-step-dot.done{background:#a5d6a7;color:#fff}.draw-reaction-step-line{width:32px;height:2px;background:#ddd;border-radius:1px}.draw-reaction-close{background:none;border:none;font-size:34px;cursor:pointer;color:#666;line-height:1;padding:0;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s,color .2s}.draw-reaction-close:hover{background:#f0f0f0;color:#333}.draw-reaction-instruction{padding:10px 28px;font-size:14px;color:#666;background:#fafafa;border-bottom:1px solid #efefef;flex-shrink:0}.draw-reaction-editor{flex:1;overflow:hidden;display:flex;flex-direction:column}.draw-reaction-editor .structure-editor-wrapper,.draw-reaction-editor .structure-editor-container{flex:1;min-height:0}.bug-backdrop{position:fixed;inset:0;background:#00000073;z-index:3000;display:flex;align-items:center;justify-content:center;animation:bugFadeIn .15s ease}@keyframes bugFadeIn{0%{opacity:0}to{opacity:1}}.bug-modal{background:#fff;border-radius:14px;padding:36px 40px 32px;width:340px;text-align:center;box-shadow:0 8px 32px #0003;position:relative;animation:bugSlideIn .2s ease}@keyframes bugSlideIn{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.bug-close{position:absolute;top:12px;right:14px;background:none;border:none;font-size:26px;cursor:pointer;color:#999;line-height:1;padding:0;transition:color .15s}.bug-close:hover{color:#333}.bug-icon{font-size:38px;margin-bottom:10px}.bug-title{margin:0 0 10px;font-size:20px;color:#222}.bug-desc{margin:0 0 24px;font-size:14px;color:#666;line-height:1.55}.bug-btn{display:inline-block;padding:11px 28px;background-color:#d32f2f;color:#fff;border-radius:7px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .2s ease,transform .1s ease}.bug-btn{border:none;cursor:pointer;margin-top:20px}.bug-btn:hover{background-color:#b71c1c}.bug-btn:active{transform:scale(.97)}.bug-checkbox-label{display:flex;align-items:flex-start;gap:10px;text-align:left;font-size:13px;color:#444;cursor:pointer;margin-bottom:4px}.bug-checkbox{margin-top:2px;flex-shrink:0;width:15px;height:15px;cursor:pointer;accent-color:#d32f2f}.bug-checkbox-hint{display:block;margin-top:3px;font-size:11px;color:#999;font-style:italic}h1{text-align:center}form{display:flex;margin-bottom:20px}input{flex-grow:1;padding:10px;font-size:16px}button{padding:10px 20px;font-size:16px;background-color:#4caf50;color:#fff;border:none;cursor:pointer}.results{background-color:#f0f0f0;padding:20px;border-radius:5px}.results ul{list-style-type:none;padding:0}.results li{margin-bottom:20px;padding:10px;background-color:#fff;border-radius:5px}.error{color:red;font-weight:700}.results h3{margin-top:0;color:#2c3e50}.results p{margin:5px 0}.results strong{color:#34495e}.App-header{max-width:100%;display:flex;align-items:right;justify-content:center;margin-bottom:1vh}.main-content{display:flex;justify-content:space-between}.side-panel{width:200px;padding:20px;background-color:#f0f0f0;position:fixed;left:20px;background-color:#fff;box-shadow:0 2px 4px 2px #0000001a}.side-panel button{display:flex;padding:10px;background-color:#4caf50;color:#fff;border:none;cursor:pointer;text-align:center;box-shadow:0 2px 4px 2px #0000001a;height:100%}.side-panel button:hover{background-color:#45a049}.analysis-area{margin-left:220px;flex-grow:1}.App{max-width:100%;margin:0 auto;padding:20px;font-family:Arial,sans-serif}.App-header{display:flex;justify-content:space-between;align-items:center;padding:1vh 20px;background-color:#fff;box-shadow:0 2px 4px #0000001a}.App-logo{height:7vh;margin-right:0}nav{display:flex;gap:20px}nav button{background:none;border:none;font-size:16px;cursor:pointer;padding:10px;transition:color .3s;color:#666}nav button:hover,nav button.active{color:red}.app-main{padding:0;display:flex;justify-content:right}.reaction-content,.other-content{background-color:#f2f2f2;align-items:left;margin-left:260px;width:100%}.ketcher-content{background-color:#f2f2f2;align-items:left;margin-left:0;width:100%;height:500px}.draw-content{background-color:#f2f2f2;align-items:left;margin-left:260px;width:100%;height:500px}h1{color:#333;margin-bottom:20px}.settings-modal-backdrop{position:fixed;inset:0;background-color:#0000004d;display:flex;justify-content:center;align-items:center;z-index:10000}.settings-modal-content{background-color:#fff;border-radius:4px;box-shadow:0 2px 8px #00000026;min-width:300px;max-width:400px}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0f0f0}.settings-modal-header h3{margin:0;font-size:16px;font-weight:500;color:#333}.settings-modal-close{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.settings-modal-close:hover{color:#333}.settings-modal-body{padding:20px}.settings-option{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:14px;color:#333}.settings-option input[type=checkbox]{cursor:pointer;width:18px;height:18px}
