body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0}.App{position:relative}.mapContainer{position:relative;display:flex;flex-direction:column;width:55vw;height:85vh;background-color:#fff;border-radius:10px;border:2px solid #f0f0f0}.mapHeader{padding:1% 0 0 2%;text-align:left}.mapInstructions{padding-left:2%;padding-bottom:2%;text-align:left;font-size:1rem;color:#333}.londonMap{background-repeat:no-repeat;background-size:contain;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.londonMap>p{color:#00000050}.london-svg{display:block;width:100%;height:auto;background:none}#tube-map{position:relative;margin:2%;width:96%;height:96%;background-color:#f0f0f0;overflow:hidden;border-radius:10px}#svgMap{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%}.Stations{opacity:0}.cls-1{stroke:#ffd200}.cls-1,.cls-2,.cls-3,.cls-4,.cls-5,.cls-6,.cls-7,.cls-8,.cls-9,.cls-10,.cls-11,.cls-12,.cls-13,.cls-14,.cls-15,.cls-16,.cls-17,.cls-18,.cls-19,.cls-20,.cls-21,.cls-22,.cls-23,.cls-24,.cls-25,.cls-26,.cls-27,.cls-28,.cls-29,.cls-30{fill:none}.cls-1,.cls-2,.cls-3,.cls-4,.cls-5,.cls-6,.cls-7,.cls-10,.cls-11,.cls-12,.cls-13,.cls-14,.cls-15,.cls-16,.cls-19,.cls-20,.cls-21,.cls-22,.cls-23,.cls-24,.cls-25,.cls-26,.cls-27,.cls-28,.cls-29,.cls-30{stroke-linejoin:round}.cls-1,.cls-2,.cls-4,.cls-5,.cls-6,.cls-7,.cls-11,.cls-19,.cls-20,.cls-21,.cls-22,.cls-23,.cls-24,.cls-25,.cls-26,.cls-27,.cls-28,.cls-29,.cls-30{stroke-width:2.17px}.cls-31{fill:#0098d9}.cls-2{stroke:#006fe6}.cls-3{stroke-width:2.03px}.cls-3,.cls-4{stroke:#1c1b18}.cls-32{fill:#e52210}.cls-5{stroke:#664495}.cls-33{fill:#7fbb26}.cls-34{fill:#006fe6}.cls-6,.cls-12{stroke:#007d32}.cls-7{stroke:#9b0058}.cls-8{stroke-width:.92px}.cls-8,.cls-9{stroke:#ededed}.cls-35{fill:#d4ecfb}.cls-9{stroke-width:.29px}.cls-9,.cls-17,.cls-18{stroke-miterlimit:10}.cls-10{stroke:#7fbb26;stroke-width:2.21px}.cls-36{fill:#dc241f}.cls-37{fill:#ffa600}.cls-11{stroke:#ef86a4}.cls-12{stroke-dasharray:0 0 1.43 1.43;stroke-width:2.05px}.cls-38{fill:#b26100}.cls-39{fill:#007d32}.cls-40{isolation:isolate}.cls-13{stroke-width:.69px}.cls-13,.cls-14,.cls-15,.cls-16,.cls-18{stroke:#fff}.cls-14,.cls-18{stroke-width:.73px}.cls-15{stroke-width:1.14px}.cls-16{stroke-width:.78px}.cls-41{fill:#1c1b18}.cls-42{fill:#ffd200}.cls-43{fill:#233488}.cls-17{stroke:#5ec5f2;stroke-width:.28px}.cls-44{fill:#fff}.cls-45{fill:#18a95d}.cls-19{stroke:#9a0057}.cls-20{stroke:#00a6aa}.cls-21{stroke:#18a95d}.cls-22{stroke:#233488}.cls-46{fill:#9a0057}.cls-23{stroke:#ffa600}.cls-24{stroke:#a1a5a7}.cls-47{fill:#ef86a4}.cls-48{fill:#a1a5a7}.cls-25{stroke:#dc241f}.cls-26{stroke:#93cebe}.cls-49{fill:#00a7e6}.cls-27{stroke:#e52210}.cls-28{stroke:#b26100}.cls-29{stroke:#61686b}.cls-30{stroke:#0098d9}.zoomButtonContainer{position:absolute;bottom:2.2%;right:2%;display:flex;flex-direction:column;align-items:center;height:80px;width:30px}.zoomButton{background:#00000026;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);box-shadow:0 4px 30px #0000001a;width:100%;height:50%;display:flex;justify-content:center;align-items:center;cursor:pointer}.top{border-radius:20px 20px 0 0}.bottom{border-radius:0 0 20px 20px}.dataDisplay{width:26vw;height:fit-content;display:flex;flex-direction:column;align-items:center;gap:2rem}.line{background-color:#ccc;border-radius:5px;height:2px;width:100%}.cardContainer{display:flex;flex-direction:column;gap:1rem;padding:1rem}.lineCard{padding:1rem;border-radius:8px;box-shadow:0 2px 6px #0000001a;overflow-y:scroll;max-height:220px;transition:max-height .4s ease,box-shadow .2s ease;position:relative}.lineCard.expanded{max-height:400px}.cardHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.expandButton{background:none;border:none;color:#007bff;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .2s ease}.expandButton:hover{color:#0056b3}.extraInfo{margin-top:.5rem;color:#444;font-size:.9rem;line-height:1.4;opacity:0;transform:translateY(-5px);animation:fadeIn .3s forwards}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}.filterContainer{width:90%;border-radius:10px;position:relative;display:flex;flex-direction:column;gap:15px;border:2px solid #f0f0f0;text-align:left;padding:2% 5%}.filterContainer>div{position:relative}.selectedLinesContainer{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px;padding:5px 0}.selectedLine{display:flex;align-items:center;gap:6px;background-color:#f9f9f9;border:2px solid #e0e0e0;padding:4px 10px;border-radius:20px;font-size:.9rem;font-weight:500;color:#333;transition:all .2s ease}.selectedLine:hover{background-color:#f0f0f0;border-color:#ccc}.removeLineButton{background:none;border:none;cursor:pointer;display:flex;align-items:center;color:#666;padding:2px;transition:color .2s ease,transform .2s ease}.removeLineButton:hover{color:#d33;transform:scale(1.1)}.buttonContainer{width:100%;display:flex;justify-content:space-between;margin-top:10px}.buttonContainer>button{width:25%;padding:5px;border-radius:5px;font-size:1rem;cursor:pointer;font-weight:600;transition:transform .15s ease,box-shadow .15s ease}.buttonContainer>button:hover{transform:translateY(-2px);box-shadow:0 2px 6px #0000001a}.add{background-color:#00ff0040;border:2px solid #00870060;color:#004f00}.clear{background-color:#ff000040;border:2px solid #ff000060;color:#7a0000}.noneSelected{width:94%;font-size:.9rem;height:fit-content;padding:3%;border:2px dashed #d4d4d4;text-align:center;border-radius:10px;color:#777;background-color:#fafafa}.contentContainer{width:86vw;padding:4vh 7vw;height:85vh}.visContainer{display:flex;height:85vh;justify-content:center;width:100%;gap:2vw;flex-direction:row}.header{width:82vw;height:4vw;border-bottom:2px solid #f0f0f0;display:flex;align-items:center;padding:0 9vw}.header p{font-size:1.3rem;color:#333}.author{font-size:.8rem;color:#666;margin-left:1rem}.footer{width:82vw;height:fit-content;border-top:2px solid #f0f0f0;align-items:left;padding:2vw 9vw}.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.popup-content{background:#fff;padding:16px 32px;border-radius:12px;width:35%;text-align:left;box-shadow:0 4px 30px #0000004d}.selectContainer{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto}.item>*{font-size:14px}.selected{margin:1rem 0;border:1px solid black;padding:0 10px;height:30px;width:fit-content;border-radius:30px;gap:7px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;font-size:14px;cursor:pointer;transition:background-color .25s ease,border-color .25s ease,color .25s ease,transform .2s ease}.selected:hover{transform:scale(1.03)}.selected svg{transition:opacity .25s ease}.selected.selected-active svg{opacity:1}.selected p{margin:0;padding:0}
