.travel-switch-trigger {
  min-height:46px; display:flex; align-items:center; gap:10px; padding:7px 12px 7px 8px;
  color:#17201e; background:rgba(255,255,255,.94); border:1px solid rgba(139,92,255,.15);
  border-radius:14px; cursor:pointer; box-shadow:0 8px 24px rgba(88,68,150,.07);
}
.travel-switch-trigger:hover { transform:translateY(-1px); box-shadow:0 12px 28px rgba(88,68,150,.11); }
.travel-switch-trigger > span:nth-child(2) { display:grid; gap:1px; text-align:left; }
.travel-switch-trigger small { color:#85769b; font-size:9px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.travel-switch-trigger strong { color:#634979; font-size:13px; }
.travel-switch-icon { width:30px; height:30px; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,#ff55b5,#8b5cff); border-radius:10px; }
.sidebar .travel-switch-trigger { width:100%; margin-top:20px; }
.sidebar .side-nav { margin-top:22px; }
.mobile-trip-actions { display:flex; align-items:center; gap:7px; }
.travel-switch-mobile { height:38px; display:flex; align-items:center; gap:6px; padding:0 10px; color:#76529a; border:1px solid rgba(139,92,255,.15); border-radius:13px; background:#f4edff; cursor:pointer; }
.travel-switch-mobile b { font-size:11px; }
.travel-switcher { position:fixed; inset:0; z-index:150; display:none; place-items:center; padding:18px; }
.travel-switcher.open { display:grid; }
.travel-switch-backdrop { position:absolute; inset:0; border:0; background:rgba(30,22,46,.64); backdrop-filter:blur(8px); cursor:pointer; }
.travel-switch-sheet {
  position:relative; z-index:1; width:min(760px,100%); max-height:min(760px,92vh); overflow:auto;
  padding:26px; color:#17201e; background:#fffdf8; border:1px solid rgba(255,255,255,.5);
  border-radius:28px; box-shadow:0 34px 120px rgba(27,18,48,.34); animation:travel-switch-in .24s ease both;
}
@keyframes travel-switch-in { from { opacity:0; transform:translateY(14px) scale(.985); } }
.travel-switch-head { display:flex; align-items:flex-start; justify-content:space-between; gap:22px; margin-bottom:22px; }
.travel-switch-head span { color:#ff55b5; font-size:10px; font-weight:900; letter-spacing:.16em; }
.travel-switch-head h2 { margin:5px 0 6px; font:800 34px/1.05 Georgia,"Songti SC",serif; }
.travel-switch-head p { margin:0; color:#776e80; font-size:12px; line-height:1.6; }
.travel-switch-close { flex:0 0 38px; width:38px; height:38px; border:1px solid rgba(72,50,94,.12); border-radius:50%; background:#fff; cursor:pointer; font-size:23px; }
.travel-switch-list { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.travel-scene {
  min-height:210px; display:flex; flex-direction:column; padding:20px; color:#17201e; text-decoration:none;
  border:1px solid rgba(72,50,94,.12); border-radius:21px; background:#fff; overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease;
}
a.travel-scene:hover { transform:translateY(-3px); box-shadow:0 16px 36px rgba(65,42,91,.13); }
.travel-scene.bali { color:#fff8e9; background:linear-gradient(145deg,#123a34,#167f94); }
.travel-scene.maldives { background:linear-gradient(145deg,#fff1f8,#edf2ff 62%,#e6fbf7); }
.travel-scene.future { grid-column:1/-1; min-height:128px; opacity:.63; background:transparent; border-style:dashed; }
.travel-scene-top { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:10px; font-weight:900; letter-spacing:.07em; }
.travel-scene-top em { padding:5px 8px; border-radius:999px; background:rgba(255,255,255,.58); font-style:normal; letter-spacing:0; }
.travel-scene.bali .travel-scene-top em { background:rgba(255,255,255,.14); }
.travel-scene h3 { margin:32px 0 7px; font:800 30px/1 Georgia,"Songti SC",serif; }
.travel-scene p { margin:0; color:inherit; opacity:.7; font-size:12px; line-height:1.55; }
.travel-scene-action { margin-top:auto; padding-top:24px; font-size:12px; font-weight:900; }
body.travel-switch-open { overflow:hidden; }
@media (min-width:721px) { .mobile-trip-actions { display:none; } }
@media (max-width:720px) {
  .travel-switch-sheet { padding:20px; border-radius:24px; }
  .travel-switch-list { grid-template-columns:1fr; }
  .travel-scene { min-height:170px; }
  .travel-scene.future { grid-column:auto; min-height:110px; }
  .travel-scene h3 { margin-top:24px; }
}
@media (max-width:380px) { .travel-switch-mobile b { display:none; } }
@media (prefers-reduced-motion:reduce) { .travel-switch-sheet,.travel-switch-trigger,.travel-scene { animation:none; transition:none; } }
