.recipe-notification,.circuit-notification{position:fixed;top:20px;right:20px;z-index:9999;min-width:320px;max-width:480px;background:white;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 16px #0000001a;animation:slideInFromRight .3s ease-out}.recipe-notification.success,.circuit-notification.success{border-left:4px solid #28a745;background:linear-gradient(135deg,#d4edda 0%,#c3e6cb 100%)}.notification-content{padding:1rem 1.25rem}.notification-content strong{display:block;color:#155724;font-size:.9rem;margin-bottom:.5rem}.notification-content div{color:#0f4819;font-size:.8rem;line-height:1.4;margin-bottom:.25rem}.notification-content div:last-child{margin-bottom:0}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.dark-mode .recipe-notification,.dark-mode .circuit-notification{background:#2a2a2a;border-color:#444;color:#e4e4e4}.dark-mode .recipe-notification.success,.dark-mode .circuit-notification.success{background:linear-gradient(135deg,#1b4332 0%,#2d5a27 100%);border-left-color:#28a745}.dark-mode .notification-content strong{color:#90ee90}.dark-mode .notification-content div{color:#c8e6c9}.hash-cracker-container{min-height:100vh;padding:2rem;background:var(--bg-primary, #f8f9fa);display:flex;flex-direction:column;gap:2rem;max-width:1400px;margin:0 auto}.hash-cracker-header{display:flex;justify-content:space-between;align-items:flex-start;background:white;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:1px solid #e9ecef}.hash-cracker-title h2{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:#2c3e50;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hash-cracker-description{margin:0;color:#6c757d;font-size:1rem;line-height:1.5;max-width:500px}.hash-cracker-gpu-info{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.gpu-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.5rem 1rem;border-radius:25px;font-size:.875rem;font-weight:600;box-shadow:0 2px 4px #10b9814d;display:flex;align-items:center;gap:.5rem}.gpu-details{opacity:.8;font-size:.75rem;color:#6c757d}.hash-cracker-main{display:flex;gap:2rem;flex:1}.hash-cracker-left,.hash-cracker-right{flex:1;display:flex;flex-direction:column;gap:1.5rem}.hash-input-section,.hash-type-section,.hash-controls-section,.wordlist-section,.rules-section{background:white;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000001a;border:1px solid #e9ecef}.hash-input-section h3,.hash-type-section h3,.hash-controls-section h3,.wordlist-section h3,.rules-section h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:#2c3e50;display:flex;align-items:center;gap:.5rem}.hash-input-section h3:before{content:"🎯"}.hash-type-section h3:before{content:"🔍"}.hash-controls-section h3:before{content:"⚡"}.wordlist-section h3:before{content:"📝"}.rules-section h3:before{content:"⚙️"}.hash-input-textarea{width:100%;padding:1rem;border:2px solid #e9ecef;border-radius:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;line-height:1.5;resize:vertical;min-height:120px;background:#f8f9fa;transition:all .3s ease}.hash-input-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:white}.hash-type-selected{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:2px solid #e9ecef;border-radius:8px;background:#f8f9fa;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .3s ease;font-weight:500}.hash-type-selected:hover{border-color:#667eea;background:white}.hash-type-dropdown-menu{position:absolute;top:100%;left:0;right:0;z-index:1000;background:white;border:2px solid #e9ecef;border-radius:8px;box-shadow:0 8px 32px #00000026;max-height:400px;overflow:hidden;margin-top:.5rem}.hash-type-search{display:flex;align-items:center;padding:1rem;gap:.5rem;border-bottom:1px solid #e9ecef;background:#f8f9fa}.hash-type-search input{flex:1;padding:.5rem;border:1px solid #dee2e6;border-radius:6px;outline:none;font-size:.9rem}.hash-type-search input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}.hash-type-options{max-height:300px;overflow-y:auto}.hash-type-option{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.hash-type-option:hover:not(.disabled){background:#f8f9fa}.hash-type-option.selected{background:#667eea;color:#fff}.hash-type-value{color:#6c757d;font-size:.75rem;font-family:monospace;background:rgba(0,0,0,.05);padding:.25rem .5rem;border-radius:4px}.hash-type-option.selected .hash-type-value{color:#fffc;background:rgba(255,255,255,.2)}.attack-controls{display:flex;gap:1rem}.hash-start-button,.hash-stop-button{display:flex;align-items:center;gap:.5rem;padding:1rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;flex:1;justify-content:center}.hash-start-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;box-shadow:0 4px 12px #28a7454d}.hash-start-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #28a74566}.hash-start-button:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.hash-stop-button{background:linear-gradient(135deg,#dc3545,#c82333);color:#fff;box-shadow:0 4px 12px #dc35454d}.hash-stop-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #dc354566}.wordlist-controls,.rules-controls{margin-bottom:1rem}.upload-button{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#6f42c1,#5a32a3);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease;text-decoration:none}.upload-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6f42c14d}.wordlist-select{width:100%;padding:1rem;border:2px solid #e9ecef;border-radius:8px;background:#f8f9fa;font-size:.9rem;font-weight:500;color:#495057;transition:all .3s ease}.wordlist-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:white}.rules-textarea{width:100%;padding:1rem;border:2px solid #e9ecef;border-radius:8px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.4;resize:vertical;min-height:200px;background:#f8f9fa;transition:all .3s ease}.rules-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:white}.hash-status-panel{background:linear-gradient(135deg,#fff7ed,#fed7aa);border:2px solid #fb923c;border-radius:12px;padding:1.5rem;margin-top:1rem}.hash-status-content{display:flex;justify-content:space-between;align-items:center}.hash-status-indicator{display:flex;align-items:center;gap:1rem;font-weight:600;color:#c2410c}.hash-status-spinner{width:24px;height:24px;border:3px solid #fed7aa;border-top:3px solid #fb923c;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hash-status-details{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem;font-size:.9rem;color:#9a3412}.hash-results-panel{background:white;border-radius:12px;padding:2rem;margin-top:1rem;box-shadow:0 4px 16px #0000001a;border:1px solid #e9ecef}.hash-results-panel h3{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:#2c3e50}.hash-result-main{display:flex;align-items:flex-start;gap:1.5rem}.hash-result-icon{font-size:2rem;flex-shrink:0}.hash-result-info{flex:1}.hash-result-password{font-size:1.125rem;margin-bottom:1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.hash-result-code{background:#f8f9fa;padding:.5rem 1rem;border-radius:6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:1rem;border:1px solid #e9ecef;color:#e83e8c;font-weight:600}.hash-result-stats{display:flex;gap:2rem;flex-wrap:wrap;font-size:.9rem;color:#6c757d}.hash-result-stats span{display:flex;align-items:center;gap:.5rem}.hash-results-success{border-left:4px solid #28a745;padding-left:1rem}.hash-results-failure{border-left:4px solid #dc3545;padding-left:1rem}@media (max-width: 1024px){.hash-cracker-main{flex-direction:column}.hash-cracker-left,.hash-cracker-right{flex:none}}@media (max-width: 768px){.hash-cracker-container{padding:1rem}.hash-cracker-header{flex-direction:column;gap:1rem;padding:1.5rem}.hash-cracker-gpu-info{align-items:flex-start}.hash-result-main{flex-direction:column;gap:1rem}.hash-result-password{flex-direction:column;align-items:flex-start;gap:.5rem}.hash-result-stats{flex-direction:column;gap:.5rem}}.dark-mode .hash-cracker-container{background:#1a1a1a}.dark-mode .hash-cracker-header,.dark-mode .hash-input-section,.dark-mode .hash-type-section,.dark-mode .hash-controls-section,.dark-mode .wordlist-section,.dark-mode .rules-section,.dark-mode .hash-results-panel{background:#2a2a2a;border-color:#444}.dark-mode .hash-cracker-title h2,.dark-mode .hash-input-section h3,.dark-mode .hash-type-section h3,.dark-mode .hash-controls-section h3,.dark-mode .wordlist-section h3,.dark-mode .rules-section h3,.dark-mode .hash-results-panel h3{color:#e4e4e4}.dark-mode .hash-cracker-description,.dark-mode .gpu-details{color:#999}.dark-mode .hash-input-textarea,.dark-mode .hash-type-selected,.dark-mode .wordlist-select,.dark-mode .rules-textarea{background:#1a1a1a;border-color:#555;color:#e4e4e4}.dark-mode .hash-input-textarea:focus,.dark-mode .hash-type-selected:hover,.dark-mode .wordlist-select:focus,.dark-mode .rules-textarea:focus{background:#333;border-color:#667eea}.dark-mode .hash-type-dropdown-menu{background:#2a2a2a;border-color:#444}.dark-mode .hash-type-search{background:#333;border-bottom-color:#444}.dark-mode .hash-type-search input{background:#1a1a1a;border-color:#555;color:#e4e4e4}.dark-mode .hash-type-value{color:#999;background:rgba(255,255,255,.1)}.dark-mode .hash-result-code{background:#333;border-color:#555;color:#f8d7da}.dark-mode .hash-result-stats{color:#999}.dark-mode .hash-status-panel{background:linear-gradient(135deg,#78350f,#fb923c);border-color:#fb923c}.dark-mode .hash-status-indicator{color:#fde68a}.dark-mode .hash-status-details{color:#fed7aa}.substitution-solver{padding:1.5rem;max-width:1200px;margin:0 auto}.solver-header{margin-bottom:2rem;text-align:center}.solver-header h2{margin:0 0 .5rem;color:#333;font-size:1.8rem}.solver-description{color:#666;font-size:.95rem;max-width:600px;margin:0 auto}.solver-input-section{background:#f8f9fa;border-radius:8px;padding:1.5rem;margin-bottom:2rem;border:1px solid #e9ecef}.input-group{margin-bottom:1.5rem}.input-group:last-child{margin-bottom:0}.input-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333;font-size:.9rem}.puzzle-input{width:100%;padding:.75rem;border:2px solid #dee2e6;border-radius:6px;font-family:Courier New,monospace;font-size:.9rem;resize:vertical;transition:border-color .2s}.puzzle-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.clues-input{width:100%;padding:.75rem;border:2px solid #dee2e6;border-radius:6px;font-family:Courier New,monospace;font-size:.9rem;transition:border-color .2s}.clues-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.language-select{width:100%;padding:.75rem;border:2px solid #dee2e6;border-radius:6px;font-size:.9rem;background:white;transition:border-color .2s}.language-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.input-hint{display:block;margin-top:.5rem;color:#6c757d;font-size:.8rem;font-style:italic}.solver-controls{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.solve-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.solve-button:hover:not(:disabled){background:#0056b3;transform:translateY(-1px)}.solve-button:disabled{background:#6c757d;cursor:not-allowed;transform:none}.clear-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#6c757d;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.clear-button:hover:not(:disabled){background:#545b62;transform:translateY(-1px)}.clear-button:disabled{background:#adb5bd;cursor:not-allowed;transform:none}.utilities-dropdown{position:relative;display:inline-block}.utilities-button{display:flex;align-items:center;gap:.25rem;padding:.75rem 1rem;background:#6c757d;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.utilities-button:hover:not(:disabled){background:#545b62;transform:translateY(-1px)}.utilities-button:disabled{background:#adb5bd;cursor:not-allowed;transform:none}.utilities-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:white;border:1px solid #e9ecef;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:150px}.utilities-menu button{display:block;width:100%;padding:.75rem 1rem;border:none;background:none;text-align:left;font-size:.9rem;cursor:pointer;transition:background-color .2s}.utilities-menu button:hover{background:#f8f9fa}.utilities-menu button:first-child{border-radius:6px 6px 0 0}.utilities-menu button:last-child{border-radius:0 0 6px 6px}.utilities-separator{height:1px;background:#e9ecef;margin:.5rem 0}.solutions-section{background:white;border-radius:8px;border:1px solid #e9ecef;overflow:hidden}.solutions-header{padding:1.5rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.solutions-header h3{margin:0 0 .5rem;color:#333;font-size:1.3rem}.solutions-info{margin:0;color:#666;font-size:.9rem}.solutions-list{max-height:70vh;overflow-y:auto;overflow-x:hidden;position:relative}.solution-item{padding:1rem 1.5rem;border-bottom:1px solid #f1f3f4;cursor:pointer;transition:background-color .2s}.solution-item:hover{background:#f8f9fa}.solution-item.selected{background:#e3f2fd;border-left:4px solid #2196f3}.solution-item:last-child{border-bottom:none}.solution-header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.solution-rank{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#007bff;color:#fff;border-radius:50%;font-size:.8rem;font-weight:600;flex-shrink:0}.solution-score{font-family:Courier New,monospace;font-size:.85rem;color:#666;background:#f8f9fa;padding:.25rem .5rem;border-radius:4px;min-width:4rem;text-align:center}.solution-confidence{flex:1;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;max-width:100px}.confidence-bar{height:100%;background:linear-gradient(to right,#dc3545,#ffc107,#28a745);transition:width .3s ease}.solution-text{font-family:Courier New,monospace;font-size:.9rem;line-height:1.4;color:#333;background:#f8f9fa;padding:.75rem;border-radius:4px;border-left:4px solid #007bff;word-wrap:break-word}.solution-details{margin-top:1rem;padding-top:1rem;border-top:1px solid #e9ecef}.solution-details h4{margin:0 0 .75rem;font-size:.9rem;color:#333}.substitution-map{display:flex;flex-wrap:wrap;gap:.5rem}.substitution-pair{display:inline-block;background:#e3f2fd;color:#1976d2;padding:.25rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.8rem;font-weight:600;border:1px solid #bbdefb}.no-solutions{text-align:center;padding:3rem 1.5rem;color:#666;font-style:italic}.dark-mode .substitution-solver,.dark-mode .solver-header h2{color:#e1e5e9}.dark-mode .solver-description{color:#adb5bd}.dark-mode .solver-input-section{background:#2c3e50;border-color:#34495e}.dark-mode .input-group label{color:#e1e5e9}.dark-mode .puzzle-input,.dark-mode .clues-input,.dark-mode .language-select{background:#34495e;border-color:#495057;color:#e1e5e9}.dark-mode .puzzle-input:focus,.dark-mode .clues-input:focus,.dark-mode .language-select:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40}.dark-mode .input-hint{color:#adb5bd}.dark-mode .solutions-section{background:#2c3e50;border-color:#34495e}.dark-mode .solutions-header{background:#34495e;border-color:#495057}.dark-mode .solutions-header h3{color:#e1e5e9}.dark-mode .solutions-info{color:#adb5bd}.dark-mode .solution-item{border-color:#495057}.dark-mode .solution-item:hover{background:#34495e}.dark-mode .solution-item.selected{background:#1e3a8a;border-left-color:#3b82f6}.dark-mode .solution-score{background:#495057;color:#adb5bd}.dark-mode .solution-text{background:#34495e;color:#e1e5e9;border-left-color:#007bff}.dark-mode .solution-details{border-color:#495057}.dark-mode .solution-details h4{color:#e1e5e9}.dark-mode .substitution-pair{background:#1e3a8a;color:#93c5fd;border-color:#3b82f6}.dark-mode .no-solutions{color:#adb5bd}.dark-mode .confidence-bar{background:linear-gradient(to right,#dc2626,#f59e0b,#16a34a)}.dark-mode .utilities-menu{background:#2c3e50;border-color:#34495e}.dark-mode .utilities-menu button{color:#e1e5e9}.dark-mode .utilities-menu button:hover{background:#34495e}.dark-mode .utilities-separator{background:#495057}.circuit-canvas-container{position:relative;width:100%;height:500px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;display:flex;flex-direction:column;flex-shrink:0;margin-bottom:1rem}.circuit-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#ffffff;border-bottom:1px solid #dee2e6;flex-shrink:0}.circuit-controls{display:flex;gap:.5rem;align-items:center}.circuit-button{display:flex;align-items:center;gap:.25rem;padding:.4rem .75rem;background:#6544bc;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s}.circuit-button:hover:not(:disabled){background:#5a3ba3}.circuit-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.file-input-label{position:relative;overflow:hidden}.circuit-stats{display:flex;gap:1rem;font-size:.8rem;color:#6c757d}.executing-indicator{color:#ffc107;font-weight:600;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.circuit-canvas{position:relative;width:100%;height:100%;cursor:grab;overflow:hidden;flex:1;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.circuit-canvas:active{cursor:grabbing}.connections-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.connections-layer .connection-disconnect-btn{pointer-events:all}.connection-path{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.connection-preview{opacity:.7}.connection-disconnect-btn{opacity:.9;transition:opacity .2s ease}.connection-disconnect-btn:hover{opacity:1}.circuit-node{position:absolute;background:white;border:2px solid #dee2e6;border-radius:8px;min-width:200px;box-shadow:0 2px 8px #0000001a;cursor:move;z-index:2;transition:all .2s ease;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.circuit-node:hover{border-color:#6544bc;box-shadow:0 4px 12px #00000026}.circuit-node.selected{border-color:#6544bc;box-shadow:0 0 0 3px #6544bc33}.circuit-node.input{border-color:#28a745;background:linear-gradient(135deg,#d4edda 0%,#c3e6cb 100%)}.circuit-node.output{border-color:#dc3545;background:linear-gradient(135deg,#f8d7da 0%,#f5c6cb 100%)}.circuit-node.operation{border-color:#6544bc;background:linear-gradient(135deg,#e7e3ff 0%,#d6d1ff 100%)}.node-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:rgba(0,0,0,.02);border-bottom:1px solid #e9ecef;border-radius:6px 6px 0 0}.node-title-section{display:flex;flex-direction:column;gap:2px}.node-title{font-weight:600;font-size:.85rem;color:#495057}.node-id{font-size:.7rem;color:#6c757d;font-family:Monaco,Menlo,Ubuntu Mono,monospace;opacity:.8}.node-delete{background:none;border:none;color:#dc3545;cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.node-delete:hover{background:#f8d7da}.node-body{padding:.75rem;display:flex;flex-direction:column;gap:.75rem}.node-ports{display:flex;flex-direction:column;gap:.5rem}.port{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease}.port:hover{background:rgba(101,68,188,.1)}.input-port{justify-content:flex-start}.output-port{justify-content:flex-end}.port-dot{width:10px;height:10px;border-radius:50%;background:#6544bc;border:2px solid white;box-shadow:0 0 0 1px #6544bc;flex-shrink:0}.input-port .port-dot{background:#28a745;box-shadow:0 0 0 1px #28a745}.output-port .port-dot{background:#dc3545;box-shadow:0 0 0 1px #dc3545}.port-label{font-size:.8rem;color:#6c757d;font-weight:500}.node-parameters{display:flex;flex-direction:column;gap:.5rem}.parameter-row{display:flex;align-items:center;gap:.25rem}.parameter-input-port{display:flex;align-items:center;gap:4px}.parameter-port{width:8px;height:8px;background:#ff9800;border:1px solid #333;cursor:crosshair;border-radius:50%}.parameter-port:hover{background:#ffb74d;transform:scale(1.2)}.parameter-port.connected{background:#4caf50;border-color:#2e7d32}.parameter-connected{background:#e8f5e8!important;border:1px solid #4caf50!important;color:#2e7d32!important;font-style:italic}.disconnect-parameter-btn{background:#f44336;color:#fff;border:none;border-radius:2px;width:16px;height:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px}.disconnect-parameter-btn:hover{background:#d32f2f}.zoom-controls{display:flex;align-items:center;gap:8px;margin:0 16px}.zoom-level{font-size:12px;color:#666;min-width:40px;text-align:center}.parameter-row label{font-size:.8rem;font-weight:500;color:#495057;min-width:30px}.parameter-row input{flex:1;padding:.25rem .5rem;border:1px solid #ced4da;border-radius:4px;font-size:.8rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.parameter-row input:focus{outline:none;border-color:#6544bc;box-shadow:0 0 0 2px #6544bc33}.canvas-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.canvas-info{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(255,255,255,.9);padding:1rem 2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#6c757d;font-style:italic;text-align:center}.dark-mode .circuit-canvas-container{background:#1a1a1a;border-color:#444}.dark-mode .circuit-node{background:#2a2a2a;border-color:#555;color:#e4e4e4}.dark-mode .circuit-node.input{border-color:#28a745;background:linear-gradient(135deg,#1b4332 0%,#2d5a27 100%)}.dark-mode .circuit-node.output{border-color:#dc3545;background:linear-gradient(135deg,#5a1e1e 0%,#6f2c2c 100%)}.dark-mode .circuit-node.operation{border-color:#6544bc;background:linear-gradient(135deg,#2d2a4a 0%,#3a3560 100%)}.dark-mode .node-header{background:rgba(255,255,255,.05);border-bottom-color:#444}.dark-mode .node-title{color:#e4e4e4}.dark-mode .node-id{color:#999}.dark-mode .parameter-row input{background:#3a3a3a;border-color:#555;color:#e4e4e4}.dark-mode .parameter-row label{color:#e4e4e4}.dark-mode .port-label{color:#999}.dark-mode .canvas-info{background:rgba(42,42,42,.9);color:#999}.node-value-preview{padding:.5rem;background:rgba(0,0,0,.02);border-radius:4px;margin:.5rem 0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:#6c757d;border:1px solid #e9ecef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.node-execution-status{padding:.25rem .5rem;background:#d4edda;color:#155724;border-radius:4px;margin:.25rem 0;font-size:.7rem;font-weight:500;text-align:center}.dark-mode .node-value-preview{background:rgba(255,255,255,.05);border-color:#555;color:#999}.dark-mode .circuit-toolbar{background:#2a2a2a;border-bottom-color:#444}.dark-mode .circuit-stats{color:#999}.dark-mode .circuit-button{background:#6544bc}.dark-mode .circuit-button:hover:not(:disabled){background:#5a3ba3}.dark-mode .circuit-button:disabled{background:#555}.dark-mode .node-execution-status{background:rgba(40,167,69,.2);color:#28a745}.variable-panel{position:absolute;top:60px;right:20px;width:320px;background:white;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10;max-height:500px;overflow-y:auto}.variable-panel-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8f9fa;border-bottom:1px solid #dee2e6;border-radius:8px 8px 0 0}.variable-panel-header h3{margin:0;font-size:1rem;color:#495057}.variable-panel-close{background:none;border:none;color:#6c757d;cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;transition:all .2s}.variable-panel-close:hover{background:#e9ecef;color:#495057}.variable-panel-content{padding:1rem}.variable-create{display:flex;gap:.5rem;margin-bottom:1rem}.variable-create input{flex:1;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.85rem}.variable-create-btn{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.variable-create-btn:hover{background:#218838}.variable-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.variable-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px}.variable-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.variable-value{font-size:.8rem;color:#6c757d;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.variable-actions{display:flex;gap:.25rem}.variable-edit-btn,.variable-delete-btn{background:none;border:1px solid transparent;border-radius:4px;padding:.25rem;cursor:pointer;color:#6c757d;display:flex;align-items:center;transition:all .2s}.variable-edit-btn:hover{background:#e7e3ff;border-color:#6544bc;color:#6544bc}.variable-delete-btn:hover{background:#f8d7da;border-color:#dc3545;color:#dc3545}.variable-empty{text-align:center;padding:2rem 1rem;color:#6c757d;font-style:italic;font-size:.9rem}.variable-panel-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid #e9ecef}.variable-action-btn{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;background:#6544bc;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s;text-decoration:none}.variable-action-btn:hover{background:#5a3ba3}.variable-action-btn.danger{background:#dc3545}.variable-action-btn.danger:hover{background:#c82333}.sinks-panel{position:absolute;bottom:20px;right:20px;width:300px;background:white;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10;max-height:200px;overflow-y:auto}.sinks-panel-header{padding:.5rem .75rem;background:#f8f9fa;border-bottom:1px solid #dee2e6;border-radius:8px 8px 0 0}.sinks-panel-header h4{margin:0;font-size:.9rem;color:#495057}.sinks-list{padding:.5rem}.sink-item{margin-bottom:.5rem;padding:.5rem;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px}.sink-label{font-weight:600;font-size:.8rem;color:#495057;margin-bottom:.25rem}.sink-value{font-size:.75rem;color:#6c757d;font-family:Monaco,Menlo,Ubuntu Mono,monospace;word-break:break-all}.dark-mode .variable-panel,.dark-mode .sinks-panel{background:#2a2a2a;border-color:#444;color:#e4e4e4}.dark-mode .variable-panel-header,.dark-mode .sinks-panel-header{background:#3a3a3a;border-bottom-color:#444}.dark-mode .variable-panel-header h3,.dark-mode .sinks-panel-header h4{color:#e4e4e4}.dark-mode .variable-create input{background:#3a3a3a;border-color:#555;color:#e4e4e4}.dark-mode .variable-item,.dark-mode .sink-item{background:#3a3a3a;border-color:#555}.dark-mode .variable-value,.dark-mode .sink-value{color:#999}.dark-mode .sink-label{color:#e4e4e4}.dark-mode .variable-empty{color:#999}.dark-mode .variable-panel-actions{border-top-color:#444}*{box-sizing:border-box}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;background:#f8f9fa}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{display:flex;flex-direction:column;height:100vh}.header{background:white;color:#333;padding:1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e9ecef}.subheader{background:#f8f9fa;padding:.75rem 1rem;display:flex;align-items:center;border-bottom:1px solid #e9ecef;min-height:60px}.subheader .tab-navigation{display:flex;align-items:center;gap:0}.tab-separator{width:1px;height:20px;background:#dee2e6;margin:0 .5rem}.header-left{display:flex;align-items:center;gap:1rem}.header-logo{height:32px;width:auto}.header-text h1{margin:0;font-size:1.5rem}.header-center{display:flex;align-items:center}.header-right{display:flex;align-items:center;gap:.75rem}.tab-navigation{display:flex;align-items:center;background:#f8f9fa;border-radius:8px;padding:.25rem;border:1px solid #dee2e6}.tab-button{display:flex;align-items:center;justify-content:center;gap:4px;background:none;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-weight:500;color:#6c757d;transition:all .2s}.tab-button:hover{color:#495057;background:rgba(0,0,0,.05)}.tab-button.active{background:white;color:#6544bc;box-shadow:0 2px 4px #0000001a}.tab-button:disabled{opacity:.5;cursor:not-allowed;background:none}.tab-button:disabled:hover{background:none;color:#6c757d}.view-mode-toggle{display:flex;align-items:center}.view-mode-toggle .tab-navigation{background:rgba(0,0,0,.05);border:1px solid rgba(0,0,0,.1)}.view-mode-toggle .tab-button{display:flex;align-items:center;gap:.25rem;font-size:.8rem;padding:.4rem .75rem}.baysec-link{display:flex;align-items:center;gap:.5rem;color:#333;text-decoration:none;padding:.5rem 1rem;border-radius:6px;transition:all .2s;font-size:.9rem;border:1px solid rgba(0,0,0,.15);font-weight:500}.baysec-link:hover{background:rgba(0,0,0,.05);border-color:#00000040;color:#333;text-decoration:none}.baysec-link:visited{color:#333}.github-link{display:flex;align-items:center;gap:.5rem;color:#333;text-decoration:none;padding:.5rem 1rem;border-radius:6px;transition:all .2s;font-size:.9rem;border:1px solid rgba(0,0,0,.15)}.github-link:hover{background:rgba(0,0,0,.05);border-color:#00000040;color:#333;text-decoration:none}.github-link:visited{color:#333}.theme-toggle{display:flex;align-items:center;justify-content:center;background:none;border:1px solid rgba(0,0,0,.15);color:#333;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s}.theme-toggle:hover{background:rgba(0,0,0,.05);border-color:#00000040}.main-content{display:flex;flex:1;overflow:hidden}.sidebar{width:300px;background:white;border-right:1px solid #dee2e6;overflow-y:auto;padding:1rem}.content{flex:1;display:flex;flex-direction:column;padding:1rem;gap:1rem;overflow:hidden}.cracker-content,.substitution-content{flex:1;padding:1rem;overflow-y:auto}.copy-button{background:#8A42EF;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.copy-button:hover:not(:disabled){background:#8A42EF}.copy-button:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.operation-category{margin-bottom:1rem}.operation-category h3{margin:0 0 .5rem;font-size:.9rem;text-transform:uppercase;color:#6c757d;font-weight:600}.operation-list{list-style:none;padding:0;margin:0}.operation-item{padding:.5rem .75rem;margin:.25rem 0;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s}.operation-item:hover{background:#e9ecef;border-color:#6c757d}.operation-item.encode{border-left:3px solid #6544bc}.operation-item.decode{border-left:3px solid #28a745}.operation-item.cipher{border-left:3px solid #ffc107}.operation-item.hash{border-left:3px solid #dc3545}.operation-item.case{border-left:3px solid #6f42c1}.operation-item.bitwise{border-left:3px solid #fd7e14}.operation-item.compression{border-left:3px solid #20c997}.operation-item.dataformat{border-left:3px solid #e83e8c}.operation-item.extraction{border-left:3px solid #17a2b8}.io-panel{display:flex;flex:1;gap:1rem;overflow:hidden}.io-section{flex:1;display:flex;flex-direction:column;background:white;border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.io-header{padding:.75rem 1rem;background:#f8f9fa;border-bottom:1px solid #dee2e6;font-weight:600;color:#495057}.io-content{flex:1;position:relative}.input-container{position:relative;height:100%;display:flex;flex-direction:column}.input-actions{position:absolute;top:8px;right:8px;z-index:10}.version{color:#5e446c;font-weight:800;letter-spacing:2px}.cipher-service{font-weight:400;letter-spacing:2px;margin-right:8px}.file-upload-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.4rem .6rem;background:#6544bc;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;transition:all .2s;box-shadow:0 1px 3px #0000001a}.search-bar{display:flex;align-items:center;justify-content:center}.file-upload-btn:hover{background:#503693ff;transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.io-textarea{width:100%;height:100%;border:2px dashed transparent;outline:none;padding:1rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem;line-height:1.5;resize:none;background:white;transition:all .2s ease}.io-textarea:focus{box-shadow:inset 0 0 0 2px #6544bc}.recipe-panel{background:white;border:1px solid #dee2e6;border-radius:8px;padding:1rem;margin-bottom:1rem}.recipe-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.recipe-controls{display:flex;align-items:center;gap:.5rem}.recipe-button{display:flex;align-items:center;gap:.25rem;padding:.4rem .8rem;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:all .2s}.save-button{background:#28a745;color:#fff}.save-button:hover{background:#218838}.export-button{background:#17a2b8;color:#fff}.export-button:hover{background:#138496}.load-button{background:#6f42c1;color:#fff}.load-button:hover{background:#5a32a3}.recipe-header h3{margin:0;font-size:1.1rem;color:#495057}.recipe-steps-container{display:flex;flex-direction:column;gap:.75rem}.recipe-empty-state{text-align:center;padding:2rem;color:#6c757d;font-style:italic}.recipe-help{margin-top:.5rem;font-size:.8rem}.recipe-step-wrapper{transition:all .2s;border-radius:8px}.recipe-step-wrapper.drag-over{background:#e3f2fd;transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.recipe-step{background:white;border:1px solid #dee2e6;border-radius:8px;cursor:grab;transition:all .2s}.recipe-step:hover{border-color:#6544bc;box-shadow:0 2px 4px #0000000d}.recipe-step.dragging{opacity:.7;transform:rotate(2deg);cursor:grabbing;box-shadow:0 4px 12px #00000026}.recipe-step-header{display:flex;align-items:center;padding:.75rem;gap:.75rem}.recipe-step-drag{color:#6c757d;cursor:grab;display:flex;align-items:center;opacity:.6}.recipe-step-drag:hover{opacity:1}.recipe-step.dragging .recipe-step-drag{cursor:grabbing}.recipe-step-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.recipe-step-name{font-weight:600;color:#8b8b8b;font-size:.9rem}.recipe-step-params-inline{display:flex;gap:.5rem;flex-wrap:wrap}.param-badge{background:rgba(0,123,255,.1);color:#6544bc;border:1px solid rgba(0,123,255,.2);border-radius:12px;padding:.1rem .5rem;font-size:.75rem;font-weight:500}.recipe-step-controls{display:flex;align-items:center;gap:.25rem}.recipe-step-move-controls{display:flex;flex-direction:column;gap:.1rem}.recipe-step-control{background:none;border:1px solid transparent;border-radius:4px;padding:.25rem;cursor:pointer;color:#6c757d;display:flex;align-items:center;justify-content:center;transition:all .2s}.recipe-step-control:hover:not(:disabled){background:#f8f9fa;border-color:#dee2e6;color:#495057}.recipe-step-control:disabled{opacity:.3;cursor:not-allowed}.recipe-step-remove{background:none;border:1px solid transparent;border-radius:4px;padding:.25rem;cursor:pointer;color:#dc3545;display:flex;align-items:center;justify-content:center;transition:all .2s}.recipe-step-remove:hover{background:#f8d7da;border-color:#f5c6cb}.recipe-step-params-panel{border-top:1px solid #f0f0f0;padding:.75rem;background:#f8f9fa;border-bottom-left-radius:8px;border-bottom-right-radius:8px;display:flex;flex-direction:column;gap:.75rem}.param-input-group{display:flex;align-items:center;gap:.75rem}.param-label{font-size:.85rem;font-weight:500;color:#495057;min-width:80px}.param-input-full{flex:1;padding:.5rem;border:1px solid #ced4da;border-radius:4px;font-size:.85rem;background:white}.param-input-full:focus{outline:none;border-color:#6544bc;box-shadow:0 0 0 2px #007bff40}.recipe-step.encode{border-left:4px solid #6544bc}.recipe-step.decode{border-left:4px solid #28a745}.recipe-step.cipher{border-left:4px solid #ffc107}.recipe-step.hash{border-left:4px solid #dc3545}.recipe-step.serialization{border-left:4px solid #6f42c1}.recipe-step.base_extended{border-left:4px solid #17a2b8}.recipe-step.bitwise{border-left:4px solid #fd7e14}.recipe-step.compression{border-left:4px solid #20c997}.recipe-step.dataformat{border-left:4px solid #e83e8c}.recipe-step.extraction{border-left:4px solid #17a2b8}.search-box{width:100%;padding:.5rem;border:1px solid #ced4da;border-radius:4px;margin-bottom:1rem;font-size:.9rem}.search-box:focus{outline:none;border-color:#6544bc;box-shadow:0 0 0 2px #007bff40}.clear-button{background:#6c757d;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.85rem}.clear-button:hover{background:#545b62}.error-message{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px;padding:.75rem;margin-bottom:1rem;font-size:.9rem}.param-input{width:60px;padding:.25rem;border:1px solid #ced4da;border-radius:3px;font-size:.8rem;margin-left:.5rem}@media (max-width: 768px){.header{padding:.75rem}.header-left{gap:.75rem}.header-logo{height:28px}.header-text{display:none}.header-right{gap:.5rem}.baysec-link{padding:.4rem .75rem;font-size:.8rem}.baysec-link span{display:none}.github-link{padding:.4rem .75rem;font-size:.8rem}.github-link span{display:none}.main-content{flex-direction:column}.sidebar{width:100%;height:200px}.io-panel{flex-direction:column}}.dark-mode body{background:#1a1a1a;color:#e4e4e4}.dark-mode .header{background:#2a2a2a;color:#e4e4e4;border-bottom:1px solid #444}.dark-mode .subheader{background:#2a2a2a;border-bottom:1px solid #444}.dark-mode .tab-separator{background:#555}.dark-mode .theme-toggle{border-color:#fff3;color:#e4e4e4}.dark-mode .theme-toggle:hover{background:rgba(255,255,255,.1);border-color:#ffffff4d}.dark-mode .baysec-link{color:#e4e4e4;border-color:#fff3}.dark-mode .baysec-link:hover{background:rgba(255,255,255,.1);border-color:#ffffff4d;color:#e4e4e4}.dark-mode .baysec-link:visited{color:#e4e4e4}.dark-mode .github-link{color:#e4e4e4;border-color:#fff3}.dark-mode .github-link:hover{background:rgba(255,255,255,.1);border-color:#ffffff4d;color:#e4e4e4}.dark-mode .github-link:visited{color:#e4e4e4}.dark-mode .sidebar{background:#2a2a2a;border-right:1px solid #444}.dark-mode .operation-category h3{color:#999}.dark-mode .operation-item{background:#3a3a3a;color:#e4e4e4;border:1px solid #555}.dark-mode .operation-item:hover{background:rgb(33,20,31);color:#e4e4e4}.dark-mode .search-box{background:#3a3a3a;color:#e4e4e4;border-color:#555}.dark-mode .search-box::placeholder{color:#999}.dark-mode .search-box:focus{border-color:#21141f;box-shadow:0 0 0 2px #21141f40}.dark-mode .recipe-panel{background:#2a2a2a;border-color:#444}.dark-mode .recipe-step{background:#3a3a3a;border-color:#555;color:#e4e4e4}.dark-mode .recipe-step:hover{background:rgba(83,83,83,1);color:#e4e4e4}.dark-mode .recipe-step-params-panel{background:#2a2a2a;border-top-color:#444}.dark-mode .param-label{color:#999}.dark-mode .param-input-full{background:#3a3a3a;color:#e4e4e4;border-color:#555}.dark-mode .param-input-full:focus{border-color:#21141f;box-shadow:0 0 0 2px #21141f40}.dark-mode .param-input{background:#3a3a3a;color:#e4e4e4;border-color:#555}.dark-mode .io-section{background:#2a2a2a;border-color:#444}.dark-mode .io-header{background:#3a3a3a;color:#e4e4e4}.dark-mode .io-textarea{background:#1a1a1a;color:#e4e4e4;border-color:transparent}.dark-mode .io-textarea::placeholder{color:#999}.dark-mode .io-textarea:focus{border-color:#21141f;box-shadow:0 0 0 2px #21141f40}.dark-mode .clear-button{background:#555}.dark-mode .clear-button:hover{background:#666}.dark-mode .file-upload-btn{background:#6f42c1;color:#e4e4e4}.dark-mode .file-upload-btn:hover{background:#5e38a4ff}.dark-mode .error-message{background:#8b2635;color:#ffb3ba;border-color:#a53545}.dark-mode .recipe-step-remove:hover{background:#8b2635;border-color:#a53545}.dark-mode .tab-navigation{background:#3a3a3a;border-color:#555}.dark-mode .tab-button{color:#999}.dark-mode .tab-button:hover{color:#e4e4e4;background:rgba(255,255,255,.05)}.dark-mode .tab-button.active{background:#2a2a2a;color:#b192ff;box-shadow:0 2px 4px #0003}.dark-mode .tab-button:disabled{opacity:.5;cursor:not-allowed;background:none}.dark-mode .tab-button:disabled:hover{background:none;color:#999}.dark-mode .view-mode-toggle .tab-navigation{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}.dark-mode .copy-button{background:#8A42EF}.dark-mode .copy-button:hover:not(:disabled){background:#8A42EF}.dark-mode .copy-button:disabled{background:#555}.dark-mode .recipe-button{color:#fff}.dark-mode .save-button{background:#28a745}.dark-mode .save-button:hover{background:#218838}.dark-mode .export-button{background:#17a2b8}.dark-mode .export-button:hover{background:#138496}.dark-mode .load-button{background:#6f42c1}.dark-mode .load-button:hover{background:#5a32a3}.hash-type-dropdown{position:relative}.hash-type-selected{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border:1px solid var(--border, #ced4da);border-radius:4px;background:var(--background, white);cursor:pointer;-webkit-user-select:none;user-select:none}.hash-type-selected:hover{border-color:#6544bc}.hash-type-dropdown-menu{position:absolute;top:100%;left:0;right:0;z-index:1000;background:var(--background, white);border:1px solid var(--border, #ced4da);border-radius:4px;box-shadow:0 4px 8px #0000001a;max-height:300px;overflow:hidden}.hash-type-search{display:flex;align-items:center;padding:.5rem;gap:.5rem;border-bottom:1px solid var(--border, #e9ecef);background:var(--input-bg, #f8f9fa)}.hash-type-search input{flex:1;padding:.25rem;border:none;outline:none;background:transparent;font-size:.85rem}.hash-type-options{max-height:240px;overflow-y:auto}.hash-type-option{display:flex;justify-content:space-between;align-items:center;padding:.5rem;cursor:pointer;border-bottom:1px solid var(--border-light, #f0f0f0);transition:background-color .15s}.hash-type-option:hover:not(.disabled){background:var(--hover-bg, #f8f9fa)}.hash-type-option.selected{background:#6544bc;color:#fff}.hash-type-option.disabled{cursor:not-allowed;opacity:.6;font-style:italic}.hash-type-value{color:var(--text-muted, #6c757d);font-size:.75rem;font-family:monospace}.hash-type-option.selected .hash-type-value{color:#fffc}.gpu-info{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.gpu-details{opacity:.8;font-size:.75rem}.dark-mode .hash-type-selected{background:#3a3a3a;color:#e4e4e4;border-color:#555}.dark-mode .hash-type-dropdown-menu{background:#2a2a2a;border-color:#444;box-shadow:0 4px 8px #0000004d}.dark-mode .hash-type-search{background:#3a3a3a;border-bottom-color:#444}.dark-mode .hash-type-search input{color:#e4e4e4}.dark-mode .hash-type-option{color:#e4e4e4;border-bottom-color:#444}.dark-mode .hash-type-option:hover:not(.disabled){background:#444}.dark-mode .hash-type-value{color:#999}.drag-tip{margin-bottom:1rem;padding:.75rem;background:#e7e3ff;border-radius:6px;font-size:.8rem}.dark-mode .drag-tip{background:rgba(101,68,188,.2);color:#e4e4e4}
