.bptfs-root{
  --bptfs-green:#0cb868;
  --bptfs-green-dark:#079656;
  --bptfs-text:#111827;
  --bptfs-line:#e7ebf1;
  --bptfs-soft:#f6f8fb;
  width:94%;
  max-width:var(--bptfs-max-width,680px);
  margin-inline:auto;
  font-family:inherit;
}
.bptfs-launch-slot{width:100%;height:48px;position:relative}
.bptfs-search-shell{
  box-sizing:border-box;appearance:none;-webkit-appearance:none;width:100%;height:48px;min-height:48px;
  display:flex;align-items:center;gap:10px;padding:0 15px;
  border:1px solid rgba(18,35,54,.08);border-radius:999px;background:#fff;color:#111827;
  box-shadow:0 7px 20px rgba(0,18,38,.10);text-align:left;
  -webkit-tap-highlight-color:transparent;touch-action:manipulation;
}
.bptfs-search-shell:focus-within{border-color:rgba(12,184,104,.65);box-shadow:0 0 0 3px rgba(12,184,104,.10),0 7px 20px rgba(0,18,38,.10)}
.bptfs-launch-icon{width:20px;height:20px;flex:0 0 20px;color:#223146;display:grid;place-items:center}
.bptfs-launch-icon svg,.bptfs-back svg,.bptfs-clear svg,.bptfs-row-icon svg{
  width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;
}
.bptfs-input{
  appearance:none;-webkit-appearance:none;flex:1 1 auto;width:100%;min-width:0;height:44px;border:0!important;outline:0!important;
  background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important;color:#111827!important;
  caret-color:#0cb868;font:inherit;font-size:16px!important;line-height:1.2!important;font-weight:500!important;border-radius:0!important;
  pointer-events:auto!important;touch-action:manipulation!important;-webkit-user-select:text!important;user-select:text!important;
}
.bptfs-input::placeholder{color:#9aa5b6;opacity:1}
.bptfs-input::-webkit-search-decoration,.bptfs-input::-webkit-search-cancel-button,.bptfs-input::-webkit-search-results-button,.bptfs-input::-webkit-search-results-decoration{-webkit-appearance:none}
.bptfs-back,.bptfs-clear{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:#1d2939;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.bptfs-back{width:38px;height:42px;padding:9px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;margin-left:-7px}
.bptfs-clear{width:34px;height:34px;padding:8px;flex:0 0 34px;border-radius:50%;color:#536174;margin-right:-5px}
/* Keep launcher/search icons in the correct state on every browser. */
.bptfs-back[hidden],.bptfs-launch-icon[hidden],.bptfs-clear[hidden]{display:none!important}
.bptfs-search-shell:not(.bptfs-is-open) .bptfs-back{display:none!important}
.bptfs-search-shell.bptfs-is-open .bptfs-launch-icon{display:none!important}
.bptfs-search-shell.bptfs-is-open .bptfs-back{display:grid!important}
.bptfs-back:hover,.bptfs-clear:hover{background:#f6f8fb}

/* The exact same input becomes the fullscreen top bar. No Android refocus. */
.bptfs-search-shell.bptfs-is-open{
  position:fixed!important;
  top:calc(env(safe-area-inset-top,0px) + 8px)!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  z-index:2147483647!important;
  width:calc(100% - 18px)!important;
  max-width:820px!important;
  height:48px!important;
  min-height:48px!important;
  padding:0 9px!important;
  gap:2px!important;
  border:1.5px solid #d9dee7!important;
  border-radius:15px!important;
  box-shadow:0 2px 7px rgba(18,35,54,.04)!important;
  background:#fff!important;
}
.bptfs-search-shell.bptfs-is-open:focus-within{border-color:#0cb868!important;box-shadow:0 0 0 3px rgba(12,184,104,.10)!important}
.bptfs-search-shell.bptfs-is-open .bptfs-input{height:46px;padding:0 3px!important}

.bptfs-overlay[hidden]{display:none!important}
.bptfs-overlay{
  position:fixed!important;inset:0!important;z-index:2147483646!important;background:#fff!important;color:#111827;
  overscroll-behavior:contain;isolation:isolate;transform:none!important;filter:none!important;opacity:1!important;
}
.bptfs-dialog{position:relative;z-index:1;width:100%;height:100dvh;min-height:100%;display:flex;flex-direction:column;background:#fff}
.bptfs-body{
  flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;
  padding:calc(env(safe-area-inset-top,0px) + 67px) 16px calc(28px + env(safe-area-inset-bottom,0px));background:#fff;
}
.bptfs-suggestions-section,.bptfs-results-section{max-width:820px;margin:0 auto}
.bptfs-section-title{margin:0 0 8px;font-size:14px;line-height:1.3;font-weight:800;letter-spacing:.01em;color:#6d7888}
.bptfs-suggestions,.bptfs-results{display:flex;flex-direction:column;gap:2px}
.bptfs-suggestion,.bptfs-result{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:7px 7px;border-radius:13px;color:inherit!important;text-decoration:none!important;-webkit-tap-highlight-color:transparent}
.bptfs-suggestion:hover,.bptfs-result:hover,.bptfs-result.is-active{background:#f6f8fb}
.bptfs-row-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:12px;background:#eaf8f1;color:#079656}
.bptfs-row-icon svg{width:21px;height:21px}
.bptfs-row-copy{flex:1 1 auto;min-width:0;display:flex;align-items:center}
.bptfs-row-copy strong{display:block;color:#111827;font-size:15.5px;line-height:1.25;font-weight:720;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bptfs-row-arrow{flex:0 0 auto;color:#a0a9b7;font-size:25px;line-height:1;padding-right:5px}
.bptfs-status{min-height:16px;margin:0 0 5px;color:#7c8798;font-size:13px}
.bptfs-empty{margin-top:10px;padding:18px;border-radius:15px;background:#f6f8fb;color:#667085;text-align:center;font-size:14px}

/* Smart visual categories */
.bptfs-suggestion[data-kind="airport"] .bptfs-row-icon,.bptfs-result[data-kind="airport"] .bptfs-row-icon{background:#eaf2ff;color:#2873d6}
.bptfs-suggestion[data-kind="train"] .bptfs-row-icon,.bptfs-result[data-kind="train"] .bptfs-row-icon{background:#f0edff;color:#6d55c7}
.bptfs-suggestion[data-kind="disney"] .bptfs-row-icon,.bptfs-result[data-kind="disney"] .bptfs-row-icon{background:#fff3df;color:#c77a09}
.bptfs-suggestion[data-kind="cruise"] .bptfs-row-icon,.bptfs-result[data-kind="cruise"] .bptfs-row-icon{background:#e8f8fb;color:#16849b}
.bptfs-suggestion[data-kind="tour"] .bptfs-row-icon,.bptfs-result[data-kind="tour"] .bptfs-row-icon{background:#fff1e8;color:#c56022}
.bptfs-suggestion[data-kind="chauffeur"] .bptfs-row-icon,.bptfs-result[data-kind="chauffeur"] .bptfs-row-icon{background:#edf3f7;color:#34495e}
.bptfs-suggestion[data-kind="group"] .bptfs-row-icon,.bptfs-result[data-kind="group"] .bptfs-row-icon{background:#f4edff;color:#8150b7}
.bptfs-suggestion[data-kind="blog"] .bptfs-row-icon,.bptfs-result[data-kind="blog"] .bptfs-row-icon{background:#fff2f2;color:#c64a4a}
.bptfs-suggestion[data-kind="contact"] .bptfs-row-icon,.bptfs-result[data-kind="contact"] .bptfs-row-icon{background:#ecfaf4;color:#078f56}
.bptfs-suggestion[data-kind="legal"] .bptfs-row-icon,.bptfs-result[data-kind="legal"] .bptfs-row-icon{background:#f2f4f7;color:#596273}

html.bptfs-lock,body.bptfs-lock{overflow:hidden!important;overscroll-behavior:none}

@media (min-width:768px){
  .bptfs-body{padding-left:24px;padding-right:24px;padding-bottom:40px}
  .bptfs-launch-slot,.bptfs-search-shell{height:50px;min-height:50px}
}
@media (max-width:480px){
  .bptfs-root{width:92%}
  .bptfs-launch-slot,.bptfs-search-shell{height:46px;min-height:46px}
  .bptfs-search-shell{padding:0 14px;gap:9px}
  .bptfs-launch-icon{width:20px;height:20px;flex-basis:20px}
  .bptfs-body{padding-top:calc(env(safe-area-inset-top,0px) + 64px);padding-left:12px;padding-right:12px}
}
