@import"https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.run-address{color:#555;font-size:.97em;cursor:pointer;text-decoration:underline dotted #aaa;position:relative}.run-address-tooltip{position:relative;display:inline-block}.run-tooltip{visibility:hidden;opacity:0;width:max-content;background:#222;color:#fff;text-align:left;border-radius:6px;padding:4px 10px;position:absolute;z-index:10;left:50%;top:120%;transform:translate(-50%);font-size:.95em;transition:opacity .2s;pointer-events:none;white-space:nowrap;box-shadow:0 2px 8px #00000021}.run-address-tooltip:hover .run-tooltip{visibility:visible;opacity:1}.run-details{margin-left:8px;color:#333;font-size:.97em}.run-mobile{color:#1976d2;font-size:.97em}body,#root{margin:0;padding:0;min-height:100vh;width:100%;box-sizing:border-box;overflow-x:hidden}.main-wrapper{min-height:100vh;background:#f7f7fa;display:flex;flex-direction:column}.navbar{width:100%;background:#3f3f3fe0;color:#e2e2e2;padding:1rem 2rem;display:flex;align-items:center;box-shadow:0 2px 8px #c4ff6400;min-height:56px}.navbar-title{font-size:1.3rem;font-weight:600;letter-spacing:1px}.app-container{flex:1;max-width:900px;margin:0 auto;padding:1.5rem 1rem 2rem;display:flex;flex-direction:column;gap:1.5rem}.form-section{display:flex;flex-direction:column;gap:.5rem;background:#fff;border-radius:10px;padding:1rem 1.2rem;box-shadow:0 1px 4px #00000008}.form-section label{font-weight:500;font-size:1rem}.form-section select{margin-left:8px;padding:.3em .7em;border-radius:5px;border:1px solid #bbb}.depot-coords{font-size:.9em;color:#555}.map-section{background:#fff;border-radius:10px;padding:1rem 1.2rem;box-shadow:0 1px 4px #00000008;display:flex;flex-direction:column;gap:.5rem}.map-label{font-weight:500;margin-bottom:.5rem}.last-clicked{font-size:.95em;color:#666;margin-top:.5rem}.runs-section{background:#fff;border-radius:10px;padding:1rem 1.2rem;box-shadow:0 1px 4px #00000008}.run-card{border:1px solid #e0e0e0;border-radius:8px;margin:12px 0;padding:12px;background:#fafbfc}.run-title{font-weight:700;margin-bottom:.5em}.run-list{margin:0;padding-left:20px;font-size:1em}.run-address{color:#555;font-size:.97em}.run-cost{margin-top:4px;font-weight:500}@media (max-width: 600px){.app-container{padding:.5rem .2rem 1rem}.form-section,.map-section,.runs-section{padding:.7rem .4rem}.navbar{padding:.7rem 1rem;font-size:1rem}.navbar-title{font-size:1.05rem}}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.package-card{display:grid;grid-template-columns:2fr 3fr;gap:0;border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #02061714;background:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-family:Montserrat,Helvetica Neue,Helvetica,Arial,sans-serif;color:#222}.package-left{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:0rem;align-items:flex-start}.package-left h1,.package-left h2,.package-left h3,.package-left h4,.package-left h5,.package-left h6{font-family:Montserrat,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:700;margin-top:0}.pkg-title{margin:0rem;font-size:1.8rem;font-weight:800;color:#0b5fff;width:100%;text-transform:uppercase;text-align:center}.pkg-country{margin-top:0rem;color:#6b7280;font-weight:600;font-size:1.3rem;width:100%;text-align:center;text-transform:uppercase}.pkg-depart{color:#6b7280;font-weight:600}.pkg-row{font-size:.98rem;color:#111827}.pkg-nights{margin-top:.3rem;text-align:center;width:100%}.pkg-extras{margin-top:.1rem;font-size:.7rem;text-align:center;width:100%;font-style:italic;font-weight:600;color:#6b7280}.pkg-bookby{margin-top:.38em;text-align:center;width:100%}.pkg-departfrom{text-align:center;width:100%}.pkg-row.small{font-size:.9rem;color:#6b7280}.pkg-row.small.muted{color:#6b7280}.pkg-meta{margin-top:.45rem;width:100%}.meta-row{display:flex;justify-content:flex-start;gap:.5rem;font-size:.95rem;color:#374151}.meta-label{color:#6b7280;font-weight:700;min-width:88px}.meta-value{color:#0b5fff;font-weight:600;flex-grow:1;text-align:right}.price-block{margin-top:.8rem;display:flex;flex-direction:column;gap:.25rem}.price-was{color:#9ca3af;font-weight:700}.price-old{color:#9ca3af;font-size:1.6rem;font-weight:900;display:flex;align-items:flex-end;gap:.5rem;text-decoration:line-through;text-decoration-color:red}.price-now{color:#0b5fff;font-size:1.6rem;font-weight:900;display:flex;align-items:center;gap:.5rem}.price-amount{color:#0b5fff;font-size:3rem;font-weight:900;display:flex;align-items:flex-end;gap:.5rem}.pps{font-size:.85rem;color:#0b5fff;margin-left:.25rem;margin-bottom:.12rem}.pkg-reference{margin-top:.4rem;color:#6b7280;font-size:.9rem;font-variant:small-caps;text-align:center}.pkg-footer{margin-top:.8rem;color:#6b7280;font-size:.9rem;font-variant:small-caps;text-align:center}.package-right{position:relative;background-size:cover;background-position:center}.discount-badge{position:absolute;top:.9rem;right:.9rem;background:#ffffffe6;padding:.6rem .9rem;border-radius:6px;font-weight:800;color:#0b5fff;text-align:center}.discount-percent{font-size:1.6rem;display:block}.availability{position:absolute;right:.6rem;bottom:.6rem;font-size:.65rem;color:#0009;padding:.25rem}@media (max-width: 900px){.package-card{grid-template-columns:1fr}.discount-badge{right:1rem;top:1rem}.availability{width:100%;text-align:center}}
