.algorithm-stats{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(180deg,#151b3df2,#0a0e27e6);border:2px solid #00d4ff80;border-radius:12px;box-shadow:0 8px 32px #00d4ff66,0 4px 16px #0099cc4d,inset 0 1px 0 #00fff533;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;max-width:420px;min-width:320px;overflow:hidden;padding:20px;position:relative}.algorithm-stats:before{animation:statsScan 3s linear infinite;background:linear-gradient(90deg,#0000,#00fff5cc,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}@keyframes statsScan{0%{transform:translateY(0)}to{transform:translateY(400px)}}.algorithm-stats:after{background-image:linear-gradient(#00d4ff08 1px,#0000 0),linear-gradient(90deg,#00d4ff08 1px,#0000 0);background-size:20px 20px;bottom:0;content:"";left:0;opacity:.6;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.stats-header{align-items:center;border-bottom:2px solid #00d4ff66;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px;position:relative;z-index:1}.stats-header h3{color:#00fff5;font-size:18px;font-weight:700;letter-spacing:2px;margin:0;text-shadow:0 0 15px #00fff599;text-transform:uppercase}.status-badge{border:1px solid;border-radius:16px;box-shadow:0 0 15px;font-size:11px;font-weight:600;letter-spacing:1px;padding:6px 14px;text-transform:uppercase}.status-waiting{background:linear-gradient(135deg,#6464784d,#5050644d);border-color:#6080a0;box-shadow:0 0 10px #6080a066;color:#a0b0d0}.status-running{animation:runningPulse 1.5s ease-in-out infinite;background:linear-gradient(135deg,#00d4ff4d,#0099cc4d);border-color:#00d4ff;box-shadow:0 0 15px #00d4ff99;color:#00fff5}@keyframes runningPulse{0%,to{box-shadow:0 0 15px #00d4ff99}50%{box-shadow:0 0 25px #00fff5e6}}.status-success{background:linear-gradient(135deg,#00ff884d,#00cc6a4d);border-color:#0f8;box-shadow:0 0 15px #0f89;color:#0f8}.status-failed{background:linear-gradient(135deg,#ff00804d,#cc00664d);border-color:#ff0080;box-shadow:0 0 15px #ff008099;color:#f39}.stats-content{position:relative;z-index:1}.stat-item.algorithm-name{background:linear-gradient(90deg,#00d4ff1a,#00fff526,#00d4ff1a);border:1px solid #00d4ff4d;border-radius:8px;margin-bottom:16px;padding:12px;text-align:center}.stat-item.algorithm-name .stat-label{font-size:11px;margin-bottom:6px;opacity:.8}.stat-item.algorithm-name .stat-value{font-size:20px;font-weight:700}.stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.stat-item{background:#00d4ff0d;border:1px solid #00d4ff33;border-radius:8px;overflow:hidden;padding:12px;position:relative;transition:all .3s ease}.stat-item:hover{background:linear-gradient(90deg,#00d4ff1a,#00fff526,#00d4ff1a);border-color:#00fff566;box-shadow:0 4px 15px #00d4ff4d;transform:translateY(-2px)}.stat-label{align-items:center;color:#a0c4d4;display:flex;font-size:11px;font-weight:600;gap:6px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.stat-icon{filter:drop-shadow(0 0 3px rgba(0,212,255,.6));font-size:14px}.stat-value{color:#00fff5;font-size:24px;font-weight:700;line-height:1;text-shadow:0 0 10px #00fff599}.stat-value.highlight{-webkit-text-fill-color:#0000;animation:gradientShift 4s ease infinite;background:linear-gradient(135deg,#00fff5,#00d4ff,#9d4edd);-webkit-background-clip:text;background-clip:text;background-size:200% 200%}.efficiency-excellent{color:#0f8!important;text-shadow:0 0 15px #0f8c!important}.efficiency-good{color:#00d4ff!important;text-shadow:0 0 15px #00d4ffcc!important}.efficiency-fair{color:gold!important;text-shadow:0 0 15px #ffd700cc!important}.efficiency-poor{color:#f39!important;text-shadow:0 0 15px #f39c!important}.efficiency-na{color:#a0b0d0!important;text-shadow:none!important}.efficiency-bar-container{background:#00d4ff0d;border:1px solid #00d4ff33;border-radius:8px;margin-top:20px;padding:16px}.efficiency-bar-label{color:#a0c4d4;font-size:11px;font-weight:600;letter-spacing:1px;margin-bottom:10px;text-transform:uppercase}.efficiency-bar{background:#0006;border:1px solid #00d4ff4d;border-radius:6px;box-shadow:inset 0 2px 4px #0000004d;height:12px;overflow:hidden;position:relative;width:100%}.efficiency-bar-fill{border-radius:6px;box-shadow:0 0 15px;height:100%;position:relative;transition:width .8s ease-out}.efficiency-bar-fill.efficiency-excellent{background:linear-gradient(90deg,#0f8,#00cc6a);box-shadow:0 0 15px #0f8c}.efficiency-bar-fill.efficiency-good{background:linear-gradient(90deg,#00d4ff,#09c);box-shadow:0 0 15px #00d4ffcc}.efficiency-bar-fill.efficiency-fair{background:linear-gradient(90deg,gold,#fa0);box-shadow:0 0 15px #ffd700cc}.efficiency-bar-fill.efficiency-poor{background:linear-gradient(90deg,#f39,#ff0080);box-shadow:0 0 15px #f39c}.efficiency-bar-value{color:#00d4ff;font-size:12px;font-weight:600;margin-top:6px;text-align:right}.algorithm-stats.empty-state{display:flex;flex-direction:column;min-height:200px}.empty-message{align-items:center;display:flex;flex:1 1;justify-content:center;padding:20px;position:relative;text-align:center;z-index:1}.empty-message p{color:#a0c4d4;font-size:14px;line-height:1.6;margin:0}@media (max-width:768px){.algorithm-stats{max-width:100%;min-width:280px;padding:16px}.stats-header h3{font-size:16px}.stats-grid{gap:10px;grid-template-columns:1fr}.stat-value{font-size:20px}.stat-item.algorithm-name .stat-value{font-size:18px}}@media (prefers-color-scheme:dark){.algorithm-stats{background:linear-gradient(180deg,#0a0e27fa,#050714f2);border-color:#00d4ff99;box-shadow:0 8px 32px #00d4ff80,0 4px 16px #09c6,inset 0 1px 0 #00fff54d}}.error-boundary{align-items:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;justify-content:center;min-height:100vh;padding:20px}.error-boundary-content{background:#fff;border-radius:12px;box-shadow:0 10px 25px #0000001a;max-width:600px;padding:40px;text-align:center;width:100%}.error-icon{font-size:4rem;margin-bottom:20px;opacity:.8}.error-title{color:#e74c3c;font-size:2rem;font-weight:600;margin-bottom:16px;margin-top:0}.error-message{color:#666;font-size:1.1rem;line-height:1.6;margin-bottom:30px}.error-details{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:15px;text-align:left}.error-details summary{color:#dc3545;cursor:pointer;font-weight:600;margin-bottom:10px;outline:none}.error-details summary:hover{color:#c82333}.error-stack{color:#495057;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.4}.error-stack pre{background:#fff;border:1px solid #dee2e6;border-radius:4px;margin:8px 0;overflow-x:auto;padding:10px;white-space:pre-wrap;word-break:break-word}.error-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:30px}.error-button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;gap:8px;padding:12px 24px;text-decoration:none;transition:all .2s ease}.error-button-primary{background:#007bff;color:#fff}.error-button-primary:hover{background:#0056b3;transform:translateY(-1px)}.error-button-secondary{background:#6c757d;color:#fff}.error-button-secondary:hover{background:#545b62;transform:translateY(-1px)}.error-help{background:#f8f9fa;border-left:4px solid #17a2b8;border-radius:0 8px 8px 0;margin-top:20px;padding:20px;text-align:left}.error-help p{color:#495057;font-weight:600;margin:0 0 15px}.error-help ul{color:#6c757d;margin:0;padding-left:20px}.error-help li{line-height:1.4;margin-bottom:8px}@media (max-width:768px){.error-boundary{padding:15px}.error-boundary-content{padding:30px 20px}.error-title{font-size:1.5rem}.error-actions{align-items:center;flex-direction:column}.error-button{max-width:250px;width:100%}}@media (prefers-color-scheme:dark){.error-boundary{background:linear-gradient(135deg,#2c3e50,#34495e)}.error-boundary-content{background:#343a40;color:#fff}.error-message{color:#ced4da}.error-details{background:#495057;border-color:#6c757d}.error-stack{color:#ced4da}.error-stack pre{background:#495057;border-color:#6c757d;color:#f8f9fa}.error-help{background:#495057;border-left-color:#20c997}.error-help p{color:#ced4da}.error-help ul{color:#adb5bd}}.grid{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(180deg,#283c78cc,#3c508cd9);border:3px solid #00fff5e6;border-radius:12px;box-shadow:0 0 40px #00fff599,0 0 80px #00d4ff66,0 15px 60px #0099cc80,inset 0 2px 0 #00fff580,inset 0 0 80px #00d4ff26;display:grid;grid-template-columns:repeat(auto-fill,25px);margin:0 auto;max-width:100%;overflow:hidden;padding:12px;position:relative;transform:perspective(1200px) rotateX(2deg);transform-style:preserve-3d}.grid:before{background-image:linear-gradient(#00fff540 1px,#0000 0),linear-gradient(90deg,#00fff540 1px,#0000 0);background-size:25px 25px;bottom:0;opacity:.6}.grid:after,.grid:before{content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.grid:after{animation:gridScan 4s linear infinite;background:linear-gradient(90deg,#0000,#00fff599,#0000);filter:blur(1px);height:3px}@keyframes gridScan{0%{opacity:.8;transform:translateY(0)}50%{opacity:1}to{opacity:.8;transform:translateY(600px)}}.grid-row{display:contents}.grid:hover{border-color:#00fff5;box-shadow:0 0 50px #00fff5cc,0 0 100px #00d4ff99,0 20px 80px #09c9,inset 0 2px 0 #00fff599,inset 0 0 100px #00d4ff33;transform:perspective(1200px) rotateX(1deg) scale(1.01)}@media (max-width:768px){.grid{border-width:2px;padding:6px}}.cell{align-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:linear-gradient(135deg,#ffffff1f,#c8e6ff26);border:1px solid #00fff580;box-shadow:inset 0 0 8px #00d4ff33,0 0 3px #00fff54d;cursor:pointer;display:flex;height:25px;justify-content:center;position:relative;transition:all .3s ease;width:25px}.cell:before{background:linear-gradient(135deg,#0000,#00fff540 50%,#0000);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.cell:hover:before{opacity:1}.cell-start{animation:pulse-start 2s infinite;background:linear-gradient(135deg,#0fa,#0f8);border:2px solid #0fc;box-shadow:0 0 25px #00ffaae6,0 0 40px #0f89,inset 0 0 20px #ffffff4d}.cell-end{animation:pulse-end 2s infinite;background:linear-gradient(135deg,#f39,#ff0080);border:2px solid #f3a;box-shadow:0 0 25px #ff3399e6,0 0 40px #ff008099,inset 0 0 20px #ffffff4d}.cell-wall{background:linear-gradient(135deg,#1a1f35,#0a0e27);border:1px solid #2d3748;box-shadow:inset 0 0 10px #000c,0 0 5px #00d4ff33;position:relative;transform:scale(.95)}.cell-wall:after{background-image:linear-gradient(#00d4ff0d 1px,#0000 0),linear-gradient(90deg,#00d4ff0d 1px,#0000 0);background-size:5px 5px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.cell-weighted{animation:weightPulse 2s ease-in-out infinite;background:radial-gradient(circle,gold,#fa0);border:2px solid gold;box-shadow:0 0 15px #ffd700b3,inset 0 0 10px #ffffff4d}@keyframes weightPulse{0%,to{box-shadow:0 0 15px #ffd700b3,inset 0 0 10px #ffffff4d;transform:scale(1)}50%{box-shadow:0 0 25px gold,inset 0 0 15px #ffffff80;transform:scale(1.05)}}.cell-path{animation:path-glow 1.2s ease-in-out;background:linear-gradient(135deg,#6ff,#00fff5);border:2px solid #6ff;box-shadow:0 0 30px #6ff,0 0 50px #00fff599,inset 0 0 20px #fff6}.cell-visited{animation:visited-appear .4s ease-out;background:linear-gradient(135deg,#3df,#00d4ff);border:1px solid #0ef;box-shadow:0 0 15px #00eeffb3,0 0 25px #00d4ff66,inset 0 0 12px #ffffff40}@keyframes pulse-start{0%,to{box-shadow:0 0 20px #0f8c,inset 0 0 15px #fff3;transform:scale(1)}50%{box-shadow:0 0 35px #0f8,0 0 60px #00ff8880,inset 0 0 20px #fff6;transform:scale(1.1)}}@keyframes pulse-end{0%,to{box-shadow:0 0 20px #ff0080cc,inset 0 0 15px #fff3;transform:scale(1)}50%{box-shadow:0 0 35px #ff0080,0 0 60px #ff008080,inset 0 0 20px #fff6;transform:scale(1.1)}}@keyframes visited-appear{0%{background:#ffffff08;opacity:0;transform:scale(.7)}50%{transform:scale(1.15)}to{background:linear-gradient(135deg,#00d4ff,#09c);opacity:1;transform:scale(1)}}@keyframes path-glow{0%{background:linear-gradient(135deg,#00d4ff,#09c);box-shadow:0 0 12px #00d4ff99;transform:scale(1)}30%{box-shadow:0 0 35px #00fff5,0 0 60px #00fff599;transform:scale(1.2)}60%{background:linear-gradient(135deg,gold,#fa0);box-shadow:0 0 30px gold,0 0 50px #ffd70080}to{background:linear-gradient(135deg,#00fff5,#00d4ff);box-shadow:0 0 25px #00fff5e6,inset 0 0 15px #ffffff4d;transform:scale(1)}}.cell:hover:not(.cell-start):not(.cell-end){background:linear-gradient(135deg,#00d4ff26,#00fff540,#00d4ff26);border-color:#00fff599;box-shadow:0 0 15px #00fff580,inset 0 0 10px #00d4ff4d;transform:scale(1.1);z-index:10}.cell:active:not(.cell-start):not(.cell-end){box-shadow:0 0 10px #00d4ff66,inset 0 0 15px #00fff533;transform:scale(.95)}.cell-end:hover,.cell-start:hover{filter:brightness(1.2);transform:scale(1.15);z-index:10}@media (max-width:768px){.cell{height:22px;width:22px}.cell:hover:not(.cell-start):not(.cell-end){transform:scale(1.05)}}.interactive-legend{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(180deg,#151b3df2,#0a0e27e6);border:2px solid #00d4ff80;border-radius:12px;box-shadow:0 8px 32px #00d4ff66,0 4px 16px #0099cc4d,inset 0 1px 0 #00fff533;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-width:360px;min-width:320px;overflow:hidden;padding:20px;position:relative}.interactive-legend:before{animation:legendScan 3s linear infinite;background:linear-gradient(90deg,#0000,#00fff5cc,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}@keyframes legendScan{0%{transform:translateY(0)}to{transform:translateY(400px)}}.interactive-legend:after{background-image:linear-gradient(#00d4ff08 1px,#0000 0),linear-gradient(90deg,#00d4ff08 1px,#0000 0);background-size:20px 20px;bottom:0;content:"";left:0;opacity:.6;pointer-events:none;position:absolute;right:0;top:0}.legend-title{align-items:center;border-bottom:2px solid #00d4ff66;color:#00fff5;display:flex;font-size:18px;font-weight:700;justify-content:space-between;letter-spacing:2px;margin-bottom:18px;padding-bottom:10px;position:relative;text-shadow:0 0 15px #00fff599;text-transform:uppercase;z-index:1}.current-mode{background:linear-gradient(135deg,#09c,#00d4ff);border:1px solid #00fff5;border-radius:16px;box-shadow:0 0 15px #00d4ff99,inset 0 -1px 4px #0000004d;color:#fff;font-size:11px;font-weight:600;letter-spacing:1px;padding:5px 12px;text-transform:uppercase}.legend-items{margin-bottom:18px;position:relative;z-index:1}.legend-item-container{border:1px solid #0000;border-radius:8px;margin-bottom:10px;overflow:hidden;position:relative;transition:all .3s ease}.legend-item-container.clickable{cursor:pointer}.legend-item-container.clickable:hover{background:linear-gradient(90deg,#00d4ff1a,#00fff526,#00d4ff1a);border-color:#00d4ff4d;box-shadow:0 4px 15px #00d4ff4d,inset 0 0 20px #00fff51a;transform:translateX(5px)}.legend-item-container.active{background:linear-gradient(90deg,#09c3,#00d4ff4d,#09c3);border:2px solid #00d4ff;box-shadow:0 4px 20px #00d4ff80,inset 0 0 30px #00fff526}.legend-item-container.active:before{animation:activePulse 2s ease-in-out infinite;border:2px solid #00fff5;border-radius:8px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes activePulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:0;transform:scale(1.05)}}.legend-item{align-items:center;display:flex;gap:14px;padding:10px 14px;position:relative;z-index:1}.legend-icon{border:2px solid #ffffff4d;border-radius:3px;box-shadow:0 0 10px #00d4ff4d;flex-shrink:0;height:20px;position:relative;transition:all .3s ease;width:20px}.legend-item-container.active .legend-icon{box-shadow:0 0 20px #00fff5cc;transform:scale(1.15)}.legend-icon.start-node{background:linear-gradient(135deg,#0f8,#00cc6a);border-color:#0f8;box-shadow:0 0 15px #00ff88b3;position:relative}.legend-icon.start-node:after{color:#fff;content:"▶";font-size:10px;left:50%;line-height:1;position:absolute;text-shadow:0 0 5px #00000080;top:50%;transform:translate(-50%,-50%)}.legend-icon.target-node{background:linear-gradient(135deg,#ff0080,#c06);border-color:#ff0080;box-shadow:0 0 15px #ff0080b3;position:relative}.legend-icon.target-node:after{content:"🎯";font-size:10px;left:50%;line-height:1;position:absolute;top:50%;transform:translate(-50%,-50%)}.legend-icon.wall-node{background:linear-gradient(135deg,#1a1f35,#0a0e27);border-color:#2d3748;box-shadow:inset 0 0 10px #000c,0 0 8px #00d4ff33}.legend-icon.weight-node{background:radial-gradient(circle,gold,#fa0);border-color:gold;box-shadow:0 0 15px #ffd700b3;position:relative}.legend-icon.weight-node:after{color:#fff;content:"W";font-size:10px;font-weight:700;left:50%;line-height:1;position:absolute;text-shadow:0 0 5px #00000080;top:50%;transform:translate(-50%,-50%)}.legend-icon.path-node{animation:pathPulse 2s infinite;background:linear-gradient(135deg,#00fff5,#00d4ff);border-color:#00fff5;box-shadow:0 0 20px #00fff5cc}@keyframes pathPulse{0%,to{box-shadow:0 0 20px #00fff5cc;transform:scale(1)}50%{box-shadow:0 0 30px #00fff5;transform:scale(1.1)}}.legend-icon.visited-node{background:linear-gradient(135deg,#00d4ff,#09c);border-color:#00d4ff;box-shadow:0 0 12px #00d4ffb3;opacity:.9}.legend-icon.unvisited-node{background:#ffffff0d;border-color:#00d4ff66;box-shadow:inset 0 0 10px #00d4ff33}.legend-label{color:#e0f7ff;flex:1 1;font-size:14px;font-weight:500;letter-spacing:.5px}.legend-badge{background:linear-gradient(135deg,#00ff884d,#00cc6a4d);border:1px solid #0f8;border-radius:12px;box-shadow:0 0 10px #0f86;color:#0f8;font-size:10px;font-weight:600;letter-spacing:.5px;padding:3px 8px;text-transform:uppercase}.legend-item-container.active .legend-badge{background:linear-gradient(135deg,#00d4ff,#00fff5);border-color:#00fff5;box-shadow:0 0 15px #00fff599;color:#fff}.legend-description{animation:expandDescription .3s ease-out;background:#00d4ff14;border-radius:0 0 8px 8px;border-top:1px solid #00d4ff33;color:#a0c4d4;font-size:12px;line-height:1.5;margin-top:-4px;padding:10px 14px}@keyframes expandDescription{0%{max-height:0;opacity:0}to{max-height:100px;opacity:1}}.legend-tips{border-top:2px solid #00d4ff4d;color:#a0c4d4;font-size:12px;padding-top:14px;position:relative;z-index:1}.legend-tips p{color:#00fff5;font-size:13px;font-weight:700;letter-spacing:1px;margin:0 0 10px;text-transform:uppercase}.legend-tips ul{list-style-type:none;margin:0;padding-left:18px}.legend-tips li{line-height:1.5;margin-bottom:6px;padding-left:8px;position:relative}.legend-tips li:before{color:#00d4ff;content:"▸";left:-10px;position:absolute;text-shadow:0 0 10px #00d4ffcc}@media (max-width:768px){.interactive-legend{max-width:320px;min-width:280px;padding:16px}.legend-title{font-size:16px;margin-bottom:14px}.current-mode{font-size:10px;padding:4px 10px}.legend-item{gap:10px;padding:8px 12px}.legend-icon{height:18px;width:18px}.legend-label{font-size:13px}.legend-badge{font-size:9px;padding:2px 6px}}@media (prefers-color-scheme:dark){.interactive-legend{background:linear-gradient(180deg,#0a0e27fa,#050714f2);border-color:#00d4ff99;box-shadow:0 8px 32px #00d4ff80,0 4px 16px #09c6,inset 0 1px 0 #00fff54d}.legend-title{border-bottom-color:#00d4ff80;color:#00fff5}.legend-label{color:#e0f7ff}.legend-item-container.clickable:hover{background:linear-gradient(90deg,#00d4ff26,#00fff533,#00d4ff26)}.legend-item-container.active{background:linear-gradient(90deg,#0099cc40,#00d4ff59,#0099cc40);border-color:#00fff5}.legend-description{background:#00d4ff1f;border-top-color:#00d4ff4d;color:#b0d4e4}.legend-tips{border-top-color:#00d4ff66;color:#b0d4e4}.legend-tips p{color:#00fff5}.legend-icon.unvisited-node{background:#00d4ff14;border-color:#00d4ff80}}:root{--primary-blue:#00d4ff;--secondary-blue:#09c;--deep-blue:#003d5c;--cyber-purple:#9d4edd;--neon-cyan:#00fff5;--dark-bg:#0a0e27;--dark-panel:#151b3d;--gradient-start:#001f3f;--gradient-end:#003d5c;--glow-blue:#00d4ff99;--glow-cyan:#00fff580}.App{background:linear-gradient(135deg,#0a0e27,#001f3f 50%,#003d5c);background:linear-gradient(135deg,var(--dark-bg) 0,var(--gradient-start) 50%,var(--gradient-end) 100%);min-height:100vh;overflow-x:hidden;position:relative;text-align:center}.App:before{animation:particleFloat 20s ease-in-out infinite;background-image:radial-gradient(2px 2px at 20% 30%,#00fff5,#0000),radial-gradient(2px 2px at 60% 70%,#00d4ff,#0000),radial-gradient(1px 1px at 50% 50%,#9d4edd,#0000),radial-gradient(1px 1px at 80% 10%,#00fff5,#0000),radial-gradient(2px 2px at 90% 60%,#00d4ff,#0000),radial-gradient(1px 1px at 33% 80%,#00fff5,#0000);background-image:radial-gradient(2px 2px at 20% 30%,var(--neon-cyan),#0000),radial-gradient(2px 2px at 60% 70%,var(--primary-blue),#0000),radial-gradient(1px 1px at 50% 50%,var(--cyber-purple),#0000),radial-gradient(1px 1px at 80% 10%,var(--neon-cyan),#0000),radial-gradient(2px 2px at 90% 60%,var(--primary-blue),#0000),radial-gradient(1px 1px at 33% 80%,var(--neon-cyan),#0000);background-position:0 0;background-size:200% 200%;content:"";height:100%;left:0;opacity:.3;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}@keyframes particleFloat{0%,to{background-position:0 0}50%{background-position:100% 100%}}.App-header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#151b3df2,#0a0e27e6);border-bottom:2px solid #00d4ff;border-bottom:2px solid var(--primary-blue);box-shadow:0 4px 30px #00d4ff4d,0 8px 60px #09c3;color:#00fff5;color:var(--neon-cyan);display:flex;flex-direction:column;padding:20px 10px;position:relative;z-index:10}.App-header:after{animation:holoScan 3s linear infinite;background:linear-gradient(90deg,#0000,#00d4ff1a,#0000);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes holoScan{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}h1{-webkit-text-fill-color:#0000;animation:gradientShift 4s ease infinite;background:linear-gradient(135deg,#00fff5,#00d4ff,#9d4edd);background:linear-gradient(135deg,var(--neon-cyan),var(--primary-blue),var(--cyber-purple));-webkit-background-clip:text;background-clip:text;background-size:200% 200%;font-size:2.2rem;font-weight:700;letter-spacing:2px;margin:0;position:relative;text-shadow:0 0 30px #00fff580,0 0 60px #00d4ff99;text-shadow:0 0 30px var(--glow-cyan),0 0 60px var(--glow-blue);z-index:1}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.controls{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:15px;z-index:1}.btn,.controls{position:relative}.btn{background:linear-gradient(135deg,#09c,#00d4ff);background:linear-gradient(135deg,var(--secondary-blue),var(--primary-blue));border:2px solid #00d4ff;border:2px solid var(--primary-blue);border-radius:8px;box-shadow:0 4px 15px #00d4ff99,inset 0 -2px 8px #0000004d;box-shadow:0 4px 15px var(--glow-blue),inset 0 -2px 8px #0000004d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:1px;overflow:hidden;padding:12px 24px;text-transform:uppercase;transition:all .3s ease}.btn:before{animation:shimmer 3s infinite;background:linear-gradient(45deg,#0000,#ffffff1a,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.btn:hover{background:linear-gradient(135deg,#00d4ff,#00fff5);background:linear-gradient(135deg,var(--primary-blue),var(--neon-cyan));border-color:#00fff5;border-color:var(--neon-cyan);box-shadow:0 6px 25px #00fff580,0 0 40px #00d4ff99,inset 0 -2px 8px #0000004d;box-shadow:0 6px 25px var(--glow-cyan),0 0 40px var(--glow-blue),inset 0 -2px 8px #0000004d;transform:translateY(-2px)}.btn:active{box-shadow:0 2px 10px #00d4ff99,inset 0 -2px 8px #0000004d;box-shadow:0 2px 10px var(--glow-blue),inset 0 -2px 8px #0000004d;transform:translateY(0)}.reset-board-btn{background:linear-gradient(135deg,#d63384,#c82373);border-color:#d63384;box-shadow:0 4px 15px #d6338480,inset 0 -2px 8px #0000004d}.reset-board-btn:hover{background:linear-gradient(135deg,#ff0080,#d63384);border-color:#ff0080;box-shadow:0 6px 25px #ff008099,0 0 40px #d6338466,inset 0 -2px 8px #0000004d}.btn:disabled{color:#4a5568;cursor:not-allowed;opacity:.5}.btn:disabled,.btn:disabled:hover{background:linear-gradient(135deg,#1a1f35,#0a0e27);border-color:#2d3748;box-shadow:none;transform:none}.btn.animating{animation:pulseGlow 1.5s infinite}@keyframes pulseGlow{0%,to{box-shadow:0 4px 15px #00d4ff99,inset 0 -2px 8px #0000004d;box-shadow:0 4px 15px var(--glow-blue),inset 0 -2px 8px #0000004d}50%{box-shadow:0 6px 30px #00fff580,0 0 50px #00d4ff99,inset 0 -2px 8px #0000004d;box-shadow:0 6px 30px var(--glow-cyan),0 0 50px var(--glow-blue),inset 0 -2px 8px #0000004d}}main{align-items:center;display:flex;justify-content:center;margin-top:20px;padding:40px 20px;position:relative;z-index:1}main:before{animation:platformPulse 3s ease-in-out infinite;background:linear-gradient(90deg,#0000,#00fff566 20%,#00fff599 50%,#00fff566 80%,#0000);border-radius:50%;bottom:0;box-shadow:0 0 40px #00fff580,0 0 80px #00d4ff4d;content:"";filter:blur(8px);height:8px;left:50%;position:absolute;transform:translateX(-50%);width:90%}@keyframes platformPulse{0%,to{opacity:.6;transform:translateX(-50%) scaleX(1)}50%{opacity:1;transform:translateX(-50%) scaleX(1.05)}}.App-link{color:#00fff5;color:var(--neon-cyan);text-decoration:none;text-shadow:0 0 10px #00fff580;text-shadow:0 0 10px var(--glow-cyan);transition:all .3s ease}.App-link:hover{color:#00d4ff;color:var(--primary-blue);text-shadow:0 0 20px #00d4ff99;text-shadow:0 0 20px var(--glow-blue)}.legend-section{align-items:flex-start;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(180deg,#0a0e2799,#151b3dcc);border-bottom:1px solid #00d4ff4d;box-shadow:0 4px 20px #00d4ff26;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;padding:20px;position:relative;z-index:5}.start-node{background:linear-gradient(135deg,#0f8,#00cc6a);box-shadow:0 0 15px #0f89}.target-node{background:linear-gradient(135deg,#ff0080,#c06);box-shadow:0 0 15px #ff008099}.weight-node{background:linear-gradient(135deg,gold,#fa0);box-shadow:0 0 15px #ffd70099}.path-node{background:linear-gradient(135deg,#00fff5,#00d4ff);background:linear-gradient(135deg,var(--neon-cyan),var(--primary-blue));box-shadow:0 0 20px #00fff580;box-shadow:0 0 20px var(--glow-cyan)}.visited-node{background:linear-gradient(135deg,#00d4ff,#09c);background:linear-gradient(135deg,var(--primary-blue),var(--secondary-blue));box-shadow:0 0 10px #00d4ff99;box-shadow:0 0 10px var(--glow-blue)}.unvisited-node{background:#ffffff0d;border:1px solid #00d4ff;border:1px solid var(--primary-blue);box-shadow:inset 0 0 10px #00d4ff33}.wall-node{background:linear-gradient(135deg,#1a1f35,#0a0e27);box-shadow:inset 0 0 10px #000c}@media (max-width:768px){h1{font-size:1.8rem;letter-spacing:1px}.controls{flex-direction:column;gap:10px}.btn{font-size:13px;max-width:300px;padding:10px 20px;width:100%}.legend-section{align-items:center;flex-direction:column;padding:15px}}@media (max-width:480px){h1{font-size:1.5rem}.btn{font-size:12px;padding:8px 16px}.App-header{padding:15px 8px}}body{background:#0a0e27;background:var(--dark-bg);background-image:linear-gradient(#00d4ff08 1px,#0000 0),linear-gradient(90deg,#00d4ff08 1px,#0000 0);background-size:50px 50px;padding:0}.dropdown{display:inline-block;position:relative}.dropdown-btn{background:linear-gradient(135deg,#09c,#00d4ff);border:2px solid #00d4ff;border-radius:8px;box-shadow:0 4px 15px #00d4ff99,inset 0 -2px 8px #0000004d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;letter-spacing:1px;overflow:hidden;padding:12px 24px;position:relative;text-transform:uppercase;transition:all .3s ease}.dropdown-btn:before{animation:dropdownShimmer 3s infinite;background:linear-gradient(45deg,#0000,#ffffff26,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}@keyframes dropdownShimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.dropdown-btn:hover{background:linear-gradient(135deg,#00d4ff,#00fff5);border-color:#00fff5;box-shadow:0 6px 25px #00fff5b3,0 0 40px #00d4ff80,inset 0 -2px 8px #0000004d;transform:translateY(-2px)}.dropdown-btn:active{transform:translateY(0)}.dropdown-content{animation:dropdownSlideIn .3s ease-out;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:linear-gradient(180deg,#151b3dfa,#0a0e27fa);border:1px solid #00d4ff80;border-radius:8px;box-shadow:0 8px 32px #00d4ff66,0 4px 16px #0099cc4d,inset 0 1px 0 #00fff533;display:none;margin-top:8px;min-width:200px;overflow:hidden;position:absolute;z-index:1000}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-content:before{animation:dropdownScan 2s linear infinite;background:linear-gradient(90deg,#0000,#00fff5cc,#0000);content:"";height:2px;left:0;position:absolute;right:0;top:0}@keyframes dropdownScan{0%{transform:translateY(0)}to{transform:translateY(300px)}}.dropdown-content a,.dropdown-content button{background:#0000;border:none;border-bottom:1px solid #00d4ff1a;color:#00fff5;cursor:pointer;display:block;font-size:14px;font-weight:500;letter-spacing:.5px;padding:14px 20px;position:relative;text-align:left;text-decoration:none;transition:all .3s ease;width:100%}.dropdown-content a:last-child,.dropdown-content button:last-child{border-bottom:none}.dropdown-content a:hover,.dropdown-content button:hover{background:linear-gradient(90deg,#00d4ff26,#00fff540,#00d4ff26);border-left:3px solid #00fff5;box-shadow:inset 0 0 20px #00d4ff33;color:#fff;padding-left:28px;text-shadow:0 0 10px #00fff5cc}.dropdown-content button:focus{background:linear-gradient(90deg,#09c3,#00d4ff4d,#09c3);color:#fff;outline:2px solid #00d4ff;outline-offset:-2px;text-shadow:0 0 10px #00d4ffcc}.dropdown-content button:disabled{background:#0000;color:#4a5568;cursor:not-allowed;opacity:.4}.dropdown-content button:disabled:hover{background:#0000;border-left:none;box-shadow:none;padding-left:20px;text-shadow:none}.dropdown:hover .dropdown-content{display:block}.dropdown:hover .dropdown-btn{background:linear-gradient(135deg,#00d4ff,#00fff5);border-color:#00fff5;box-shadow:0 6px 25px #00fff5b3,0 0 40px #00d4ff80,inset 0 -2px 8px #0000004d}.dropdown-content:after{background-image:linear-gradient(#00d4ff0d 1px,#0000 0),linear-gradient(90deg,#00d4ff0d 1px,#0000 0);background-size:20px 20px;bottom:0;content:"";left:0;opacity:.5;pointer-events:none;position:absolute;right:0;top:0}@media (max-width:768px){.dropdown-btn{font-size:13px;padding:10px 20px}.dropdown-content{min-width:180px}.dropdown-content a,.dropdown-content button{font-size:13px;padding:12px 16px}.dropdown-content a:hover,.dropdown-content button:hover{padding-left:24px}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
/*# sourceMappingURL=main.f030b431.css.map*/