*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#111;background:#f7f7fb}a{color:#0b69ff;text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:18px}header.topbar{background:#0b69ff;color:#fff}header .privacy{opacity:.9;margin:.25rem 0 0}.grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:18px}.card{background:#fff;border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.06);padding:16px}.card h2,.card h3{margin:.2rem 0 .8rem}.span-2{grid-column:span 2}.timeline{position:relative}.tl-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid #eee}.tl-date{min-width:105px;font-weight:600}.pill{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border-radius:999px;background:#eef3ff;color:#163a8a;font-weight:600;font-size:.85rem}.seg{margin:.3rem 0}.seg small{color:#555}.air{color:#0b69ff}.ground{color:#1f8f5f}.hotels{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.hotel{border:1px solid #eee;border-radius:10px;padding:10px}.badge{display:inline-block;background:#111;color:#fff;border-radius:6px;padding:2px 6px;font-size:.75rem;margin-left:8px}.footer{color:#555;margin:12px auto 28px;text-align:center}@media (max-width:900px){.grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.hotels{grid-template-columns:1fr}}
/* Current hotel highlight */
#current-hotel .hotel.current{border-color:#0b69ff;background:#f0f6ff}
#booked-hotels .hotel{display:flex;justify-content:space-between;align-items:center;margin:8px 0}
.copybtn{background:#0b69ff;color:#fff;border:none;border-radius:8px;padding:6px 10px;cursor:pointer}
.copybtn:active{opacity:.9}
.maps{margin-top:6px}
.mapbtn{display:inline-block;background:#eef3ff;color:#163a8a;border:1px solid #cfd9ff;border-radius:8px;padding:4px 8px;margin-right:6px;font-size:.85rem}
.mapbtn:hover{background:#e5eeff}