@import url(https://fonts.googleapis.com/css2?family=KoHo:wght@200;300;400;500;600;700&display=swap);:root{--bg-primary:#fff;--bg-secondary:#f5f5f5;--text-primary:#333;--text-secondary:#666;--border-color:#ddd;--route-accent:#2e8b57;--multi-accent:#2196f3;--dot-bg:#ccc;--dot-border:#999}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--bg-primary);color:#333;color:var(--text-primary);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}*{box-sizing:border-box}.App{background-color:#fff;background-color:var(--bg-primary);color:#333;color:var(--text-primary);min-height:100vh}h1{font-weight:500;margin:2rem auto}h1,main{text-align:center}main{margin:auto;width:40%}.input-section,.interchange-section{margin:auto;position:relative;width:60%}.interchange-section{height:4rem}.btn-interchange{align-items:center;display:flex;font-size:24px;height:50px;justify-content:center;position:absolute;right:1%;top:13%;-webkit-transform:translateX(50px);transform:translateX(50px);width:50px}.btn-interchange:hover{-webkit-transform:translateX(50px) scale(1.01);transform:translateX(50px) scale(1.01)}.arrow-down,.arrow-up{height:24px}.from-choice,.to-choice,.train-choice{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:inset 0 4px 4px rgba(0,0,0,.25);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;list-style:none;margin:auto;max-height:190px;overflow-y:scroll;padding:.2rem 0 0;position:absolute;top:92%;width:100%;z-index:1}.from-choice::-webkit-scrollbar-button,.to-choice::-webkit-scrollbar-button,.train-choice::-webkit-scrollbar-button{display:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:var(--primary-font-color);border-radius:5px;box-shadow:inset 0 4px 4px rgba(0,0,0,.25);width:6px}.from-choice li,.to-choice li,.train-choice li{box-sizing:border-box;color:var(--primary-font-color);cursor:pointer;margin:3px 0;padding:.5rem;width:100%}.from-choice li:hover,.to-choice li:hover,.train-choice li:hover{background:var(--primary-font-color);border-radius:10px;color:#fff}.action-btn{background:var(--primary-font-color);border:1px solid transparent;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.08);box-sizing:border-box;color:var(--bg-primary);cursor:pointer;font-size:18px;margin:2rem auto;padding:.85rem 1.6rem}.action-btn:hover{box-shadow:0 4px 10px rgba(0,0,0,.12);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.or-section{align-items:center;display:flex;font-size:18px;font-weight:600;justify-content:space-between;margin:auto auto 2rem;width:60%}.or-section span:nth-of-type(odd){border:1px solid var(--primary-font-color);display:inline-block;height:0;width:40%}.date-btn{font-size:1rem;margin:0 .25em;padding:.5rem}.date-btn-container{display:flex;justify-content:center}@media only screen and (max-width:1024px) and (min-width:700px){main{width:60%}}@media only screen and (max-width:700px) and (min-width:500px){main{width:80%}}@media only screen and (max-width:500px) and (min-width:300px){main{width:95%}.input-section{width:80%}main>img{width:90%}}@media only screen and (max-width:300px) and (min-width:100px){main{width:100%}.input-section{width:80%}main>img{width:90%}}.train-btwn-stn-container{color:var(--text-primary);margin:auto;text-align:center;width:82%}.train-btwn-stn-container h1:first-of-type{margin-bottom:0}.train-btwn-stn-container h1:Last-of-type{margin-top:.5em}.train-container{align-items:center;background:var(--bg-primary);border:1px solid var(--primary-font-color);border-radius:10px;display:flex;flex-direction:column;justify-content:space-between;margin:1rem auto;width:29%}.train-container:hover{box-shadow:inset 0 4px 4px rgba(0,0,0,.25);-webkit-transform:scale(1.01);transform:scale(1.01)}.train-container h2{background:var(--primary-font-color);border-top-left-radius:9px;border-top-right-radius:9px;color:var(--bg-primary);font-size:20px;font-weight:500;margin:0;padding:.5rem 0;width:100%}.train-details{color:var(--text-secondary);padding:.5rem}.train-sub-head{color:var(--text-primary);font-size:18px;font-weight:700}.train-days{font-weight:700}.running-days{background-color:var(--primary-font-color);border-radius:10px;color:var(--bg-primary);padding:.25rem .5rem}@media only screen and (max-width:1024px) and (min-width:690px){.train-btwn-stn-container{width:90%}.train-container{width:40%}.train-btwn-stn-container h1{font-size:1.5rem}}@media only screen and (max-width:690px) and (min-width:570px){.train-btwn-stn-container{width:95%}.train-container{width:45%}.train-btwn-stn-container h1{font-size:1.5rem}.train-container h2{font-size:18px}.train-sub-head{font-size:16px}}@media only screen and (max-width:570px) and (min-width:100px){.train-btwn-stn-container{width:99%}.train-container{width:85%}.train-btwn-stn-container h1{font-size:1.4rem}.train-container h2{font-size:17px}.train-sub-head{font-size:15px}}@media only screen and (max-width:450px){.to{margin-right:5rem}}.train-coach-details{margin:auto;text-align:center;width:80%}.train-coach-details h2{font-weight:500;margin:1.5rem;text-decoration:underline}.choice-btn{background:none;border:1px solid var(--primary-font-color);border-radius:10px;color:currentColor;cursor:pointer;display:inline-block;font-size:20px;font-weight:700;margin:.5rem 1rem;padding:1rem}.choice-btn-active{background-color:var(--primary-font-color);color:var(--bg-primary)}.choice-btn:hover{background:var(--primary-font-color);box-shadow:inset 0 4px 4px rgba(0,0,0,.25);color:var(--bg-primary);-webkit-transform:scale(1.01);transform:scale(1.01)}.train-coach-details ul{align-items:center;display:flex;flex-wrap:wrap;justify-content:center;list-style:none;padding:0}.train-coach-details li{align-items:center;border:1px solid var(--primary-font-color);border-radius:6px;display:flex;flex-direction:column;justify-content:space-between;margin:.5rem auto;width:29%}.berth-number{background:var(--primary-font-color);border-top-left-radius:6px;border-top-right-radius:6px;color:var(--bg-primary);font-size:14px;font-weight:500;margin:0;padding:.35rem 0;width:100%}@media only screen and (max-width:1024px) and (min-width:690px){.train-coach-details{width:90%}.train-coach-details h1{margin-top:2rem}.train-coach-details h2{margin:1rem}.choice-btn{font-size:18px;margin:.75rem;padding:.25 .75rem}.berth-number{font-size:16px}}@media only screen and (max-width:690px) and (min-width:490px){.train-coach-details{width:95%}.train-coach-details h1{font-size:1.85rem;margin:2rem 1.35rem 1.35rem}.train-coach-details h2{font-size:1.35rem;margin:.75rem}.choice-btn{font-size:16px;margin:.55rem;padding:.15 .55rem}.train-coach-details li{margin:.5rem auto;width:45%}.berth-number{font-size:16px}}@media only screen and (max-width:490px) and (min-width:100px){.train-coach-details{width:98%}.train-coach-details h1{font-size:1.65rem;margin:2rem 1rem 1rem}.train-coach-details h2{font-size:1rem;margin:.5rem}.choice-btn{font-size:14px;margin:.35rem;padding:.45rem}.train-coach-details li{margin:.5rem auto;width:85%}.berth-number{font-size:14px}}.border{border:2px solid;border-radius:10px;font-weight:400;margin:auto;padding:1rem;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.seats-count{font-size:16px;font-weight:300}.review-background{background:hsla(0,6%,59%,.373);inset:0;position:fixed;z-index:10}.review-modal{background-color:var(--bg-primary);border:2px solid var(--border-color);border-radius:15px;box-shadow:2px 2px 10px 5px rgba(0,0,0,.3);left:0;margin:auto;max-width:400px;position:absolute;right:0;top:30%;width:90%;& .title{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:22px;font-weight:600;padding:.5rem}& .text-message{color:var(--text-secondary);margin:.5rem 0;padding:.5rem;word-spacing:3px}& .btn-container{margin:.5rem 0 1rem}& button{margin:0 .5rem;padding:.5rem .75rem}& button:last-of-type{background-color:initial;border:1px solid var(--primary-font-color);color:var(--primary-font-color)}& a{color:var(--bg-primary);padding:.5rem .75rem;text-decoration:none;width:100%}}.toggle-container{font-size:20px;gap:.5rem}.sort-container,.toggle-container{display:flex;justify-content:center}.sort-container{align-items:center;font-size:12px;gap:.4rem;margin-bottom:.75rem}.sort-btn{background:var(--bg-primary);border:1px solid var(--primary-font-color);border-radius:4px;color:var(--primary-font-color);cursor:pointer;font-size:.8rem;font-weight:500;padding:.3rem .6rem}.sort-btn.active,.sort-btn:hover{background:var(--primary-font-color);color:var(--bg-primary)}.sort-direction{background:var(--bg-primary);border:1px solid var(--primary-font-color);border-radius:4px;color:var(--primary-font-color);cursor:pointer;font-size:.75rem;font-weight:700;min-width:50px;padding:.3rem .5rem}.sort-direction:hover{background:var(--primary-font-color);color:var(--bg-primary)}.route-visualization{background:var(--bg-secondary);border:1px solid var(--border-color);margin:.75rem auto;max-width:600px;padding:.75rem}.route-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:.25rem 0}.route-header h3{color:var(--primary-font-color);font-size:1rem;margin:0}.route-toggle{font-size:.8rem;transition:-webkit-transform .2s ease;transition:transform .2s ease;transition:transform .2s ease,-webkit-transform .2s ease}.route-toggle.open{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.route-stations{display:flex;flex-direction:column;gap:0;max-height:250px;overflow-y:auto}.route-station{align-items:flex-start;display:flex;padding:.2rem 0;position:relative}.station-dot{background:var(--dot-bg);border:2px solid var(--dot-border);border-radius:50%;flex-shrink:0;height:10px;margin-top:3px;width:10px;z-index:1}.route-station.boarding .station-dot{background:var(--primary-font-color);border-color:var(--primary-font-color)}.route-station.destination .station-dot{background:var(--route-accent);border-color:var(--route-accent)}.route-station.after-boarding .station-dot{background:var(--multi-accent);border-color:var(--multi-accent)}.station-connector{background:var(--border-color);height:20px;left:5px;position:absolute;top:16px;width:2px}.route-station.after-boarding .station-connector{background:var(--multi-accent)}.station-info{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem;margin-left:.6rem}.station-code{color:var(--primary-font-color);font-size:.85rem;font-weight:700}.station-name{color:var(--text-secondary);font-size:.8rem}.station-time{color:var(--text-secondary);font-size:.75rem}.station-badge{background:var(--primary-font-color);border-radius:3px;color:var(--bg-primary);font-size:.65rem;font-weight:700;padding:.05rem .3rem}.recommendations-section .rec-flow{margin:.75rem auto 1rem;max-width:900px}.rec-steps{flex-wrap:wrap;gap:.75rem;justify-content:center;list-style:none;margin:0;padding:0}.rec-step,.rec-steps{align-items:center;display:flex}.rec-step{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 1px 6px rgba(0,0,0,.06);gap:.6rem;min-width:180px;padding:.6rem .9rem}.step-badge{align-items:center;background:var(--primary-font-color);border-radius:50%;color:#fff;display:flex;font-weight:700;height:34px;justify-content:center;width:34px}.step-body{text-align:left}.seat-line{font-size:.96rem;font-weight:600}.seat-sub{color:var(--text-secondary);font-size:.82rem}.route-line{color:var(--route-accent);font-size:.9rem;font-weight:700;margin-top:.25rem}.step-arrow{color:var(--primary-font-color);font-size:1.25rem;font-weight:700;margin-left:.4rem;margin-right:-.4rem}@media only screen and (max-width:690px){.rec-steps{flex-direction:column;gap:.5rem}.rec-step{min-width:auto;width:100%}.step-arrow{display:none}}.route-station.destination .station-badge{background:var(--route-accent)}.route-station.after-boarding .station-name,.route-station.after-boarding .station-time{color:var(--text-primary)}.recommendations-section{background:var(--bg-secondary);border:1px solid var(--border-color);margin:.75rem auto;max-width:600px;padding:.75rem}.recommendations-section h3{color:var(--text-primary);font-size:1rem;margin:0 0 .5rem}.recommendation-card{background:var(--bg-primary);border:1px solid var(--border-color);border-left:3px solid var(--route-accent);margin-bottom:.5rem;padding:.5rem}.recommendation-card:last-child{margin-bottom:0}.recommendation-card.multi{border-left-color:var(--multi-accent)}.recommendation-card.direct{border-left-color:var(--route-accent)}.rec-description{color:var(--text-primary);font-size:.85rem;font-weight:600;margin:0 0 .5rem}.rec-seat-list{list-style:none;margin:0;padding:0}.rec-seat-item{align-items:center;border-bottom:1px solid var(--border-color);display:flex;font-size:.85rem;gap:.5rem;padding:.25rem 0}.rec-seat-item:last-child{border-bottom:none}.rec-coach{background:var(--primary-font-color);border-radius:3px;color:var(--bg-primary);font-size:.75rem;font-weight:700;padding:.1rem .4rem}.rec-berth{color:var(--text-primary);font-weight:600}.rec-type{color:var(--text-secondary);font-size:.8rem}.rec-route{color:var(--route-accent);font-size:.8rem;font-weight:600;margin-left:auto}.loader-div{background:hsla(0,0%,50%,.501);display:flex;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1}.loader-div img{-webkit-animation:blinker .5s infinite;animation:blinker .5s infinite;display:block;margin:auto}@-webkit-keyframes blinker{0%{opacity:1}60%{opacity:0}to{opacity:1}}@keyframes blinker{0%{opacity:1}60%{opacity:0}to{opacity:1}}@media only screen and (max-width:570px) and (min-width:100px){.loader-div img{width:50%}}.error-div{height:100%;width:100%}.error-div p{font-size:2rem;font-weight:700;padding:3rem}.return-home a{color:#fff;display:inline-block;padding:.5rem 1rem;text-decoration:none}.return-home{left:10px;position:fixed;top:10px}.return-home button{padding:0}@media only screen and (max-width:1024px) and (min-width:200px){.return-home{left:-6px;top:0}.return-home button{border-bottom-left-radius:0;border-top-left-radius:0}}footer{align-items:center;border-top-left-radius:20px;border-top-right-radius:20px;display:flex;padding:.5rem;text-align:center}.footer-links{flex-grow:1}.footer-links a{display:block;font-weight:700;margin:.5rem;text-decoration:none}.footer-links a:hover{text-decoration:underline}.footer-links a:visited{color:#00e}.share-btn{align-items:center;-webkit-animation:bounce 1s infinite;animation:bounce 1s infinite;background-color:#fff;border:2px solid;border-radius:50%;bottom:5%;box-shadow:0 0 5px 3px gray;cursor:pointer;display:flex;justify-content:center;padding:.6rem;position:fixed;right:6%;&:hover{-webkit-animation-play-state:paused;animation-play-state:paused;box-shadow:0 0 10px 3px gray}}@-webkit-keyframes bounce{0%{bottom:5%;-webkit-transform:scale(.9);transform:scale(.9)}30%{bottom:6%;-webkit-transform:scale(1);transform:scale(1)}60%{bottom:5%;-webkit-transform:scale(.9);transform:scale(.9)}90%{bottom:7%;-webkit-transform:scale(1.1);transform:scale(1.1)}}@keyframes bounce{0%{bottom:5%;-webkit-transform:scale(.9);transform:scale(.9)}30%{bottom:6%;-webkit-transform:scale(1);transform:scale(1)}60%{bottom:5%;-webkit-transform:scale(.9);transform:scale(.9)}90%{bottom:7%;-webkit-transform:scale(1.1);transform:scale(1.1)}}.alert{border-radius:5px;cursor:hand;cursor:pointer;font-family:sans-serif;font-weight:400;height:auto;left:0;line-height:1.8;margin:10px;padding:10px;position:relative;top:10;width:auto}.alertCheckbox,:checked+.alert{display:none}.alertText{display:table;font-size:16px;margin:0 auto;text-align:center}.alertClose{float:right;font-size:10px;padding-top:5px}.clear{clear:both}.info{background-color:#eee;border:1px solid #ddd;color:#999}.success{background-color:#efe;border:1px solid #ded;color:#9a9}.notice{background-color:#eff;border:1px solid #dee;color:#9aa}.warning{background-color:#fdf7df;border:1px solid #feec6f;color:#c9971c}.error{background-color:#fee;border:1px solid #edd;color:#a66}:root{--primary-font-color:#2b4577;--primary-input-bg:#d9d9d9;color:#2b4577;color:var(--primary-font-color);margin:0;padding:0}body{display:flex;flex-direction:column;font-family:KoHo,sans-serif;justify-content:space-between;min-height:100vh}input{background:#d9d9d9;background:var(--primary-input-bg);border:none;border-radius:5px;box-sizing:border-box;color:#2b4577;color:var(--primary-font-color);display:block;font-size:20px;margin:0 auto;padding:.5rem 1rem;width:100%}input:focus{border:none;outline:none}button{background:#2b4577;background:var(--primary-font-color);border:none;border-radius:10px;color:#fff;cursor:pointer}button:hover{box-shadow:4px 4px 4px rgba(0,0,0,.25);-webkit-transform:scale(1.01);transform:scale(1.01)}
/*# sourceMappingURL=main.c719156d.css.map*/