/* Tripster shared UI · 2026 */
:root{--ts-navy:#08233a;--ts-navy-2:#0d3655;--ts-gold:#c79a43;--ts-cream:#f7f3eb;--ts-bg:#f8f7f4;--ts-ink:#17252e;--ts-muted:#66757e;--ts-line:#e2e5e6;--ts-green:#2f6b4f;--ts-radius:18px;--ts-shadow:0 14px 40px rgba(8,35,58,.07)}
html{scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ts-ink)}
a,button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(199,154,67,.35);outline-offset:3px}
.tripster-header{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #e8ecee!important;box-shadow:0 4px 20px rgba(8,35,58,.035)}
.tripster-header .nav,.tripster-header .bar{width:min(1180px,calc(100% - 32px));min-height:76px;height:auto!important;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:8px 0}
.tripster-brand{display:inline-flex;align-items:center;flex:0 0 auto;text-decoration:none!important}.tripster-brand img,.tripster-logo{display:block;width:210px!important;max-width:44vw;height:auto!important;max-height:60px!important;object-fit:contain;object-position:left center}
.tripster-header nav,.tripster-header .links,.tripster-header .navlinks{display:flex;align-items:center;gap:17px;flex-wrap:wrap}.tripster-header nav a,.tripster-header .links a,.tripster-header .navlinks a{font-size:.88rem;font-weight:780;color:var(--ts-navy);text-decoration:none}.tripster-header nav a:hover,.tripster-header .links a:hover,.tripster-header .navlinks a:hover{color:#b9852d}
/* Header CTA contrast: keep the blue login/account button readable. */
.tripster-header nav a.ai-navcta,.tripster-header .links a.ai-navcta,.tripster-header .navlinks a.ai-navcta{color:#fff!important;background:var(--ts-navy)!important}
.tripster-header nav a.ai-navcta:hover,.tripster-header .links a.ai-navcta:hover,.tripster-header .navlinks a.ai-navcta:hover,.tripster-header nav a.ai-navcta:focus-visible,.tripster-header .links a.ai-navcta:focus-visible,.tripster-header .navlinks a.ai-navcta:focus-visible{color:#fff!important;background:#0d3655!important}

.btn,.navcta,.wizard-btn,.build,.tc-submit,.ri-all,.route-discovery-search,.route-discovery-toggle{transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.btn:hover,.navcta:hover,.wizard-btn:hover,.build:hover,.tc-submit:hover,.ri-all:hover,.route-discovery-search:hover,.route-discovery-toggle:hover{transform:translateY(-1px)}
.site-footer{margin-top:64px;background:#f4f1ea;border-top:1px solid #e6e0d4;color:var(--ts-navy)}.site-footer-inner{width:min(1180px,calc(100% - 32px));margin:auto;padding:34px 0 28px;display:grid;grid-template-columns:1.25fr 1fr;gap:28px;align-items:start}.site-footer-brand img{width:178px;height:auto;display:block;margin-bottom:10px}.site-footer-brand p{margin:0;color:var(--ts-muted);font-size:.86rem}.site-footer-links{display:flex;justify-content:flex-end;gap:10px 18px;flex-wrap:wrap}.site-footer-links a{color:var(--ts-navy);font-weight:760;font-size:.84rem}.site-footer-copy{grid-column:1/-1;border-top:1px solid #ddd6c9;padding-top:16px;color:#7d817f;font-size:.76rem;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ts-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.71rem;font-weight:850;background:#eef2f4;color:var(--ts-navy)}.ts-status.gold{background:#fff4dc;color:#765512}.ts-status.green{background:#eaf5ee;color:#27613a}.ts-status.muted{background:#f0f0ee;color:#687077}
.ts-dashboard-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 22px}.ts-stat-filter{border:1px solid var(--ts-line);background:#fff;border-radius:15px;padding:13px 14px;text-align:left;cursor:pointer;color:var(--ts-navy);box-shadow:0 5px 18px rgba(8,35,58,.03)}.ts-stat-filter b{display:block;font-size:1.45rem}.ts-stat-filter span{font-size:.72rem;color:var(--ts-muted);font-weight:780}.ts-stat-filter.is-active{border-color:var(--ts-gold);box-shadow:0 0 0 2px rgba(199,154,67,.12)}
.ts-trip-date{font-size:.77rem;color:var(--ts-muted);margin-top:8px}.ts-trip-statuses{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.ts-dashboard-note{background:#fff;border:1px solid var(--ts-line);border-radius:16px;padding:13px 15px;color:var(--ts-muted);font-size:.84rem;margin:0 0 20px}
.today-banner{background:linear-gradient(135deg,#eff6fb,#f8fbfd)!important;border:1px solid #cee0eb!important;border-radius:18px!important;padding:17px 18px!important}.today-banner-copy{display:flex;flex-direction:column;gap:3px}.today-eyebrow{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#58788b;font-weight:850}.today-title{font-family:Georgia,serif;color:var(--ts-navy);font-size:1.2rem;line-height:1.2}.today-description{font-size:.84rem;color:#617582;line-height:1.45}.today-banner button{padding:10px 14px!important}.day.today-active{box-shadow:0 0 0 3px rgba(199,154,67,.22)!important}
.ts-legal{width:min(860px,calc(100% - 32px));margin:52px auto 80px}.ts-legal h1{font-family:Georgia,serif;color:var(--ts-navy);font-size:clamp(2.5rem,6vw,4.6rem);margin:0 0 12px}.ts-legal .lead{font-size:1.05rem;color:var(--ts-muted);line-height:1.65;margin-bottom:32px}.ts-legal section{background:#fff;border:1px solid var(--ts-line);border-radius:18px;padding:24px;margin:14px 0;box-shadow:0 7px 26px rgba(8,35,58,.035)}.ts-legal h2{font-family:Georgia,serif;color:var(--ts-navy);font-size:1.5rem;margin:0 0 10px}.ts-legal p,.ts-legal li{color:#51636d;line-height:1.65}.ts-legal ul{padding-left:20px}
@media(max-width:820px){.tripster-header .nav,.tripster-header .bar{align-items:flex-start;flex-direction:column;padding:12px 0}.tripster-header nav,.tripster-header .links,.tripster-header .navlinks{width:100%;gap:10px 14px}.tripster-brand img,.tripster-logo{width:180px!important;max-width:65vw}.site-footer-inner{grid-template-columns:1fr}.site-footer-links{justify-content:flex-start}.ts-dashboard-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.site-footer{margin-top:42px}.site-footer-inner{padding:28px 0 22px}.ts-dashboard-stats{grid-template-columns:1fr 1fr}.today-banner{align-items:flex-start!important;flex-direction:column!important}.today-banner button{width:100%}}

/* Shared language selector */
.tripster-lang-box{display:flex;align-items:center;flex:0 0 auto;margin-left:4px}.tripster-lang-box select{appearance:auto;border:1px solid #d7dde1;background:#fff;color:#08233a;border-radius:999px;padding:8px 10px;font:800 .76rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer;min-width:58px}.tripster-lang-box select:focus{outline:2px solid rgba(199,154,67,.35);outline-offset:2px}@media(max-width:720px){.tripster-lang-box{margin-left:0}.tripster-lang-box select{padding:7px 8px;min-width:54px}}


/* Tripster header/language placement fix - 2026-09-23 */
.tripster-header > .nav,
.tripster-header > .bar{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:8px 0!important;
}
.tripster-header > .nav > .tripster-brand,
.tripster-header > .bar > .tripster-brand{
  grid-column:1!important;
  grid-row:1!important;
  justify-self:start!important;
}
.tripster-header > .nav > .navlinks,
.tripster-header > .nav > .links,
.tripster-header > .bar > .navlinks,
.tripster-header > .bar > .links{
  grid-column:2!important;
  grid-row:1!important;
  justify-self:end!important;
  justify-content:flex-end!important;
  width:auto!important;
  min-width:0!important;
}
.tripster-header > .nav > .tripster-lang-box,
.tripster-header > .bar > .tripster-lang-box{
  grid-column:3!important;
  grid-row:1!important;
  justify-self:end!important;
  align-self:center!important;
  margin:0!important;
  width:auto!important;
  position:static!important;
  transform:none!important;
}
.tripster-lang-box select{white-space:nowrap!important}

@media(max-width:820px){
  .tripster-header > .nav,
  .tripster-header > .bar{
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    gap:8px 12px!important;
    padding:10px 0!important;
  }
  .tripster-header > .nav > .tripster-brand,
  .tripster-header > .bar > .tripster-brand{
    grid-column:1!important;
    grid-row:1!important;
  }
  .tripster-header > .nav > .tripster-lang-box,
  .tripster-header > .bar > .tripster-lang-box{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
  }
  .tripster-header > .nav > .navlinks,
  .tripster-header > .nav > .links,
  .tripster-header > .bar > .navlinks,
  .tripster-header > .bar > .links{
    grid-column:1 / -1!important;
    grid-row:2!important;
    justify-self:stretch!important;
    justify-content:flex-start!important;
    width:100%!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    scrollbar-width:none;
    padding-bottom:2px;
  }
  .tripster-header > .nav > .navlinks::-webkit-scrollbar,
  .tripster-header > .nav > .links::-webkit-scrollbar,
  .tripster-header > .bar > .navlinks::-webkit-scrollbar,
  .tripster-header > .bar > .links::-webkit-scrollbar{display:none}
}

/* Language selector placement - robust fix 2026-09-23 */
.tripster-header > .nav,
.tripster-header > .bar{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:18px!important;
}
.tripster-header > .nav > .tripster-brand,
.tripster-header > .bar > .tripster-brand{grid-column:1!important;grid-row:1!important;justify-self:start!important}
.tripster-header > .nav > .navlinks,
.tripster-header > .nav > .links,
.tripster-header > .bar > .navlinks,
.tripster-header > .bar > .links{grid-column:2!important;grid-row:1!important;justify-self:end!important;justify-content:flex-end!important;width:auto!important;min-width:0!important}
.tripster-header > .nav > .tripster-lang-box,
.tripster-header > .bar > .tripster-lang-box{grid-column:3!important;grid-row:1!important;justify-self:end!important;align-self:center!important;margin:0!important;position:static!important;inset:auto!important;float:none!important;transform:none!important;width:auto!important}
.tripster-lang-box select{display:block!important;min-width:58px!important;white-space:nowrap!important}
@media(max-width:820px){
  .tripster-header > .nav,.tripster-header > .bar{grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:center!important;gap:8px 12px!important;flex-direction:row!important}
  .tripster-header > .nav > .tripster-brand,.tripster-header > .bar > .tripster-brand{grid-column:1!important;grid-row:1!important}
  .tripster-header > .nav > .tripster-lang-box,.tripster-header > .bar > .tripster-lang-box{grid-column:2!important;grid-row:1!important;justify-self:end!important}
  .tripster-header > .nav > .navlinks,.tripster-header > .nav > .links,.tripster-header > .bar > .navlinks,.tripster-header > .bar > .links{grid-column:1/-1!important;grid-row:2!important;justify-self:stretch!important;justify-content:flex-start!important;width:100%!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important;padding-bottom:2px!important}
}


/* Final shared language placement - 2026-09-23 right3 */
.tripster-header{position:sticky!important;top:0!important}
.tripster-header>.tripster-lang-box{position:absolute!important;top:19px!important;right:max(16px,calc((100vw - 1180px)/2 + 16px))!important;left:auto!important;bottom:auto!important;margin:0!important;padding:0!important;width:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;transform:none!important;float:none!important;z-index:1002!important}
.tripster-header>.tripster-lang-box select{display:block!important;width:60px!important;min-width:60px!important;height:38px!important;margin:0!important;padding:0 9px!important}
.tripster-header>.nav,.tripster-header>.bar{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:auto!important;align-items:center!important;gap:18px!important;padding-right:82px!important}
.tripster-header>.nav>.tripster-brand,.tripster-header>.bar>.tripster-brand{grid-column:1!important;grid-row:1!important;justify-self:start!important}
.tripster-header>.nav>.navlinks,.tripster-header>.nav>.links,.tripster-header>.bar>.navlinks,.tripster-header>.bar>.links{grid-column:2!important;grid-row:1!important;justify-self:end!important;justify-content:flex-end!important;width:auto!important;min-width:0!important}
@media(max-width:820px){.tripster-header>.tripster-lang-box{top:12px!important;right:12px!important}.tripster-header>.nav,.tripster-header>.bar{grid-template-columns:1fr!important;grid-template-rows:auto auto!important;gap:8px!important;padding-right:74px!important;flex-direction:row!important}.tripster-header>.nav>.tripster-brand,.tripster-header>.bar>.tripster-brand{grid-column:1!important;grid-row:1!important}.tripster-header>.nav>.navlinks,.tripster-header>.nav>.links,.tripster-header>.bar>.navlinks,.tripster-header>.bar>.links{grid-column:1!important;grid-row:2!important;justify-self:stretch!important;justify-content:flex-start!important;width:100%!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important}}
