*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#333;background-color:#f8f9fa}header{background:linear-gradient(135deg,#8e44ad,#2980b9);color:white;padding:.7rem 0;position:fixed;top:0;width:100%;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,.1)}nav{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 1rem;flex-wrap:wrap}.logo{font-size:1.2rem;font-weight:bold;text-decoration:none;color:white}.nav-links{display:flex;list-style:none;gap:1.5rem;align-items:center;margin:0}.nav-links a{color:white;text-decoration:none;padding:.4rem .8rem;border-radius:4px;transition:background-color .3s;font-weight:500;font-size:.9rem}.nav-links a:hover{background-color:rgba(255,255,255,.2)}main{margin-top:60px;padding:1.5rem;max-width:1200px;margin-left:auto;margin-right:auto}.hero-section{background:linear-gradient(135deg,#2980b9 0%,#8e44ad 100%);color:white;padding:3rem 2rem;border-radius:15px;text-align:center;margin-bottom:3rem;box-shadow:0 10px 30px rgba(0,0,0,.1)}.hero-section h1{font-size:2.5rem;margin-bottom:1rem;font-weight:700}.hero-section p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.calculator-container{background:white;padding:2rem;border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.1);margin-bottom:3rem}.calculator-title{text-align:center;color:#8e44ad;margin-bottom:2rem;font-size:1.8rem}.form-group{margin-bottom:1.5rem}label{display:block;margin-bottom:.5rem;font-weight:600;color:#8e44ad}select,button{width:100%;padding:12px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px}select:focus{outline:none;border-color:#2980b9;box-shadow:0 0 0 3px rgba(41,128,185,.1)}button{background:linear-gradient(135deg,#8e44ad,#2980b9);color:white;border:none;cursor:pointer;font-weight:bold;margin-top:1rem;transition:transform .2s}button:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.2)}.search-container{margin-bottom:2rem}#stationSearch{width:100%;padding:12px;border:2px solid #e1e5e9;border-radius:8px;font-size:16px}.results-container{background:#f8f9fa;padding:2rem;border-radius:10px;margin-top:2rem;border-left:5px solid #8e44ad}.result-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #dee2e6}.result-item:last-child{border-bottom:none}.result-label{font-weight:600;color:#8e44ad}.result-value{font-weight:bold;color:#2980b9;font-size:1.1rem}.faq-section,.info-section{background:white;padding:2rem;border-radius:15px;box-shadow:0 10px 30px rgba(142,68,173,.08);margin-bottom:3rem}.section-title{color:#8e44ad;margin-bottom:1.5rem;font-size:1.5rem;border-bottom:3px solid #2980b9;padding-bottom:.5rem}.map-container{text-align:center;margin:2rem 0}.map-container img{max-width:100%;height:auto;border-radius:10px;box-shadow:0 5px 20px rgba(0,0,0,.1)}.station-times{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin:2rem 0}.time-item{background:#f8f9fa;padding:1rem;border-radius:8px;border-left:4px solid #8e44ad}.popular-routes{background:linear-gradient(135deg,#2980b9 0%,#8e44ad 100%);color:white;padding:2rem;border-radius:15px;margin:2rem 0}.route-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:1rem}.route-card{background:rgba(255,255,255,.1);padding:1rem;border-radius:8px;cursor:pointer;transition:transform .2s}.route-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.2)}@media (max-width:768px){header{padding:.5rem 0}nav{padding:0 .8rem;flex-direction:column;align-items:flex-start;gap:.5rem}.logo{font-size:1.1rem}.nav-links{width:100%;flex-direction:row;justify-content:space-between;gap:.5rem;margin:0;padding:0}.nav-links li{flex:1;text-align:center}.nav-links a{display:block;padding:.5rem;text-align:center;font-size:.85rem;white-space:nowrap}.nav-links a:hover{background-color:rgba(255,255,255,.1)}.hero-section h1{font-size:1.6rem}main{padding:1rem;margin-top:80px}.calculator-container,.info-section,.faq-section{padding:1.2rem}}.loading{display:none;text-align:center;padding:1rem}.spinner{border:4px solid #f3f3f3;border-top:4px solid #8e44ad;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.nav-links .dropdown{position:relative}.nav-links .dropbtn{cursor:pointer;display:block}.nav-links .dropdown-content{display:none;position:absolute;background:white;min-width:180px;box-shadow:0 8px 16px rgba(0,0,0,.1);z-index:1001;border-radius:8px;margin-top:.5rem;top:100%;left:0}.nav-links .dropdown-content a{color:#2c3e50;padding:.8rem 1.2rem;text-decoration:none;display:block;border-bottom:1px solid #eee;transition:background .2s}.nav-links .dropdown-content a:last-child{border-bottom:none}.nav-links .dropdown-content a:hover{background:#f0f0f0}.nav-links .dropdown:hover .dropdown-content,.nav-links .dropdown-content:hover{display:block}.content-map-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:2rem 0}.content-map-card{background:#fff;border-radius:12px;box-shadow:0 4px 16px rgba(44,62,80,.08);padding:1.5rem 1rem;transition:box-shadow .2s}.content-map-card:hover{box-shadow:0 8px 32px rgba(44,62,80,.15)}.content-map-card h3{font-size:1.1rem;color:#16a085;margin-bottom:1rem;text-align:center}.content-map-card ul{list-style:none;padding:0;margin:0}.content-map-card li{margin-bottom:.5rem;text-align:center}.content-map-card a{color:#2c3e50;text-decoration:none;font-weight:500;transition:color .2s}.content-map-card a:hover{color:#e67e22;text-decoration:underline}