*{box-sizing:border-box;margin:0;padding:0}:root{--primary-green:#10b981;--dark-green:#059669;--light-green:#d1fae5;--black:#1f2937;--dark-gray:#374151;--light-gray:#f3f4f6;--white:#fff;--border-radius:8px;--shadow:0 2px 8px #0000001a}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--white);color:#1f2937;color:var(--black);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app{background-color:var(--white);min-height:100vh}.navbar{background:linear-gradient(135deg,var(--black) 0,var(--dark-gray) 100%);border-bottom:3px solid var(--primary-green);box-shadow:var(--shadow);padding:1.2rem 0}.navbar-container{flex-direction:row;gap:.5rem;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{color:var(--white);font-size:1.2rem;font-weight:700;gap:.75rem}.home-btn{background:var(--primary-green);border:none;border-radius:6px;color:var(--white);cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:all .3s ease}.home-btn:hover{background:#059669;box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.hero{background:linear-gradient(135deg,var(--white) 0,var(--light-gray) 100%);border-bottom:1px solid #e5e7eb;overflow:hidden;padding:1.6rem 2rem;position:relative;text-align:center}.hero-content{margin:0 auto;max-width:900px;position:relative;z-index:2}.hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--black) 0,var(--primary-green) 100%);-webkit-background-clip:text;background-clip:text;color:var(--black);font-size:2.5rem;font-weight:800;margin-bottom:1rem}.hero p{color:var(--dark-gray);font-size:1.25rem;font-weight:500;margin-bottom:1.5rem}.hero-description p{color:#6b7280;font-size:1rem;font-weight:400}.hero-accent{background:var(--light-green);border-radius:50%;height:400px;opacity:.3;position:absolute;right:-10%;top:-50%;width:400px;z-index:1}@media (max-width:768px){.hero h1{font-size:1.875rem}.hero p{font-size:1rem}}.algorithm-selector{background-color:var(--white);padding:1rem 2rem}.selector-container{margin:0 auto;max-width:1200px}.algorithm-selector h2{color:var(--black);font-size:2rem;font-weight:700;margin-bottom:1.3rem;text-align:center}.algorithm-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.algorithm-card{background:var(--white);border:2px solid #e5e7eb;border-radius:var(--border-radius);cursor:pointer;display:flex;flex-direction:column;font-family:inherit;font-size:inherit;gap:1rem;overflow:hidden;padding:2rem;position:relative;transition:all .3s ease}.algorithm-card:before{background:linear-gradient(90deg,var(--primary-green),var(--dark-green));content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.algorithm-card:hover{border-color:var(--primary-green);box-shadow:0 8px 24px #10b98126;transform:translateY(-2px)}.algorithm-card:hover:before{transform:scaleX(1)}.card-icon{color:var(--primary-green);font-size:2.5rem;font-weight:700}.algorithm-card h3{color:var(--black);font-size:1.25rem;font-weight:600;margin:0}.algorithm-card p{color:var(--dark-gray);flex-grow:1;font-size:.95rem;margin:0}.select-btn{background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border:none;border-radius:6px;color:var(--white);cursor:pointer;display:flex;font-size:.95rem;font-weight:600;justify-content:center;padding:.75rem 1.5rem;transition:all .3s ease}.select-btn:hover{box-shadow:0 4px 12px #10b9814d;transform:translateX(4px)}@media (max-width:768px){.algorithm-selector{padding:2rem 1rem}.algorithm-selector h2{font-size:1.5rem;margin-bottom:2rem}.algorithm-grid{grid-template-columns:1fr}}.canvas-container{margin:0 auto;max-width:1400px;min-height:calc(100vh - 80px);padding:2rem}.back-btn{background:var(--light-gray);border:2px solid #e5e7eb;border-radius:6px;color:var(--black);cursor:pointer;font-weight:600;margin-bottom:2rem;padding:.5rem 1rem;transition:all .3s ease}.back-btn:hover{background:var(--primary-green);border-color:var(--primary-green);color:var(--white)}.canvas-content h2{color:var(--black);font-size:1.75rem;font-weight:700;margin-bottom:2rem}.canvas-layout{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.right-panel{gap:2rem}.right-panel,.visualization{display:flex;flex-direction:column}.visualization{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:var(--border-radius);justify-content:center;max-height:700px;max-width:700px;overflow:auto;padding:1rem;position:relative}.drawing-canvas{background:#fff;border:1px solid #f3f4f6;cursor:grab}.drawing-canvas:active{cursor:grabbing}.canvas-controls{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1rem}.zoom-btn{background:var(--primary-green);border:none;border-radius:4px;color:var(--white);cursor:pointer;font-size:.875rem;font-weight:600;padding:.4rem .8rem;transition:all .3s ease}.zoom-btn:hover{background:#059669;transform:scale(1.05)}.zoom-btn:active{transform:scale(.95)}.zoom-level{color:var(--black);font-size:.875rem;min-width:50px;text-align:center}.control-panel{background:var(--light-gray);border-radius:var(--border-radius);display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.controls-section h3,.inputs-section h3{color:var(--black);font-size:1rem;font-weight:700;margin-bottom:1rem}.input-group{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.input-field{display:flex;flex-direction:column;gap:.5rem}.input-field label{color:var(--dark-gray);font-size:.875rem;font-weight:600}.input-field input{border:2px solid #e5e7eb;border-radius:6px;font-size:.95rem;font-weight:600;padding:.75rem;transition:all .2s ease}.input-field input:focus{border-color:var(--primary-green);box-shadow:0 0 0 3px #10b9811a;outline:none}.primary-btn{background:linear-gradient(135deg,var(--primary-green),var(--dark-green));border:none;border-radius:6px;color:var(--white);cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:all .3s ease}.primary-btn:hover{box-shadow:0 8px 16px #10b9814d;transform:translateY(-2px)}.controls-section{display:flex;flex-direction:column;gap:1rem}.execute-reset-group{align-items:center;display:flex;gap:1rem;justify-content:center}.execute-reset-group .primary-btn{align-self:auto;flex:1 1}.execute-reset-group .control-btn{flex:0 0 auto;padding:.75rem 1.25rem}.animation-controls{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.control-btn{background:var(--white);border:2px solid var(--primary-green);border-radius:6px;color:var(--black);cursor:pointer;font-size:.9rem;font-weight:600;padding:.75rem 1rem;transition:all .2s ease}.control-btn:hover{background:var(--primary-green);color:var(--white)}.info-box{background:var(--white);border:2px solid var(--primary-green);border-radius:6px;padding:1rem}.info-box p{color:var(--black);font-size:.9rem;margin:.5rem 0}.info-box strong{color:var(--primary-green);font-weight:700}.algorithm-switcher h3{color:var(--black);font-size:1rem;font-weight:700;margin-bottom:1rem}.algorithm-cards{display:flex;flex-direction:row;gap:.75rem;justify-content:space-between}.algo-card{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:.75rem;text-align:center;transition:all .3s ease}.algo-card:hover{border-color:var(--primary-green);box-shadow:0 4px 12px #10b9811a;transform:translateY(-2px)}.algo-card.active{background:var(--primary-green);border-color:var(--primary-green);color:var(--white)}.algo-card .card-icon{font-size:1.5rem;margin-bottom:.5rem}.algo-card h4{color:inherit;font-size:.85rem;font-weight:700;margin:0}.algo-card.active h4,.algo-card.active p{color:var(--white)}@media (max-width:1024px){.canvas-layout{grid-template-columns:1fr}.animation-controls{grid-template-columns:1fr 1fr}}@media (max-width:768px){.canvas-container{padding:1rem}.animation-controls{grid-template-columns:1fr}}
/*# sourceMappingURL=main.3d34a17b.css.map*/