*{margin:0;padding:0;box-sizing:border-box}body{margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f8f9fa;color:#333;line-height:1.6;height:100vh;width:100vw}.wrapper{display:flex;flex-direction:column;height:100%;width:100%}.main-container{max-width:1400px;margin:80px auto 0;padding:2rem}.progress-container{margin-bottom:3rem}.progress-steps{display:flex;justify-content:center;align-items:center;gap:1.5rem;position:relative}.progress-steps:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background-color:#e0e0e0;z-index:1}.step{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative;z-index:2;background-color:#f8f9fa;padding:0 1rem}.step-number{width:40px;height:40px;border-radius:50%;background-color:#e0e0e0;color:#666;display:flex;align-items:center;justify-content:center;font-weight:700;transition:all .3s ease}.step.active .step-number{background-color:#193148;color:#fff}.step.completed .step-number{background-color:#28a745;color:#fff}.step-label{font-size:.9rem;font-weight:500;color:#666}.step.active .step-label{color:#193148}.step.completed .step-label{color:#28a745}.step-content{display:none;background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:2rem;margin-bottom:2rem}.step-content.active{display:block}.step-header{text-align:center;margin-bottom:2rem}.step-header h2{color:#193148;margin-bottom:.5rem;font-size:1.8rem}.step-header p{color:#666;font-size:1.1rem}.route-type-selection{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1000px;margin:0 auto}.route-type-card{background:#fff;border:3px solid #e0e0e0;border-radius:16px;padding:2rem;text-align:center;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.route-type-card:hover{border-color:#193148;transform:translateY(-4px);box-shadow:0 8px 25px #19314826}.route-type-card.selected{border-color:#193148;background:linear-gradient(135deg,#193148,#305a84);color:#fff}.route-type-icon{font-size:3rem;color:#193148;margin-bottom:1rem;transition:color .3s ease}.route-type-card.selected .route-type-icon{color:#fff}.route-type-card h3{font-size:1.5rem;margin-bottom:.5rem;color:#193148;transition:color .3s ease}.route-type-card.selected h3{color:#fff}.route-type-card p{color:#666;margin-bottom:1.5rem;transition:color .3s ease}.route-type-card.selected p{color:#ffffffe6}.route-type-example{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1rem}.example-point{width:40px;height:40px;border-radius:50%;background:#193148;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;transition:all .3s ease}.route-type-card.selected .example-point{background:#fff;color:#193148}.example-line{width:60px;height:4px;background:#193148;border-radius:2px;transition:all .3s ease}.route-type-card.selected .example-line{background:#fff}.example-loop{position:relative;width:80px;height:40px}.example-curve{position:absolute;top:0;left:0;width:80px;height:40px;border:4px solid #193148;border-radius:50px 50px 0 0;border-bottom:none;transition:all .3s ease}.route-type-card.selected .example-curve{border-color:#fff}.drawing-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;overflow:hidden;margin-bottom:2rem}.drawing-controls{background:#fff;padding:.75rem 1rem;border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:.75rem;margin-top:.5rem}.draw-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:1rem}.route-price-section{padding:.75rem 1rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:1px solid #dee2e6;margin-bottom:1rem}.price-input-group{display:flex;flex-direction:column;gap:.4rem}.price-label{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#193148;font-size:.9rem}.price-label i{color:#28a745}.price-input-wrapper{display:flex;align-items:center;gap:.5rem;background:#fff;border-radius:6px;padding:.25rem;border:2px solid #e9ecef;transition:border-color .3s ease}.price-input-wrapper:focus-within{border-color:#193148;box-shadow:0 0 0 3px #1931481a}.price-input{flex:1;border:none;outline:none;padding:.5rem .75rem;font-size:1rem;font-weight:500;background:transparent}.price-input::-moz-placeholder{color:#adb5bd;font-weight:400}.price-input::placeholder{color:#adb5bd;font-weight:400}.currency-badge{background:#193148;color:#fff;padding:.5rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600;min-width:40px;text-align:center}.price-hint{color:#6c757d;font-size:.8rem;font-style:italic}.drawing-map{height:60vh;min-height:500px;width:100%}.form-container{max-width:800px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#333}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#193148;box-shadow:0 0 0 3px #1931481a}.form-group textarea{resize:vertical;min-height:100px}.price-input-container{display:flex;flex-direction:column;gap:1rem}.price-slider{position:relative}.price-slider input[type=range]{width:100%;height:6px;border-radius:3px;background:#e0e0e0;outline:none;-webkit-appearance:none}.price-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#193148;cursor:pointer}.price-slider input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#193148;cursor:pointer;border:none}.price-labels{display:flex;justify-content:space-between;margin-top:.5rem;font-size:.9rem;color:#666}.location-selection{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.location-group{display:flex;flex-direction:column;gap:.5rem;position:relative}.location-input-container{display:flex;gap:.5rem;width:100%}.location-input-container input{flex:1;min-width:0;width:100%;box-sizing:border-box}.location-suggestions{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:8px;background:#fff;display:none;z-index:1000;box-shadow:0 4px 12px #0000001a}.location-suggestions.show{display:block}.suggestion-item{padding:.75rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.suggestion-item:hover{background-color:#f8f9fa}.suggestion-item:last-child{border-bottom:none}.map-container{border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;margin-bottom:2rem}.map-controls{background:#fff;padding:1rem;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.draw-controls{display:flex;gap:.5rem}.draw-status{color:#666;font-size:.9rem}#map{height:400px;width:100%}.review-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.review-section{background:#f8f9fa;padding:1.5rem;border-radius:8px}.review-section h3{color:#193148;margin-bottom:1rem;font-size:1.2rem}.review-item{display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e0e0e0}.review-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.review-item label{font-weight:600;color:#666}.review-item span{color:#333;text-align:right;max-width:60%}.route-preview{grid-column:1 / -1}#routePreviewMap{height:300px;border-radius:8px;border:1px solid #e0e0e0}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#193148,#305a84);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #1931484d}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-2px)}.btn-success{background:#28a745;color:#fff}.btn-success:hover:not(:disabled){background:#218838;transform:translateY(-2px)}.btn-outline{background:transparent;color:#193148;border:2px solid #193148}.btn-outline:hover:not(:disabled){background:#193148;color:#fff}.step-actions{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0}.address-input-container{position:relative}.address-suggestions{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 8px 8px;max-height:200px;overflow-y:auto;z-index:1000;display:none;box-shadow:0 4px 8px #0000001a}.address-suggestion-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .2s ease}.address-suggestion-item:hover{background-color:#f8f9fa}.address-suggestion-item:last-child{border-bottom:none}.address-suggestion-item .suggestion-text{font-weight:500;color:#333;margin-bottom:.25rem}.address-suggestion-item .suggestion-details{font-size:.85rem;color:#666}.address-help,.map-help{color:#666;font-size:.85rem;font-style:italic;margin-top:.25rem;display:block}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:2000;align-items:center;justify-content:center}.modal.show{display:flex}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.modal-header h3{color:#193148;margin:0}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;padding:.5rem;border-radius:50%;transition:all .3s ease}.modal-close:hover{background:#f0f0f0;color:#333}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e0e0e0}.success-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:none;align-items:center;justify-content:center;z-index:2000;padding:1rem}.success-overlay.show{display:flex}.success-card{background:#fff;border-radius:16px;padding:2rem;text-align:center;max-width:500px;width:100%;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.success-icon{font-size:4rem;color:#28a745;margin-bottom:1rem}.success-card h2{color:#193148;margin-bottom:1rem;font-size:1.8rem}.success-card p{color:#666;margin-bottom:2rem;line-height:1.6}.success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.success-actions .btn{min-width:150px}.message-container{position:fixed;top:100px;right:2rem;z-index:3000;max-width:400px}.message{padding:1rem 1.5rem;border-radius:8px;margin-bottom:1rem;box-shadow:0 4px 15px #0000001a;animation:slideIn .3s ease}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message.info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.route-management-section{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e0e0e0}.route-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.route-management-header h3{margin:0;color:#333;font-size:1.1rem}.routes-container,.addRoute{display:flex;flex-wrap:wrap;gap:.5rem}.route_div{display:flex;align-items:center;padding:.5rem .75rem;border-radius:6px;color:#333;font-weight:500;font-size:.9rem;min-width:120px;position:relative}.routeButton{margin-left:.5rem;padding:.25rem .5rem;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s ease}.routeButton:hover{opacity:.8;transform:scale(1.05)}.routeButton:disabled{opacity:.5;cursor:not-allowed;transform:none}.routeDeleteBtn{margin-left:.25rem}@media (max-width: 768px){.route-management-header{flex-direction:column;align-items:flex-start;gap:.5rem}.route_div{min-width:100px;font-size:.8rem}.routeButton{padding:.2rem .4rem;font-size:.7rem}}@media (max-width: 768px){.burger{display:flex}.nav-links{display:none;flex-direction:column;background-color:#01386a;position:absolute;top:60px;left:0;width:100%;padding:10px 0;box-shadow:0 4px 10px #0003}.nav-links.show{display:flex}.nav-links a{padding:10px 15px;border-top:1px solid rgba(255,255,255,.1)}.nav-links a.active{background-color:#ffd52f!important;color:#01386a!important;font-weight:600;text-decoration:none}.nav-links a.active:hover{background-color:#ffc107!important;text-decoration:none}.main-container{padding:1rem}.progress-steps{gap:.5rem}.step-label{font-size:.7rem}.route-type-selection{grid-template-columns:1fr;gap:1rem}.route-type-card{padding:1.5rem}.route-type-icon{font-size:2.5rem}.drawing-map{height:50vh;min-height:400px}.route-price-section{padding:.5rem .75rem;margin-bottom:.75rem}.price-input-wrapper{flex-direction:column;align-items:stretch}.currency-badge{align-self:flex-end;min-width:auto;width:-moz-fit-content;width:fit-content}.drawing-controls{padding:.5rem .75rem;gap:.5rem}.draw-controls{gap:.5rem}.draw-controls .btn{padding:.5rem .75rem;font-size:.9rem}.location-selection,.review-container{grid-template-columns:1fr;gap:1rem}.step-actions{flex-direction:column;gap:1rem}.step-actions .btn{width:100%;justify-content:center}.modal-content{width:95%;margin:1rem}.message-container{right:1rem;left:1rem;max-width:none}.success-overlay{padding:.5rem}.success-card{width:100%;max-width:calc(100vw - 1rem);padding:1.5rem;margin:0;box-sizing:border-box}.success-card h2{font-size:1.5rem}.success-icon{font-size:3rem}.success-actions{flex-direction:column;gap:.5rem}.success-actions .btn{width:100%;justify-content:center}}@media (max-width: 480px){.nav-container{padding:0 1rem}.step-content{padding:1rem}.step-header h2{font-size:1.5rem}.step-header p{font-size:1rem}.form-group input,.form-group select,.form-group textarea{padding:.5rem}.btn{padding:.5rem 1rem;font-size:.9rem}.success-overlay{padding:.25rem}.success-card{width:100%;max-width:calc(100vw - .5rem);padding:1rem;margin:0;box-sizing:border-box}.success-card h2{font-size:1.3rem}.success-icon{font-size:2.5rem}.success-card p{font-size:.9rem}}@media (max-width: 360px){.success-overlay{padding:.1rem}.success-card{width:100%;max-width:calc(100vw - .2rem);padding:.75rem;margin:0;box-sizing:border-box}.success-card h2{font-size:1.1rem;line-height:1.3}.success-icon{font-size:2rem}.success-card p{font-size:.85rem;margin-bottom:1rem}.success-actions .btn{padding:.4rem .8rem;font-size:.8rem}}.loading{opacity:.6;pointer-events:none}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #f3f3f3;border-top:2px solid #193148;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn:focus,input:focus,select:focus,textarea:focus{outline:2px solid #193148;outline-offset:2px}.listmenu{position:fixed;visibility:hidden;top:50%;left:50%;transform:translate(-50%,-50%);width:230px;height:150px;z-index:10;background-color:#f2efef;border-radius:10px;box-shadow:0 4px 8px #0000004d;display:flex;flex-direction:column;align-items:center;justify-content:center}.listmenu #title{position:relative;top:5%;font-weight:700;text-align:center;margin:0;color:#333}.listmenu .close_button{position:absolute;left:88%;bottom:80%;background-color:#f2efef;cursor:pointer;border:none;padding:5px}.listmenu .close_button:hover{color:#f30909}.btnListContainer{height:90px;display:flex;flex-direction:column;gap:10px;width:100%;padding:0 10px}.btnMenu{height:35px;border:none;background-color:#fadf73;color:#fff;font-weight:600;margin-left:10px;margin-right:10px;cursor:pointer;border-radius:5px;transition:background-color .2s}.btnMenu:hover{background-color:#ffd52f}.btnMenu.Edit{background-color:#007bff}.btnMenu.Edit:hover{background-color:#0056b3}.btnMenu.Remove{background-color:#dc3545}.btnMenu.Remove:hover{background-color:#c82333}.menu{position:fixed;visibility:hidden;top:50%;left:50%;transform:translate(-50%,-50%);width:290px;height:150px;z-index:10;background-color:#f2efef;border-radius:10px;box-shadow:0 4px 8px #0000004d;display:flex;flex-direction:column;align-items:center;justify-content:center}.menu #title{position:relative;top:5%;font-weight:700;text-align:center;margin:0;color:#333}.menu .close_button{position:absolute;left:88%;bottom:80%;background-color:#f2efef;cursor:pointer;border:none;padding:5px}.menu .close_button:hover{color:#f30909}.btnContainer{height:60px;display:flex;gap:20px;align-items:center;justify-content:center;margin-top:20px}.menu .btn{height:35px;width:80px;border:none;background-color:#007bff;color:#fff;font-weight:600;cursor:pointer;border-radius:5px;transition:background-color .2s}.menu .btn:hover{background-color:#0056b3}.menu .btn.yes{background-color:#28a745}.menu .btn.yes:hover{background-color:#218838}.menu .btn.no{background-color:#dc3545}.menu .btn.no:hover{background-color:#c82333}@media (max-width: 768px){.listmenu{width:280px;height:180px;max-width:90vw}.menu{width:320px;height:180px;max-width:90vw}.listmenu #title,.menu #title{font-size:1rem;top:3%}.btnListContainer{height:100px;gap:8px;padding:0 15px}.btnMenu{height:40px;font-size:14px;margin-left:15px;margin-right:15px}.btnContainer{height:70px;gap:15px;margin-top:15px}.menu .btn{height:40px;width:90px;font-size:14px}.listmenu .close_button,.menu .close_button{left:90%;bottom:85%;padding:8px}}@media (min-width: 1024px){.main-container{max-width:1500px;padding:2.5rem}.route-type-selection{max-width:1100px;gap:2.5rem}.route-type-card{padding:2.25rem}.step-content{padding:2.5rem}.form-container{max-width:900px}.drawing-map{height:65vh;min-height:550px}.form-group input,.form-group select,.form-group textarea{padding:1rem;font-size:1.1rem}.btn{padding:1rem 2rem;font-size:1.1rem}.location-input-container input{padding:1rem;font-size:1.1rem}.location-input-container .btn{padding:1rem 1.5rem;font-size:1rem}.location-selection{max-width:1300px;margin:0 auto;gap:3rem}.drawing-container{max-width:1300px;margin:0 auto}.review-container{max-width:1300px;margin:0 auto;gap:3rem}}@media (min-width: 1200px){.main-container{max-width:1600px;padding:3rem}.route-type-selection{max-width:1200px;gap:3rem}.route-type-card{padding:2.5rem}.step-content{padding:3rem}.form-container{max-width:1000px}.drawing-map{height:70vh;min-height:600px}.location-selection{max-width:1500px;margin:0 auto;gap:4rem}.drawing-container{max-width:1500px;margin:0 auto}.review-container{max-width:1500px;margin:0 auto;gap:4rem}}@media (min-width: 1600px){.main-container{max-width:1800px;padding:4rem}.route-type-selection{max-width:1400px;gap:4rem}.route-type-card{padding:3rem}.step-content{padding:4rem}.location-selection{max-width:1700px;margin:0 auto;gap:5rem}.drawing-container{max-width:1700px;margin:0 auto}.review-container{max-width:1700px;margin:0 auto;gap:5rem}}@media (prefers-contrast: high){.btn-primary{background:#000;color:#fff}.btn-secondary{background:#666;color:#fff}.step-number{border:2px solid #000}}
