.trains-back-link{display:inline-flex;align-items:center;gap:0.5rem;color:#0066cc;text-decoration:none;font-size:0.9rem;margin-bottom:1rem;padding:0.5rem 0}.trains-back-link:hover{text-decoration:underline}:root{--train-primary:#0066cc;--train-secondary:#00994d;--train-delay:#e63946;--train-ontime:#2a9d8f}.trains-results-header{background:linear-gradient(135deg,#1a365d 0%,#2c5282 100%);color:#fff;padding:1.5rem 1rem;border-radius:12px;margin-bottom:1rem}.trains-results-title{display:flex;align-items:center;gap:1rem;font-size:1.25rem;margin:0;flex-wrap:wrap}.trains-results-title i{color:#90cdf4}.trains-results-date{font-size:0.9rem;opacity:0.8;margin-top:0.5rem}.trains-nav{display:flex;gap:0.5rem;flex-wrap:wrap;margin-bottom:1rem;padding:0 0.5rem}.trains-nav a{display:flex;align-items:center;gap:0.4rem;padding:0.5rem 1rem;background:#f1f5f9;color:#334155;text-decoration:none;border-radius:20px;font-size:0.9rem;transition:all 0.2s}.trains-nav a:hover,.trains-nav a.active{background:var(--train-primary);color:#fff}.trains-journey-list{display:flex;flex-direction:column;gap:1rem}.trains-journey-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);overflow:hidden;transition:box-shadow 0.2s}.trains-journey-card:hover{box-shadow:0 4px 16px rgba(0,0,0,0.12)}.trains-journey-main{display:grid;grid-template-columns:1fr auto 1fr auto;gap:1rem;padding:1.25rem;align-items:center}@media (max-width:600px){.trains-journey-main{grid-template-columns:1fr;gap:0.75rem}}.trains-time-block{text-align:center}.trains-time{font-size:1.5rem;font-weight:700;color:#1e293b}.trains-time.delayed{color:var(--train-delay)}.trains-time-original{font-size:0.85rem;color:#94a3b8;text-decoration:line-through}.trains-station{font-size:0.9rem;color:#64748b;margin-top:0.25rem}.trains-platform{font-size:0.8rem;color:#94a3b8}.trains-journey-arrow{display:flex;flex-direction:column;align-items:center;color:#94a3b8;padding:0 0.5rem}.trains-journey-arrow i{font-size:1.25rem}.trains-duration{font-size:0.8rem;margin-top:0.25rem}.trains-journey-info{text-align:right}.trains-changes{font-size:0.9rem;color:#64748b}.trains-changes.direct{color:var(--train-ontime);font-weight:600}.trains-train-numbers{font-size:0.85rem;color:#94a3b8;margin-top:0.25rem}.trains-delay-badge{display:inline-block;padding:0.2rem 0.5rem;border-radius:4px;font-size:0.75rem;font-weight:600;margin-top:0.25rem}.trains-delay-badge.on-time{background:#d1fae5;color:#065f46}.trains-delay-badge.delayed{background:#fee2e2;color:#991b1b}.trains-delay-badge.cancelled{background:#1e293b;color:#fff}.trains-journey-legs{background:#f8fafc;padding:1rem 1.25rem;border-top:1px solid #e2e8f0;display:none}.trains-journey-legs.show{display:block}.trains-leg{display:flex;gap:1rem;padding:0.75rem 0;border-bottom:1px solid #e2e8f0}.trains-leg:last-child{border-bottom:none}.trains-leg-timeline{width:20px;display:flex;flex-direction:column;align-items:center}.trains-leg-dot{width:10px;height:10px;border-radius:50%;background:var(--train-primary);flex-shrink:0}.trains-leg-line{width:2px;flex:1;background:#cbd5e1;margin:4px 0}.trains-leg-content{flex:1}.trains-leg-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:0.25rem}.trains-leg-train{font-weight:600;color:var(--train-primary)}.trains-leg-time{font-size:0.85rem;color:#64748b}.trains-leg-stations{font-size:0.9rem;color:#1e293b}.trains-toggle-legs{display:block;width:100%;padding:0.75rem;background:#f1f5f9;border:none;cursor:pointer;font-size:0.85rem;color:#64748b;text-align:center;transition:background 0.2s}.trains-toggle-legs:hover{background:#e2e8f0}.trains-no-results{text-align:center;padding:3rem 1rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08)}.trains-no-results i{font-size:3rem;color:#cbd5e1;margin-bottom:1rem}.trains-no-results h2{margin:0 0 0.5rem 0;color:#1e293b}.trains-no-results p{color:#64748b;margin:0}.trains-modify-search{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.08);padding:1rem;margin-bottom:1rem}.trains-modify-form{display:flex;gap:0.5rem;flex-wrap:wrap;align-items:end}.trains-modify-form .trains-field{flex:1;min-width:150px}.trains-modify-form input{padding:0.5rem 0.75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:0.9rem;width:100%}.trains-modify-form button{padding:0.5rem 1rem;background:var(--train-primary);color:#fff;border:none;border-radius:6px;cursor:pointer}.trains-field{display:flex;flex-direction:column;gap:0.25rem}.trains-field label{font-size:0.75rem;color:#64748b}