.bg-white{background:#fff}.bg-white-light{background:rgba(255,255,255,.5)}.txt-white{color:#fff}.txt-white *{color:#fff}.bg-black{background:#000}.bg-black-light{background:rgba(0,0,0,.5)}.txt-black{color:#000}.txt-black *{color:#000}.bg-navy{background:#02365d}.bg-navy-light{background:rgba(2,54,93,.5)}.txt-navy{color:#02365d}.txt-navy *{color:#02365d}.bg-purple{background:#8b62a5}.bg-purple-light{background:rgba(139,98,165,.5)}.txt-purple{color:#8b62a5}.txt-purple *{color:#8b62a5}.bg-lightpurple{background:#c3aadd}.bg-lightpurple-light{background:rgba(195,170,221,.5)}.txt-lightpurple{color:#c3aadd}.txt-lightpurple *{color:#c3aadd}.bg-purepurple{background:#55328a}.bg-purepurple-light{background:rgba(85,50,138,.5)}.txt-purepurple{color:#55328a}.txt-purepurple *{color:#55328a}.bg-pink{background:#ddd3ea}.bg-pink-light{background:rgba(221,211,234,.5)}.txt-pink{color:#ddd3ea}.txt-pink *{color:#ddd3ea}.bg-teal{background:#1ca1a9}.bg-teal-light{background:rgba(28,161,169,.5)}.txt-teal{color:#1ca1a9}.txt-teal *{color:#1ca1a9}.bg-green{background:#bdbe01}.bg-green-light{background:rgba(189,190,1,.5)}.txt-green{color:#bdbe01}.txt-green *{color:#bdbe01}.bg-mint{background:#c2ebe6}.bg-mint-light{background:rgba(194,235,230,.5)}.txt-mint{color:#c2ebe6}.txt-mint *{color:#c2ebe6}.bg-yellow{background:#fdd82f}.bg-yellow-light{background:rgba(253,216,47,.5)}.txt-yellow{color:#fdd82f}.txt-yellow *{color:#fdd82f}.bg-orange{background:#dfa055}.bg-orange-light{background:rgba(223,160,85,.5)}.txt-orange{color:#dfa055}.txt-orange *{color:#dfa055}.bg-pureorange{background:#ec671c}.bg-pureorange-light{background:rgba(236,103,28,.5)}.txt-pureorange{color:#ec671c}.txt-pureorange *{color:#ec671c}.bg-grey{background:#f5f5f5}.bg-grey-light{background:rgba(245,245,245,.5)}.txt-grey{color:#f5f5f5}.txt-grey *{color:#f5f5f5}.timetable-search-widget{width:100%;max-width:1200px;margin:0 auto;padding:20px}.timetable-search-widget .timetable-search-container{margin-bottom:30px}.timetable-search-widget .timetable-search-container .tsg-search-box{position:relative;margin-bottom:15px}.timetable-search-widget .timetable-search-container .tsg-search-box .timetable-search-input{width:100%;padding:16px 50px 16px 50px;font-size:16px;border:2px solid #e0e0e0;border-radius:50px;outline:0;transition:all .3s ease;background:#fff}.timetable-search-widget .timetable-search-container .tsg-search-box .timetable-search-input:focus{border-color:#0073aa;box-shadow:0 0 0 3px rgba(0,115,170,.1)}.timetable-search-widget .timetable-search-container .tsg-search-box .timetable-search-input::placeholder{color:#999}.timetable-search-widget .timetable-search-container .tsg-search-box .search-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#666;pointer-events:none}.timetable-search-widget .timetable-search-container .tsg-search-box .search-icon svg{display:block}.timetable-search-widget .timetable-search-container .tsg-search-box .clear-search{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:30px;height:30px;background:#f0f0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:24px;line-height:1;color:#666;transition:all .2s ease}.timetable-search-widget .timetable-search-container .tsg-search-box .clear-search:hover{background:#e0e0e0;color:#333}.timetable-search-widget .timetable-search-container .search-info{display:flex;justify-content:space-between;align-items:center;padding:0 10px}.timetable-search-widget .timetable-search-container .search-info .results-count{font-size:14px;color:#666}.timetable-search-widget .timetable-search-container .search-info .results-count strong{color:#0073aa;font-weight:600}.timetable-search-widget .timetable-search-container .search-info .loading-indicator{font-size:14px;color:#0073aa;font-style:italic}.timetable-search-widget .timetable-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;animation:fadeIn .3s ease}@media (max-width:768px){.timetable-search-widget .timetable-results{grid-template-columns:1fr}}.timetable-search-widget .timetable-item{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.05)}.timetable-search-widget .timetable-item:hover{transform:translateY(-3px);box-shadow:0 6px 12px rgba(0,0,0,.1);border-color:#0073aa}.timetable-search-widget .timetable-item .timetable-info{display:flex;align-items:center;gap:15px;flex:1;min-width:100%;width:100%;margin-bottom:10px}.timetable-search-widget .timetable-item .timetable-info .service-badge{background:linear-gradient(135deg,#0073aa 0,#02365d 100%);color:#fff;padding:10px 16px;border-radius:8px;font-weight:700;font-size:18px;min-width:60px;text-align:center;box-shadow:0 2px 4px rgba(0,115,170,.2);flex-shrink:0}.timetable-search-widget .timetable-item .timetable-info .timetable-details{flex:1;min-width:0}.timetable-search-widget .timetable-item .timetable-info .timetable-details .operator-name{font-size:13px;color:#666;margin-bottom:4px;font-weight:500;word-wrap:break-word;overflow-wrap:break-word}.timetable-search-widget .timetable-item .timetable-info .timetable-details .location-name{font-size:15px;font-weight:600;color:#333;word-wrap:break-word;overflow-wrap:break-word}.timetable-search-widget .timetable-item .view-timetable-btn{background:#916faf;color:#fff;padding:10px 20px;border-radius:6px;text-decoration:none;font-size:14px;font-weight:600;transition:all .2s ease;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center}.timetable-search-widget .timetable-item .view-timetable-btn svg{flex-shrink:0}.timetable-search-widget .timetable-item .view-timetable-btn:hover{text-decoration:none;color:#fff}.timetable-search-widget .timetable-item .view-timetable-btn:active{transform:scale(.98)}@media (max-width:480px){.timetable-search-widget .timetable-item{flex-direction:column;align-items:stretch;gap:15px}.timetable-search-widget .timetable-item .timetable-info{margin-bottom:10px}.timetable-search-widget .timetable-item .view-timetable-btn{width:100%;text-align:center}}.timetable-search-widget .no-results-message{text-align:center;padding:60px 20px;background:#f9f9f9;border-radius:12px;border:2px dashed #e0e0e0}.timetable-search-widget .no-results-message p{font-size:16px;color:#666;margin-bottom:10px}.timetable-search-widget .no-results-message p:first-child{font-size:18px;font-weight:600;color:#333}.timetable-search-widget .no-results-message .search-suggestions{font-size:14px;color:#999;font-style:italic}.timetable-search-widget .no-results{grid-column:1/-1;text-align:center;padding:60px 20px;background:#f9f9f9;border-radius:12px}.timetable-search-widget .no-results p{font-size:16px;color:#666;margin:0}.timetable-search-widget .timetable-pagination{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:30px;padding:20px;flex-wrap:wrap}.timetable-search-widget .timetable-pagination .pagination-btn{background:#02365d;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.timetable-search-widget .timetable-pagination .pagination-btn:hover:not(:disabled){background:#005177;transform:translateY(-2px)}.timetable-search-widget .timetable-pagination .pagination-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.timetable-search-widget .timetable-pagination .page-numbers{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:center;padding-left:10px;padding-right:10px}.timetable-search-widget .timetable-pagination .page-numbers .page-number-btn{background:#fff;color:#02365d;border:2px solid #02365d;padding:8px 0;border-radius:50%;min-width:30px;height:30px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.timetable-search-widget .timetable-pagination .page-numbers .page-number-btn:hover{background:#e6f3f9;transform:translateY(-2px)}.timetable-search-widget .timetable-pagination .page-numbers .page-number-btn.active{background:#02365d;color:#fff;cursor:default}.timetable-search-widget .timetable-pagination .page-numbers .page-number-btn.active:hover{transform:none}.timetable-search-widget .timetable-pagination .page-numbers .page-ellipsis{color:#666;font-weight:600;padding:0 5px;user-select:none}@media (max-width:768px){.timetable-search-widget .timetable-pagination{gap:8px;padding:15px}.timetable-search-widget .timetable-pagination .pagination-btn{padding:8px 16px;font-size:13px}.timetable-search-widget .timetable-pagination .page-numbers .page-number-btn{min-width:36px;height:36px;padding:6px 10px;font-size:13px}}@media (max-width:480px){.timetable-search-widget .timetable-pagination{gap:6px}.timetable-search-widget .timetable-pagination .page-numbers{gap:4px}.timetable-search-widget .timetable-pagination .page-numbers .page-number-btn{min-width:32px;height:32px;padding:4px 8px;font-size:12px}}.timetable-item .service-badge.highlight-match{background:linear-gradient(135deg,#ffa726 0,#ff6f00 100%);box-shadow:0 2px 8px rgba(255,167,38,.4)}.timetable-item .operator-name.highlight-match{background-color:#fff59d;padding:2px 6px;border-radius:4px;font-weight:700}.timetable-item .location-name.highlight-match{background-color:#fff59d;padding:2px 6px;border-radius:4px;font-weight:700}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}.timetable-search-widget .loading-indicator{animation:pulse 1.5s ease-in-out infinite}@media (max-width:1024px){.timetable-search-widget .timetable-results{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px}}@media (max-width:768px){.timetable-search-widget{padding:15px}.timetable-search-widget .timetable-search-container{margin-bottom:20px}.timetable-search-widget .timetable-results{gap:12px}}@media (prefers-color-scheme:dark){.timetable-search-widget .timetable-search-input{background:#2a2a2a;border-color:#444;color:#fff}.timetable-search-widget .timetable-search-input:focus{border-color:#0073aa}.timetable-search-widget .timetable-search-input::placeholder{color:#888}.timetable-search-widget .search-icon{color:#888}.timetable-search-widget .timetable-item{background:#2a2a2a;border-color:#444}.timetable-search-widget .timetable-item .operator-name{color:#aaa}.timetable-search-widget .timetable-item .location-name{color:#fff}.timetable-search-widget .no-results,.timetable-search-widget .no-results-message{background:#2a2a2a;border-color:#444}.timetable-search-widget .no-results p,.timetable-search-widget .no-results-message p{color:#aaa}.timetable-search-widget .no-results p:first-child,.timetable-search-widget .no-results-message p:first-child{color:#fff}.timetable-search-widget .timetable-item .service-badge.highlight-match{background:linear-gradient(135deg,#ff9800 0,#f57c00 100%)}.timetable-search-widget .timetable-item .location-name.highlight-match,.timetable-search-widget .timetable-item .operator-name.highlight-match{background-color:#f9a825;color:#000}}