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}.navbar{align-items:center;background:#34495e;border-bottom:2px solid #1a2530;display:flex;flex-shrink:0;gap:8px;height:80px;min-height:70px;overflow-x:auto;padding:0 10px;-webkit-user-select:none;user-select:none;white-space:nowrap}@media (max-width:900px){.navbar{flex-wrap:wrap;gap:8px;height:auto;overflow-x:visible;padding:12px 8px;white-space:normal}.nav-section{flex:1 1 140px;max-width:180px;min-width:120px}.section-content{align-items:center;flex-direction:column;gap:8px!important;padding:20px 8px 12px!important}.section-title-wrapper{top:-28px!important}.section-title{font-size:.75rem!important;padding:3px 10px!important}.algo-select,.clear-btn,.maze-btn,.nav-btn,.run-btn,.weight-btn{font-size:.75rem!important;min-width:36px!important;padding:6px 8px!important}.algo-select{max-width:100px;width:100%!important}.animate-label,.darkmode-label,.speed-label{flex-direction:column;font-size:.75rem;gap:4px}.animate-label,.darkmode-label{border:1px solid #000;border-radius:4px;padding:4px}.speed-label input{width:70px!important}.speed-label span{font-size:.7rem}}.nav-section{align-items:center;display:flex;flex-direction:column;margin-right:10px;position:relative}.section-title-wrapper{cursor:help;left:50%;position:absolute;top:-30%;transform:translateX(-50%);z-index:10}.section-title{background:#34495e;border-radius:12px;box-shadow:0 2px 4px #0003;color:#f9feff;filter:brightness(1.15) drop-shadow(0 2px 4px hsla(240,14%,25%,.7));font-size:.8rem;font-weight:700;letter-spacing:1.2px;padding:4px 14px;text-transform:uppercase;white-space:nowrap}.section-title-wrapper:after{background:#2c3e50;border-radius:6px;bottom:100%;box-shadow:0 2px 8px #0000004d;color:#edfbff;content:attr(title);font-size:.8rem;left:50%;margin-bottom:6px;opacity:0;padding:6px 10px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .2s ease;white-space:nowrap;z-index:10}.section-title-wrapper:hover:after{opacity:1}.section-content{align-items:center;background:#34495e;border:2px solid #1a2530;border-radius:14px;display:flex;gap:8px;margin-top:5px;min-width:fit-content;padding:18px 12px 12px;position:relative}.section-content:before{background:#34495e;border-radius:12px;content:"";height:24px;left:50%;position:absolute;top:-12px;transform:translateX(-50%);width:70px;z-index:5}.section-title-wrapper:has(h3:contains("Painting Tools"))+.section-content:before{width:110px}.section-title-wrapper:has(h3:contains("Weighted Brush"))+.section-content:before{width:120px}.section-title-wrapper:has(h3:contains("Options"))+.section-content:before{width:80px}.section-title-wrapper:has(h3:contains("Controls"))+.section-content:before{width:80px}.algo-select,.clear-btn,.maze-btn,.nav-btn,.run-btn,.weight-btn{background:#95a5a6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.7rem;font-weight:600;min-width:40px;padding:8px 12px}.nav-btn.active,.weight-btn.active{background:#e67e22!important;border:1px solid #fc9a45;box-shadow:0 0 8px #e67e2299}.weight-btn:first-child{background:#27ae60}.weight-btn:nth-child(2){background:#f39c12}.weight-btn:nth-child(3){background:#e67e22}.weight-btn:nth-child(4){background:#c0392b}.maze-btn{background:#9b59b6}.maze-btn:hover{background:#8e44ad}.clear-btn{background:#e74c3c}.clear-btn:hover{background:#c0392b}.run-btn{background:#27ae60}.run-btn:hover{background:#2ecc71}.algo-select{width:100px}.animate-label,.darkmode-label,.speed-label{align-items:center;color:#ecf0f1;display:flex;font-size:.7rem;gap:6px}.speed-label input{width:80px}.speed-label span{font-weight:700;min-width:40px}.animate-label input,.darkmode-label input{cursor:pointer}body.dark-mode .navbar{background:#1a1a1a;border-bottom:2px solid #000}body.dark-mode .section-title-wrapper:after{background:#34495e;color:#bdc3c7}.animate-label,.darkmode-label{border:1px solid #40404080;border-radius:4px;padding:4px}body.dark-mode .section-title{background:#1a1a1a;color:#bdc3c7;filter:brightness(1.25) drop-shadow(0 4px 4px hsla(240,28%,27%,.65))}body.dark-mode .section-content{background:#2c3e50;border-color:#000}body.dark-mode .section-content:before{background:#2c3e50}body.dark-mode .nav-btn{background:#104a85;color:#ecf0f1}body.dark-mode .nav-btn.active,body.dark-mode .weight-btn.active{background:#1284ff!important;border:1px solid #4da6ff;box-shadow:0 0 8px #1284ff99}body.dark-mode .algo-select{background:#104a85;color:#ecf0f1}body.dark-mode .maze-btn{background:#9b59b6;color:#ecf0f1}body.dark-mode .clear-btn{background:#e74c3c;color:#ecf0f1}body.dark-mode .run-btn{background:#27ae60;color:#ecf0f1}.cell{align-items:center;background-color:#bdcfff;border:1px solid #ffe0e0e6;color:#333;display:flex;font-size:.7rem;font-weight:700;justify-content:center;position:relative;-webkit-user-select:none;user-select:none}body.dark-mode .cell{background-color:#292f3d;border:1px solid #434242e6;color:#ecf0f1}:root{--weight-color-1:#36d779;--weight-color-5:#f39c12;--weight-color-10:#e67e22;--weight-color-20:#ff6b6b}.cell:hover{filter:brightness(1.1)}.cell.wall{background-color:#c0392b!important;border:1px solid #b61806;border-radius:1px;color:#fff}.cell.start{background-color:#269454!important;border:2px solid #07652e;border-radius:2px;color:#fff}.cell.goal{background-color:#ff6200!important;border:2px solid #d55200;border-radius:2px;color:#2c3e50}.cell.visited-start{animation:popStart .3s ease-out;background-color:#81ecec!important}.cell.visited-goal{animation:popGoal .3s ease-out;background-color:#fab1a0!important}.cell.visited{animation:pop .3s ease-out;background-color:#29b783!important}.cell.path{animation:snake .4s ease-in-out forwards;background-color:#f39c12!important;z-index:2}.cell.current{animation:pulse .5s ease-in-out;background-color:#fffacd!important;z-index:3}@keyframes pop{0%{transform:scale(1)}50%{box-shadow:0 0 12px #0000004d;transform:scale(1.3)}to{transform:scale(1)}}@keyframes popStart{0%{transform:scale(1)}50%{box-shadow:0 0 12px #81ecec;transform:scale(1.3)}to{transform:scale(1)}}@keyframes popGoal{0%{transform:scale(1)}50%{box-shadow:0 0 12px #fab1a0;transform:scale(1.3)}to{transform:scale(1)}}@keyframes snake{0%{background-color:#f1c40f;transform:scale(.7)}to{background-color:#f39c12;transform:scale(1)}}@keyframes pulse{0%{transform:scale(1)}50%{box-shadow:0 0 16px #fffacd;transform:scale(1.3)}to{transform:scale(1)}}body.dark-mode .cell.visited{background-color:#16a085!important}body.dark-mode .cell.path{background-color:#e67e22!important}body.dark-mode .cell.current{background-color:#f9e79f!important}.grid-wrapper{--pad:12px;--gap:4px;--border:2px;--min-cell:30px;--max-cell:80px;flex:1 1;padding:var(--pad)}.grid-container,.grid-wrapper{box-sizing:border-box;overflow:hidden}.grid-container{background:#dcdbff;border:var(--border) solid #333;border-radius:4px;display:grid;height:100%;width:100%}.no-path-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2c3e50eb;display:flex;inset:0;justify-content:center;pointer-events:auto;position:absolute;z-index:100}.no-path-message{animation:popIn .3s ease-out;background:#34495e;border:1px solid #1a2530;border-radius:10px;box-shadow:0 6px 18px #0000004d;color:#ecf0f1;display:flex;flex-direction:column;font-size:1.1rem;font-weight:600;gap:10px;max-width:280px;padding:14px 20px;text-align:center;-webkit-user-select:none;user-select:none}.no-path-title{font-size:1.3rem;opacity:.9}.no-path-close{background:#e74c3c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:6px 12px;transition:background .2s}.no-path-close:hover{background:#c0392b}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}body.dark-mode .no-path-overlay{background:#1a1a1af2}body.dark-mode .no-path-message{background:#2c3e50;border:1px solid #1a1a1a;color:#bdc3c7}body.dark-mode .no-path-close{background:#c0392b}body.dark-mode .no-path-close:hover{background:#a93226}.pathfinding-visualizer{background:#e6f1f4;display:flex;flex-direction:column;font-family:Segoe UI,sans-serif;height:100vh}body.dark-mode{color:#ecf0f1}body.dark-mode,body.dark-mode .grid-wrapper,body.dark-mode .pathfinding-visualizer{background:#1a1a1a}.App{font-family:Segoe UI,sans-serif;height:100vh;margin:0;overflow:hidden;padding:0}
/*# sourceMappingURL=main.1e4b2344.css.map*/